Closed Bug 396900 Opened 17 years ago Closed 17 years ago

can't do destructuring bind in a let

Categories

(Rhino Graveyard :: Compiler, defect)

1.7R1
x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: norrisboyd, Assigned: norrisboyd)

Details

Executing

   let ([x, y] = [3, 4]) {}

results in

java.lang.IllegalStateException: FAILED ASSERTION
    at org.mozilla.javascript.Kit.codeBug(Kit.java:480)
    at org.mozilla.javascript.NodeTransformer.visitLet(NodeTransformer.java:420)
    at org.mozilla.javascript.NodeTransformer.transformCompilationUnit_r(NodeTransformer.java:293)
    at org.mozilla.javascript.NodeTransformer.transformCompilationUnit(NodeTransformer.java:85)
    at org.mozilla.javascript.NodeTransformer.transform (NodeTransformer.java:63)
    at org.mozilla.javascript.Interpreter.compile(Interpreter.java:482)
    at org.mozilla.javascript.Context.compileImpl(Context.java:2355)
    at org.mozilla.javascript.Context.compileString (Context.java:1360)
    at org.mozilla.javascript.Context.compileString(Context.java:1349)
    at com.google.gse.rnr.util.shell.Main.loadScriptFromSource(Main.java:437)
    at com.google.gse.rnr.util.shell.Main.processSource (Main.java:363)
    at com.google.gse.rnr.util.shell.Main.processFiles(Main.java:179)
    at com.google.gse.rnr.util.shell.Main$IProxy.run(Main.java:100)
    at org.mozilla.javascript.Context.call(Context.java:588)
    at org.mozilla.javascript.ContextFactory.call(ContextFactory.java:506)
    at com.google.gse.rnr.util.shell.Main.exec(Main.java:162)
    at com.google.gse.rnr.util.shell.Main.main(Main.java:140)
    at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke (Method.java:597)
    at com.google.gse.rnr.util.console.main(console.java:59)
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke (Method.java:597)
    at com.google.gse.rnr.util.console.main(console.java:59)
Caused by: java.lang.IllegalStateException: FAILED ASSERTION
    at org.mozilla.javascript.Kit.codeBug(Kit.java:480)
    at org.mozilla.javascript.NodeTransformer.visitLet (NodeTransformer.java:420)
    at org.mozilla.javascript.NodeTransformer.transformCompilationUnit_r(NodeTransformer.java:293)
    at org.mozilla.javascript.NodeTransformer.transformCompilationUnit(NodeTransformer.java :85)
    at org.mozilla.javascript.NodeTransformer.transform(NodeTransformer.java:63)
    at org.mozilla.javascript.Interpreter.compile(Interpreter.java:482)
    at org.mozilla.javascript.Context.compileImpl(Context.java :2355)
    at org.mozilla.javascript.Context.compileString(Context.java:1360)
    at org.mozilla.javascript.Context.compileString(Context.java:1349)
    at com.google.gse.rnr.util.shell.Main.loadScriptFromSource( Main.java:437)
    at com.google.gse.rnr.util.shell.Main.processSource(Main.java:363)
    at com.google.gse.rnr.util.shell.Main.processFiles(Main.java:179)
    at com.google.gse.rnr.util.shell.Main$IProxy.run(Main.java :100)
    at org.mozilla.javascript.Context.call(Context.java:588)
    at org.mozilla.javascript.ContextFactory.call(ContextFactory.java:506)
    at com.google.gse.rnr.util.shell.Main.exec(Main.java:162)
    at com.google.gse.rnr.util.shell.Main.main(Main.java:140)
    ... 5 more
+bclary: This is a test case not covered by the current JavaScript tests

Fixed:

Checking in src/org/mozilla/javascript/Node.java;
/cvsroot/mozilla/js/rhino/src/org/mozilla/javascript/Node.java,v  <--  Node.javanew revision: 1.67; previous revision: 1.66
done
Checking in src/org/mozilla/javascript/NodeTransformer.java;
/cvsroot/mozilla/js/rhino/src/org/mozilla/javascript/NodeTransformer.java,v  <--  NodeTransformer.java
new revision: 1.76; previous revision: 1.75
done
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Flags: in-testsuite?
/cvsroot/mozilla/js/tests/js1_7/block/regress-396900.js,v  <--  regress-396900.js
initial revision: 1.1
Flags: in-testsuite? → in-testsuite+
You need to log in before you can comment on or make changes to this bug.