blob: 84a784fa5a38a1d509c57687549c893ae1ca6737 [file] [log] [blame]
//
// Problems outside component:
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart: Error: Class 'Object' cannot be extended or implemented.
//
library;
//
// Problems in library:
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:11:7: Error: Can't use 'Double' as a mixin because it has constructors.
// class WithFinal with Double {} /* Error */
// ^
// sdk/lib/ffi/native_type.dart:*: Context: This constructor prevents using 'Double' as a mixin.
// const Double();
// ^
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:11:22: Error: The class 'Double' can't be used as a mixin because it isn't a mixin class nor a mixin.
// class WithFinal with Double {} /* Error */
// ^
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:13:34: Error: The class 'Double' can't be implemented outside of its library because it's a final class.
// class ImplementsFinal implements Double {} /* Error */
// ^
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:15:28: Error: The class 'Double' can't be extended outside of its library because it's a final class.
// class ExtendsFinal extends Double {} /* Error */
// ^
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:22:33: Error: The class 'Opaque' can't be implemented outside of its library because it's a base class.
// class ImplementsBase implements Opaque {} /* Error */
// ^
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:26:32: Error: The class 'Finalizable' can't be extended outside of its library because it's an interface class.
// class ExtendsInterface extends Finalizable {} /* Error */
// ^
//
// pkg/front_end/testcases/class_modifiers/ffi_exception.dart:26:7: Error: The superclass, 'Finalizable', has no unnamed constructor that takes no arguments.
// class ExtendsInterface extends Finalizable {} /* Error */
// ^
//
import self as self;
import "dart:core" as core;
import "dart:ffi" as ffi;
import "dart:ffi";
abstract final class _WithFinal&Object&Double extends core::Object implements ffi::Double /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
const synthetic constructor •() self::_WithFinal&Object&Double
: super core::Object::•()
;
}
class WithFinal extends self::_WithFinal&Object&Double {
synthetic constructor •() self::WithFinal
: super self::_WithFinal&Object&Double::•()
;
}
class ImplementsFinal extends core::Object implements ffi::Double {
synthetic constructor •() self::ImplementsFinal
: super core::Object::•()
;
}
class ExtendsFinal extends ffi::Double {
synthetic constructor •() self::ExtendsFinal
: super ffi::Double::•()
;
}
class ExtendsBase extends ffi::Opaque {
synthetic constructor •() self::ExtendsBase
: super ffi::Opaque::•()
;
}
class ImplementsBase extends core::Object implements ffi::Opaque {
synthetic constructor •() self::ImplementsBase
: super core::Object::•()
;
}
class ExtendsInterface extends ffi::Finalizable {
synthetic constructor •() self::ExtendsInterface
: invalid-initializer
;
}