FIX: issue #533 (Compiler crash on uninitialised local variable)

Note: this fix required a deep change that might have side-effects on code patterns not covered by the tests suite.