On 07 Feb 2008, at 13:16, Matt Emson wrote:
Jonas Maebe wrote:
At this time, the compiler cannot supporting systems which lack
certain architectural features (e.g., several internal
transformations introduce address/pointer expressions in code
which does not contain any pointers whatsoever at the Pascal
level). While it is possible to override these, it would be much
more difficult then just disabling a couple of things in the
parser for certain targets.
Okay, this is becoming off topic - sorry.
Not really, although fpc-devel might be more appropriate.
To support Flash, I would assume a cross compiler would be used.
Does that still have the same issues?
Yes, I was only talking about the generated code, not about the
compiler sources themselves. A simple example is in case you use
writeln(textpara,inta,intb);
Internally, this is replaced by
tempptr:[EMAIL PROTECTED];
fpc_write_text_sint(tempptr^,a);
fpc_write_text_sint(tempptr^,b);
fpc_writeln_end(tempptr^);
The reason is that textpara could be a function call, and in that
case it must be called only once rather than thrice (and yes,
internally the compiler can take the address of function call
results, and no, as a programmer you are not allowed to do that :)
Jonas
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal