Mercurial > hg > truffle
changeset 7753:c17ee8823d72
Fixed bug in method parsing error messages.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Mon, 11 Feb 2013 10:40:52 +0100 |
parents | 388848bbe03d |
children | 3cec97eb3b5f |
files | graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ParameterSpec.java graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java |
diffstat | 2 files changed, 4 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ParameterSpec.java Fri Feb 08 16:23:11 2013 +0100 +++ b/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ParameterSpec.java Mon Feb 11 10:40:52 2013 +0100 @@ -66,7 +66,7 @@ } private static TypeMirror[] nodeTypeMirrors(NodeData nodeData) { - List<TypeMirror> typeMirrors = new ArrayList<>(); + Set<TypeMirror> typeMirrors = new LinkedHashSet<>(); for (ExecutableTypeData typeData : nodeData.getExecutableTypes()) { typeMirrors.add(typeData.getType().getPrimitiveType());
--- a/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java Fri Feb 08 16:23:11 2013 +0100 +++ b/graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java Mon Feb 11 10:40:52 2013 +0100 @@ -233,10 +233,9 @@ return new ActualParameter(specification, resolvedType); } - protected static List<TypeDef> createTypeDefinitions(ParameterSpec returnType, List<? extends ParameterSpec> parameters) { + protected List<TypeDef> createTypeDefinitions(ParameterSpec returnType, List<? extends ParameterSpec> parameters) { List<TypeDef> typeDefs = new ArrayList<>(); - TypeMirror[] types = returnType.getAllowedTypes(); List<ParameterSpec> allParams = new ArrayList<>(); allParams.add(returnType); allParams.addAll(parameters); @@ -244,10 +243,11 @@ int defIndex = 0; for (ParameterSpec spec : allParams) { TypeMirror[] allowedTypes = spec.getAllowedTypes(); + TypeMirror[] types = spec.getAllowedTypes(); if (types != null && allowedTypes.length > 1) { TypeDef foundDef = null; for (TypeDef def : typeDefs) { - if (Arrays.equals(spec.getAllowedTypes(), def.getTypes())) { + if (Arrays.equals(allowedTypes, def.getTypes())) { foundDef = def; break; }