|
On 08/09/2006, at 7:10 AM, Gavin Kistner wrote:
local a = 10 function f( ) print( a ) end local a = 20 function g( ) print( a ) end -- g a = 30 -- no local here print( a ) --> 30 f( ) --> 10 g( ) --> 30
The surprising part here is that the last one prints 30 and not 20. However it is consistent with my forward declaration problem.
The last "a = 30" must have modified the *most recently declared* local variable, hence f prints 10 but g prints 30.
- Nick