# HG changeset patch # User Christian Humer # Date 1371543088 -7200 # Node ID ad48251630cdd9e7bbd8a9dddd420483d5697867 # Parent 8b2573c8d47fc07c971e8b24d6d861831d1c6127 Fixed GRAAL-321. diff -r 8b2573c8d47f -r ad48251630cd 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 Tue Jun 18 10:10:54 2013 +0200 +++ b/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Tue Jun 18 10:11:28 2013 +0200 @@ -42,7 +42,7 @@ public class NodeParser extends TemplateParser { public static final List> ANNOTATIONS = Arrays.asList(Generic.class, TypeSystemReference.class, ShortCircuit.class, Specialization.class, SpecializationListener.class, - ExecuteChildren.class, NodeClass.class, NodeChild.class, NodeChildren.class, NodeId.class); + NodeClass.class, NodeChild.class, NodeChildren.class, NodeId.class); private Map parsedNodes; @@ -754,8 +754,12 @@ } List children = Utils.collectAnnotations(context, nodeChildrenMirror, "value", type, NodeChild.class); + int index = 0; for (AnnotationMirror childMirror : children) { String name = Utils.getAnnotationValue(String.class, childMirror, "value"); + if (name.equals("")) { + name = "child" + index; + } Cardinality cardinality = Cardinality.ONE; @@ -785,7 +789,9 @@ if (fieldNodeData == null) { nodeChild.addError("Node type '%s' is invalid or not a valid Node.", Utils.getQualifiedName(childType)); } + } + index++; } List filteredChildren = new ArrayList<>();