Closed
Description
The following program makes the CFE crash:
abstract class I {
String get member;
}
class A implements I {
static String member = "member";
dynamic noSuchMethod(Invocation i) => "foo";
}
The stack trace:
Unhandled exception:
root::file:///tmp/qwerty.dart::A::@getters::member is already bound to Reference to file:///tmp/qwerty.dart::A::@getters::member with node A.member (Field:6174), trying to bind to Reference to A.member with node A.member (Procedure:35005)
#0 CanonicalName.bindTo (package:kernel/canonical_name.dart:242:7)
#1 Class.computeCanonicalNames (package:kernel/ast.dart:1294:51)
#2 Library.computeCanonicalNames (package:kernel/ast.dart:517:14)
#3 Component.computeCanonicalNamesForLibrary (package:kernel/ast.dart:13679:13)
#4 BinaryPrinter.computeCanonicalNames (package:kernel/binary/ast_to_binary.dart:560:19)
#5 BinaryPrinter.writeComponentFile.<anonymous closure> (package:kernel/binary/ast_to_binary.dart:579:7)
#6 Timeline.timeSync (dart:developer/timeline.dart:163:22)
#7 BinaryPrinter.writeComponentFile (package:kernel/binary/ast_to_binary.dart:577:14)
#8 writeComponentToFile (package:front_end/src/fasta/kernel/utils.dart:77:13)