30.12.2011 14:42, Jonas Maebe пишет:

On 30 Dec 2011, at 10:26, Florian Klämpfl wrote:

Beta. I'am not aware of any missing stuff, but it's mainly untested.

I tried to activate by default it during the development of the JVM port (since 
the JVM will abort if it detects an uninitialized read), but it caused compiler 
crashes. I'll see if I can create isolated test cases.

The present DFA doesn't work for code which uses exceptions, including implicit exception handling (read: a good 50% of all codebase). In the meantime I tried adapting DFA, or more precisely, definite assignment analyzer, from Mono compiler (Mantis #15523). It uses a different approach, which works fine with exceptions, but is not suited well (if at all) for determining live range of variables. See notes on Mantis #15523 for details. With #15523 applied, the compiler can be cycled, but it emits hundreds of warnings which have to be fixed because cycling is done with -Sew these days. In particular, we have to solve the FillChar() issue before any DFA is enabled by default.

Sergei
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to