| library; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/general/extension_type_declaration_disabled.dart:7:11: Error: The 'inline-class' language feature is disabled for this library. |
| // Try removing the `@dart=` annotation or setting the language version to 3.3 or higher. |
| // extension type ExtensionType1(int it) {} |
| // ^^^^ |
| // pkg/front_end/testcases/general/extension_type_declaration_disabled.dart:5:1: Context: This is the annotation that opts out this library from the 'inline-class' language feature. |
| // // @dart=2.18 |
| // ^^^^^^^^^^^^^ |
| // |
| // pkg/front_end/testcases/general/extension_type_declaration_disabled.dart:8:11: Error: The 'inline-class' language feature is disabled for this library. |
| // Try removing the `@dart=` annotation or setting the language version to 3.3 or higher. |
| // extension type ExtensionType2<T>._(int it) implements int, ExtensionType1 {} |
| // ^^^^ |
| // pkg/front_end/testcases/general/extension_type_declaration_disabled.dart:5:1: Context: This is the annotation that opts out this library from the 'inline-class' language feature. |
| // // @dart=2.18 |
| // ^^^^^^^^^^^^^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| extension type ExtensionType1(core::int it) { |
| abstract extension-type-member representation-field get it() → core::int; |
| constructor • = self::ExtensionType1|constructor#; |
| constructor tearoff • = self::ExtensionType1|constructor#_#new#tearOff; |
| } |
| extension type ExtensionType2<T extends core::Object? = dynamic>(core::int it) implements core::int, self::ExtensionType1% /* erasure=core::int, declared=! */ { |
| abstract extension-type-member representation-field get it() → core::int; |
| constructor _ = self::ExtensionType2|constructor#_; |
| constructor tearoff _ = self::ExtensionType2|constructor#_#_#tearOff; |
| } |
| static extension-type-member method ExtensionType1|constructor#(core::int it) → self::ExtensionType1% /* erasure=core::int, declared=! */ { |
| lowered final self::ExtensionType1% /* erasure=core::int, declared=! */ #this = it; |
| return #this; |
| } |
| static extension-type-member method ExtensionType1|constructor#_#new#tearOff(core::int it) → self::ExtensionType1% /* erasure=core::int, declared=! */ |
| return self::ExtensionType1|constructor#(it); |
| static extension-type-member method ExtensionType2|constructor#_<T extends core::Object? = dynamic>(core::int it) → self::ExtensionType2<self::ExtensionType2|constructor#_::T%> /* erasure=core::int */ { |
| lowered final self::ExtensionType2<self::ExtensionType2|constructor#_::T%> /* erasure=core::int */ #this = it; |
| return #this; |
| } |
| static extension-type-member method ExtensionType2|constructor#_#_#tearOff<T extends core::Object? = dynamic>(core::int it) → self::ExtensionType2<self::ExtensionType2|constructor#_#_#tearOff::T%> /* erasure=core::int */ |
| return self::ExtensionType2|constructor#_<self::ExtensionType2|constructor#_#_#tearOff::T%>(it); |