Expression value = context.getExpressions().pop();
Expression arrayPosition = context.getExpressions().pop();
Expression arrayReference = context.getExpressions().pop();
ArrayAccess arrayPositionReference = new ArrayAccess(context.getCurrentInstruction(), arrayReference, arrayPosition);
Assignment assignment = new Assignment(context.getCurrentInstruction(), arrayPositionReference, value);
StatementIntermediate si = new StatementIntermediate(context.getCurrentInstruction(), assignment);
//add it to the intermediate lines.
context.pushIntermediateToInstruction(si);