blob: cdcf68cca0c9bd2be316f479cac97547ce2e1ac2 [file] [log] [blame]
// Copyright (c) 2019, 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.
/**
* @assertion Even though you can access this, you cannot use super inside an
* extension method.
*
* @description Check that it is a compile error to access super inside an
* extension method
* @author sgrekhov@unipro.ru
*/
class A {
String get a => "a";
}
class C extends A {
String get c => "c";
}
extension ExtendedC on C {
String m() => super.a;
// ^^^^^
// [analyzer] COMPILE_TIME_ERROR.SUPER_IN_EXTENSION
// [cfe] Expected identifier, but got 'super'.
String get getter => super.a;
// ^^^^^
// [analyzer] COMPILE_TIME_ERROR.SUPER_IN_EXTENSION
// [cfe] Expected identifier, but got 'super'.
String operator-() => super.a;
// ^^^^^
// [analyzer] COMPILE_TIME_ERROR.SUPER_IN_EXTENSION
// [cfe] Expected identifier, but got 'super'.
}
main() {
new C();
}