# HG changeset patch # User Christian Humer # Date 1365152601 -7200 # Node ID 586b5e117c44cc16bb1caeef4ce1afca0f03ab3c # Parent 3d2c2b68fe932f2dda59194995be908470f975fb Fixed NodeParser error synchronization was done too late. diff -r 3d2c2b68fe93 -r 586b5e117c44 graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java --- a/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Fri Apr 05 02:33:42 2013 +0200 +++ b/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Fri Apr 05 11:03:21 2013 +0200 @@ -152,6 +152,10 @@ NodeData nodeData = parseNodeData(type, nodeType); + if (nodeData.hasErrors()) { + return nodeData; // error sync point + } + if (Utils.typeEquals(nodeType.asType(), type.asType())) { // filter fields if they were not split. (field are accessible anyway) for (ListIterator iterator = nodeData.getFields().listIterator(); iterator.hasNext();) { @@ -162,10 +166,6 @@ } } - if (nodeData.hasErrors()) { - return nodeData; // error sync point - } - List elements = new ArrayList<>(context.getEnvironment().getElementUtils().getAllMembers(type)); nodeData.setExtensionElements(getExtensionParser().parseAll(nodeData, elements)); if (nodeData.getExtensionElements() != null) {