Index: pkg/front_end/lib/src/fasta/source/source_library_builder.dart |
diff --git a/pkg/front_end/lib/src/fasta/source/source_library_builder.dart b/pkg/front_end/lib/src/fasta/source/source_library_builder.dart |
index 7b8293d0325bea62392edc89ad08d7de32e084b4..b5e57e00918de3baecb3d76ee501fc3d9ca1945c 100644 |
--- a/pkg/front_end/lib/src/fasta/source/source_library_builder.dart |
+++ b/pkg/front_end/lib/src/fasta/source/source_library_builder.dart |
@@ -411,13 +411,14 @@ abstract class SourceLibraryBuilder<T extends TypeBuilder, R> |
} |
} |
+ /// Returns true if the export scope was modified. |
bool addToExportScope(String name, Builder member) { |
if (name.startsWith("_")) return false; |
if (member is PrefixBuilder) return false; |
Builder existing = exports[name]; |
+ if (existing == member) return false; |
if (existing != null) { |
- // TODO(ahe): handle duplicated names. |
- return false; |
+ exports[name] = buildAmbiguousBuilder(name, existing, member, -1); |
} else { |
exports[name] = member; |
} |