Hi,

In message "Re: Local variables & blocks"
    on 03/01/30, Paul Brannan <pbrannan / atdesk.com> writes:

|>   * block parameters are local to the block
|>   * shadowing cause warnings
|>   * no other way to make block local variables
|
|Given this, then:
|
|  def foo(&block); block.call; end
|  p = proc { p x }
|  foo { x = 1 }
|  p.call()
|
|Will print:
|
|  1

No.  The role of idenfiers are fixed at compile time by appearance
order.  Since "x" in "proc{p x}" appears before assignment, it's not a
local variable access in any way.  So behavior of this chunk of code
will not be changed.  But yes, there're some incompatible cases, and I
will prepare warnings for these cases in the future stable-before-Rite
version.


							matz.