< prev index next >

src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java

Print this page

        

*** 1960,1969 **** --- 1960,1981 ---- } switch (type) { case SEMICOLON: // for (init; test; modify) + if (varDeclList != null) { + assert init == null; + init = varDeclList.init; + // late check for missing assignment, now we know it's a for (init; test; modify) loop + if (varDeclList.missingAssignment != null) { + if (varDeclList.missingAssignment instanceof IdentNode) { + throw error(AbstractParser.message("missing.const.assignment", ((IdentNode)varDeclList.missingAssignment).getName())); + } else { + throw error(AbstractParser.message("missing.destructuring.assignment"), varDeclList.missingAssignment.getToken()); + } + } + } // for each (init; test; modify) is invalid if ((flags & ForNode.IS_FOR_EACH) != 0) { throw error(AbstractParser.message("for.each.without.in"), token); }
< prev index next >