Mercurial > hg > graal-compiler
comparison graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/parser/NodeParser.java @ 18811:d2ec5f50dcd0
Truffle-DSL: fixed name clashes were still possible on a OS with case insensitive file system.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Sat, 10 Jan 2015 13:44:47 +0100 |
parents | b9cf6f3150ea |
children | ae81dd154fb6 |
comparison
equal
deleted
inserted
replaced
18810:aaff308f290c | 18811:d2ec5f50dcd0 |
---|---|
937 | 937 |
938 private static boolean renameDuplicateIds(List<String> signatures) { | 938 private static boolean renameDuplicateIds(List<String> signatures) { |
939 boolean changed = false; | 939 boolean changed = false; |
940 Map<String, Integer> counts = new HashMap<>(); | 940 Map<String, Integer> counts = new HashMap<>(); |
941 for (String s1 : signatures) { | 941 for (String s1 : signatures) { |
942 Integer count = counts.get(s1); | 942 Integer count = counts.get(s1.toLowerCase()); |
943 if (count == null) { | 943 if (count == null) { |
944 count = 0; | 944 count = 0; |
945 } | 945 } |
946 count++; | 946 count++; |
947 counts.put(s1, count); | 947 counts.put(s1.toLowerCase(), count); |
948 } | 948 } |
949 | 949 |
950 for (String s : counts.keySet()) { | 950 for (String s : counts.keySet()) { |
951 int count = counts.get(s); | 951 int count = counts.get(s); |
952 if (count > 1) { | 952 if (count > 1) { |
953 changed = true; | 953 changed = true; |
954 int number = 0; | 954 int number = 0; |
955 for (ListIterator<String> iterator = signatures.listIterator(); iterator.hasNext();) { | 955 for (ListIterator<String> iterator = signatures.listIterator(); iterator.hasNext();) { |
956 String s2 = iterator.next(); | 956 String s2 = iterator.next(); |
957 if (s.equals(s2)) { | 957 if (s.equalsIgnoreCase(s2)) { |
958 iterator.set(s2 + number); | 958 iterator.set(s2 + number); |
959 number++; | 959 number++; |
960 } | 960 } |
961 } | 961 } |
962 } | 962 } |