| Index: frog/world.dart
|
| diff --git a/frog/world.dart b/frog/world.dart
|
| index 20e4758521936ad0a1b9d4757433e31580c796d2..83712173499a76ab2f5d405a774eeea2e9043ead 100644
|
| --- a/frog/world.dart
|
| +++ b/frog/world.dart
|
| @@ -75,7 +75,7 @@ class World {
|
| List<Library> _todo;
|
|
|
| /** Internal map to track name conflicts in the generated javascript. */
|
| - Map<String, Named> _topNames;
|
| + Map<String, Element> _topNames;
|
|
|
| Map<String, MemberSet> _members;
|
|
|
| @@ -159,31 +159,31 @@ class World {
|
| }
|
| }
|
|
|
| - _addTopName(Named named) {
|
| - var existing = _topNames[named.name];
|
| + _addTopName(Element named) {
|
| + var existing = _topNames[named.jsname];
|
| if (existing != null) {
|
| - info('mangling matching top level name "${named.name}" in '
|
| - + 'both "${named.library.name}" and "${existing.library.name}"');
|
| + info('mangling matching top level name "${named.jsname}" in '
|
| + + 'both "${named.library.jsname}" and "${existing.library.jsname}"');
|
|
|
| if (named.isNative) {
|
| // resolve conflicts in favor first of natives
|
| if (existing.isNative) {
|
| - world.internalError('conflicting native names "${named.name}" '
|
| + world.internalError('conflicting native names "${named.jsname}" '
|
| + '(already defined in ${existing.span.locationText})',
|
| named.span);
|
| } else {
|
| - _topNames[named.name] = named;
|
| + _topNames[named.jsname] = named;
|
| _addJavascriptTopName(existing);
|
| }
|
| } else if (named.library.isCore) {
|
| // then in favor of corelib
|
| if (existing.library.isCore) {
|
| world.internalError(
|
| - 'conflicting top-level names in core "${named.name}" '
|
| + 'conflicting top-level names in core "${named.jsname}" '
|
| + '(previously defined in ${existing.span.locationText})',
|
| named.span);
|
| } else {
|
| - _topNames[named.name] = named;
|
| + _topNames[named.jsname] = named;
|
| _addJavascriptTopName(existing);
|
| }
|
| } else {
|
| @@ -191,12 +191,12 @@ class World {
|
| _addJavascriptTopName(named);
|
| }
|
| } else {
|
| - _topNames[named.name] = named;
|
| + _topNames[named.jsname] = named;
|
| }
|
| }
|
|
|
| - _addJavascriptTopName(Named named) {
|
| - named.jsname = '${named.library.jsname}_${named.name}';
|
| + _addJavascriptTopName(Element named) {
|
| + named._jsname = '${named.library.jsname}_${named.jsname}';
|
| final existing = _topNames[named.jsname];
|
| if (existing != null && existing != named) {
|
| world.internalError('name mangling failed for "${named.jsname}" '
|
|
|