for-let trap 2

for(let a = 1, b = a; 0;); // NG (a is not defined)
for(var a = 1, b = a; 0;); // OK
let(a = 1, b = a){} // NG (a is not defined)
let(a = 1, b = a) 0 // NG (a is not defined)
{ let a = 1, b = a } // OK (!)
{ var a = 1, b = a } // OK
[http://www.lispworks.com/documentation/HyperSpec/Body/s_let_l.htm#let:title=let*] for-var, var, [https://developer.mozilla.org/en/New_in_javascript_1.7#Block_scope_with_let:title=let] definition
let for-let, let statement, let expression

ややこしや。

Workarounds
{ let a = 1, b = a; for(; 0;); }
let(a = 1){ let(b = a){} }
let(a = 1) let(b = a) 0

うーむ。