>>This ArrayConstructorExpression has 3 children:
{ LiteralExpression(1, DECIMAL), LiteralExpression(2.2),
ColumnReferenceExpression(v)) }
Yes. It will have 3 children.  That is fine.  But what about the evaluate method in ArrayConstructorExpression. First 2 children will call evaluate in Literal Expression, which would just set the 2 literals individually.
The actual incoming ptr would have the value represented by the column.  So for an array to be formed we need a combined representation of all these 3.  So should we create it manually?  Am i able to explain the problem.