changeset 8644:586b5e117c44

Fixed NodeParser error synchronization was done too late.
author Christian Humer <christian.humer@gmail.com>
date Fri, 05 Apr 2013 11:03:21 +0200
parents 3d2c2b68fe93
children 15ae4fd89a75 e0ff5cf358a4
files graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java
diffstat 1 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- 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<NodeFieldData> iterator = nodeData.getFields().listIterator(); iterator.hasNext();) {
@@ -162,10 +166,6 @@
             }
         }
 
-        if (nodeData.hasErrors()) {
-            return nodeData; // error sync point
-        }
-
         List<Element> elements = new ArrayList<>(context.getEnvironment().getElementUtils().getAllMembers(type));
         nodeData.setExtensionElements(getExtensionParser().parseAll(nodeData, elements));
         if (nodeData.getExtensionElements() != null) {