mirror of
https://github.com/dart-lang/sdk
synced 2024-09-15 23:59:47 +00:00
2fc9ea5ad7
Change-Id: Ice509ea1f0efec8153fb2380ab0e980fed552b0e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/289580 Reviewed-by: Leaf Petersen <leafp@google.com> Commit-Queue: Jake Macdonald <jakemac@google.com>
31 lines
627 B
Dart
31 lines
627 B
Dart
// Copyright (c) 2023, 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.
|
|
|
|
// @dart=2.19
|
|
|
|
import "package:expect/expect.dart";
|
|
|
|
class Mixin {
|
|
var field;
|
|
createIt() {
|
|
if (field == null) field = 42;
|
|
}
|
|
}
|
|
|
|
class A {
|
|
A(foo);
|
|
}
|
|
|
|
class B extends A with Mixin {
|
|
// Because [super] references a synthesized constructor, dart2js
|
|
// used to not see the null assignment to it.
|
|
B(foo) : super(foo);
|
|
}
|
|
|
|
main() {
|
|
var a = new B(42);
|
|
a.createIt();
|
|
Expect.equals(42, a.field);
|
|
}
|