Chromium Code Reviews| Index: tests/language/constructor10_test.dart |
| diff --git a/tests/language/constructor10_test.dart b/tests/language/constructor10_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..7ff0ef345961c5d8eb11f928feee2ff64ae24173 |
| --- /dev/null |
| +++ b/tests/language/constructor10_test.dart |
| @@ -0,0 +1,56 @@ |
| +// Copyright (c) 2014, 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. |
| + |
| +// Check that the implicit super call for synthetic constructors are checked. |
| + |
| + |
| +class A { |
| + final x; |
| + A(this.x); |
| +} |
| + |
| +class B extends A { |
| + /* /// 00: compile-time error |
| + B() : super(null); |
| + */ /// 00: continued |
| +} |
| + |
| +// ========== |
| + |
| +class X { |
| + final x; |
| + X(this.x); |
| +} |
| + |
| +class Y extends X { |
|
karlklose
2014/02/12 12:51:58
Why not use A instead of X (and F, in the third pa
floitsch
2014/02/12 14:04:52
Done.
|
| + /* /// 01: compile-time error |
| + Y() : super(null); |
| + */ /// 01: continued |
| +} |
| + |
| +class Z extends Y { |
| + Z() : super(); |
| +} |
| + |
| +// ============== |
| + |
| +class F { |
| + final x; |
| + F(this.x); |
| +} |
| + |
| +class G extends F { |
| + /* /// 02: compile-time error |
| + G() : super(null); |
| + */ /// 02: continued |
| +} |
| + |
| +class H extends G { |
| +} |
| + |
| +main() { |
| + new B().x; |
| + new Z().x; |
| + new H().x; |
| +} |