177ab47ee4
Currently (with --checked):
```
Unhandled exception:
'package:dev_compiler/src/kernel/compiler.dart': Failed assertion: line 4042 pos 16: 'member is Procedure
? setter == member.isSetter
: (member as Field).isFinal != setter': is not true.
#0 _AssertionError._doThrowNew (dart:core-patch/dart:core/errors_patch.dart:37)
#1 _AssertionError._throwNew (dart:core-patch/dart:core/errors_patch.dart:33)
#2 ProgramCompiler._emitSuperTarget.<anonymous closure> (package:dev_compiler/src/kernel/compiler.dart:4042:16)
#3 _HashVMBase&MapMixin&&_LinkedHashMapMixin.putIfAbsent (dart:collection-patch/dart:collection/compact_hash.dart:275)
#4 ProgramCompiler._emitSuperTarget (package:dev_compiler/src/kernel/compiler.dart:4039:34)
#5 ProgramCompiler.visitSuperPropertySet (package:dev_compiler/src/kernel/compiler.dart:3605:20)
#6 SuperPropertySet.accept (package:kernel/ast.dart:2480:36)
#7 ProgramCompiler._visitAndMarkExpression (package:dev_compiler/src/kernel/compiler.dart:2996:31)
#8 ProgramCompiler.visitExpressionStatement (package:dev_compiler/src/kernel/compiler.dart:3009:7)
#9 ExpressionStatement.accept (package:kernel/ast.dart:3682:35)
#10 ProgramCompiler._visitStatement (package:dev_compiler/src/kernel/compiler.dart:2937:21)
#11 MappedListIterable.elementAt (dart:_internal/iterable.dart:413)
#12 ListIterable.toList (dart:_internal/iterable.dart:218)
#13 ProgramCompiler.visitBlock (package:dev_compiler/src/kernel/compiler.dart:3013:57)
#14 Block.accept (package:kernel/ast.dart:3707:35)
#15 ProgramCompiler._visitStatement (package:dev_compiler/src/kernel/compiler.dart:2937:21)
#16 ProgramCompiler._emitConstructorBody (package:dev_compiler/src/kernel/compiler.dart:1327:18)
#17 ProgramCompiler._emitConstructor (package:dev_compiler/src/kernel/compiler.dart:1268:16)
[...]
```
Bug:
Change-Id: I8ca19827ab63eae509aae1c5172774a7a6abde1a
Reviewed-on: https://dart-review.googlesource.com/28620
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
26 lines
507 B
Dart
26 lines
507 B
Dart
// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
import "package:expect/expect.dart";
|
|
|
|
class Foo {
|
|
bool myBoolean = false;
|
|
|
|
void set foo(bool b) {
|
|
print("Setting foo in Foo");
|
|
myBoolean = b;
|
|
}
|
|
}
|
|
|
|
class Baz extends Foo {
|
|
Baz() {
|
|
super.foo = true;
|
|
Expect.equals(true, super.myBoolean);
|
|
}
|
|
}
|
|
|
|
main() {
|
|
new Baz();
|
|
}
|