Moved the preconditions of function arguments before the function

This allows to call compileInternal on arguments when compiling
preconditions of the function as the preconditions should be compiled
before compiling the expression.

I got an error when the argument was ``#arg`` as the ParameterExpressionCompiler had not yet populated the parameter_mapping_name attribute