blob: 3a0c49d55d6edfcd9de460611e62708afb6dfceb [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/general/abstract_tear_off.dart:15:9: Error: Constructors on abstract classes can't be torn off.
// Class.new; // Error
// ^^^
//
// pkg/front_end/testcases/general/abstract_tear_off.dart:17:5: Error: Constructors on abstract classes can't be torn off.
// F.new; // Error
// ^^^
//
import self as self;
import "dart:core" as core;
typedef F<unrelated T extends core::Object? = dynamic> = self::Class;
abstract class Class extends core::Object {
constructor •() self::Class
: super core::Object::•()
;
static factory redirect() self::Class /* redirection-target: self::ClassImpl::• */
return new self::ClassImpl::•();
}
class ClassImpl extends core::Object implements self::Class {
synthetic constructor •() self::ClassImpl
: super core::Object::•()
;
}
static method test() dynamic {
invalid-expression "pkg/front_end/testcases/general/abstract_tear_off.dart:15:9: Error: Constructors on abstract classes can't be torn off.
Class.new; // Error
^^^";
#C1;
invalid-expression "pkg/front_end/testcases/general/abstract_tear_off.dart:17:5: Error: Constructors on abstract classes can't be torn off.
F.new; // Error
^^^";
#C2;
}
static method _#F#redirect#tearOff<unrelated T extends core::Object? = dynamic>() → self::Class
return self::Class::redirect();
constants {
#C1 = redirecting-factory-tearoff self::Class::redirect
#C2 = static-tearoff self::_#F#redirect#tearOff
}