rubinius/rubinius — pull request #2280 by leocassarani (2013-04-15 20:36:01+00:00)
Title: Don't expand "bar" in meth(*foo, bar)

This fixes issue #2260 by wrapping final, non-splatted arguments in a singleton array, which the generated bytecode then concatenates onto the splatted ones, keeping the array "inside" intact. In other words, instead of the bytecode assembling the arguments for the call by doing something like:

[1, 2] + [3, 4] # [1, 2, 3, 4]

We now do something like:

[1, 2] + [[3, 4]] # [1, 2, [3, 4]]