The calling convention (stdcall, pascal, cdecl) imposes the order of passing the parameters (in the stack) relative to the order in which they are listed in the declaration, but nothing specifically imposes that the corresponding arguments are evaluated (for passing by value) in the same order. Otherwise, I think gas(32) is right, and it is not because the arguments provided are references that they should not still be passed by value as stipulated in the declaration.
Different behavior of gas and gcc/gas64 on a same unsafe code, but is it a bug?
LEN() and SIZEOF() should not be allowed when used with an array name without index
But this new feature seems to be not very easy, mainly because of a parser problem. Example of the parser syntax problem for STATIC PROPERTIES without index parameter: There is a syntax ambiguity between one of property result assignment syntaxes inside the get-property body and the set-property calling: Type typename Declare Static Property staticPropertyName () As Integer Declare Static Property staticPropertyName (Byval i As Integer) Static As Integer staticVariableName Dim As Integer dummy End...
But this new feature seems to be not very easy, mainly because of a parser problem. Example of the parser syntax problem for STATIC PROPERTIES without index parameter: There is a syntax ambiguity between one of property result assignment syntaxes inside the get-property body and the set-property calling: Type typename Declare Static Property staticPropertyName () As Integer Declare Static Property staticPropertyName (Byval i As Integer) Static As Integer staticVariableName Dim As Integer dummy End...
But this new feature seems to be not very easy, mainly because of a parser problem. Example of the parser syntax problem for STATIC PROPERTIES without index parameter: There is a syntax ambiguity between one of property result assignment syntaxes inside the get-property body and the set-property calling: Type typename Declare Static Property staticPropertyName () As Integer Declare Static Property staticPropertyName (Byval i As Integer) Static As Integer staticVariableName Dim As Integer dummy End...
The new definition of the 'STRING*N' datatype (since fbc 1.20.0) solves the problem.
The new definition of the 'STRING*N' datatype (since fbc 1.20.0) solves the problem.