| Index: lib/compiler/implementation/dart_backend/renamer.dart
|
| diff --git a/lib/compiler/implementation/dart_backend/renamer.dart b/lib/compiler/implementation/dart_backend/renamer.dart
|
| index fc1a477a5ef324b68d0548d148d158c390bb8ead..52bbc58588b5d34462da7391c04f92a54e22da92 100644
|
| --- a/lib/compiler/implementation/dart_backend/renamer.dart
|
| +++ b/lib/compiler/implementation/dart_backend/renamer.dart
|
| @@ -101,7 +101,7 @@ void renamePlaceholders(
|
| return result.toString();
|
| }
|
|
|
| - String renameConstructor(Element element, DartType type,
|
| + String renameConstructor(Element element, ConstructorPlaceholder placeholder,
|
| Function renameString, Function renameElement) {
|
| assert(element.isConstructor());
|
| StringBuffer result = new StringBuffer();
|
| @@ -109,8 +109,10 @@ void renamePlaceholders(
|
| if (element.name != element.getEnclosingClass().name) {
|
| // Named constructor or factory. Is there a more reliable way to check
|
| // this case?
|
| - result.add(renameType(type, renameElement));
|
| - result.add('.');
|
| + if (!placeholder.isRedirectingCall) {
|
| + result.add(renameType(placeholder.type, renameElement));
|
| + result.add('.');
|
| + }
|
| String prefix = '${element.getEnclosingClass().name.slowToString()}\$';
|
| if (!name.startsWith(prefix)) {
|
| // Factory for another interface (that is going away soon).
|
| @@ -120,7 +122,8 @@ void renamePlaceholders(
|
| name = name.substring(prefix.length);
|
| result.add(name);
|
| } else {
|
| - result.add(renameType(type, renameElement));
|
| + assert(!placeholder.isRedirectingCall);
|
| + result.add(renameType(placeholder.type, renameElement));
|
| }
|
| return result.toString();
|
| }
|
| @@ -281,7 +284,7 @@ void renamePlaceholders(
|
| (Element constructor, List<ConstructorPlaceholder> placeholders) {
|
| for (ConstructorPlaceholder ph in placeholders) {
|
| renames[ph.node] =
|
| - renameConstructor(constructor, ph.type, rename, renameElement);
|
| + renameConstructor(constructor, ph, rename, renameElement);
|
| }
|
| });
|
| sortedForEach(placeholderCollector.privateNodes, (library, nodes) {
|
|
|