DynamoDS/Dynamo — pull request #1798 by ke-yu (2014-06-24 04:22:59+00:00)
Title: Fix defect MAGN-3728: String.Contact not working with List.Map

If we don't provide enough inputs to String.Concat, it will be compiled to an instance of ```_SingleFunctionObject```. ```_SingleFunctionObject._params``` is an array and each element is a provided input. As ```DSVarArgFunction.BuildAst()``` tries to pack all inputs into a single array, now what gets passed to ```_SingleFunctionObject._params``` is not an one-dimention array but is an array of array, so the evaluation would fail.

The last parameter of the constructor of ```_SingleFunctionObject``` specifies if need to pack the input back to an array or not:
```
constructor _SingleFunctionObject(fptr : function,
argNumber: int,
paramPositions : int[],
params : var[]..[],
unpackParams: bool)
```

So the fix is to put inputs in a 1-D array if it doesn't get enough inputs and set ```unpackParams``` to false.

Regression test case TestConcatStringInListMap is added.