Chromium Code Reviews| Index: dart/frog/type.dart |
| =================================================================== |
| --- dart/frog/type.dart (revision 4024) |
| +++ dart/frog/type.dart (working copy) |
| @@ -1146,7 +1146,7 @@ |
| var paramName = typeParameters[i].name; |
| typeMap[paramName] = typeArg; |
| - names.add(typeArg.name); |
| + names.add(typeArg.fullname); |
| jsnames.add(typeArg.jsname); |
| } |
| @@ -1156,13 +1156,13 @@ |
| var jsname = '${jsname}_${Strings.join(jsnames, '\$')}'; |
| var simpleName = '${name}<${Strings.join(names, ', ')}>'; |
|
kasperl
2012/02/08 14:00:32
Hmm. Why doesn't the simpleName start with fullnam
ngeoffray
2012/02/08 16:34:01
After trying what you suggest, I realized that the
|
| - var ret = _concreteTypes[jsname]; |
| + var ret = _concreteTypes[simpleName]; |
| if (ret == null) { |
| ret = new DefinedType(simpleName, library, definition, isClass); |
|
kasperl
2012/02/08 14:00:32
Is the name in a DefinedType used for error report
ngeoffray
2012/02/08 16:34:01
It does add noise, but since the 'name' is also us
|
| ret.baseGenericType = this; |
| ret.typeArgsInOrder = typeArgs; |
| ret._jsname = jsname; |
| - _concreteTypes[jsname] = ret; |
| + _concreteTypes[simpleName] = ret; |
| ret.resolve(); |
| } |
| return ret; |