expression

val A_Phrase.expression: A_Phrase

If this phrase is an assignment, answer the expression that produces the value to assign. If this phrase is an expression-as-statement, answer the expression to treat as a statement. If this phrase is a super-cast, answer the expression that produces the actual value to send. If this phrase is a macro, use the above rules on the output of the macro.

Return

The phrase's 'expression', which varies by phrase kind.