blob: 7274ffbf56b6cd11f885fd3f6e64cbe0cb7ec70e [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:20:5: Error: Property 'length' cannot be accessed on 'String?' because it is potentially null.
// Try accessing using ?. instead.
// s.length;
// ^^^^^^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:21:5: Error: Method 'substring' cannot be called on 'String?' because it is potentially null.
// Try calling using ?. instead.
// s.substring(1, 1);
// ^^^^^^^^^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:23:5: Error: Method 'foo' cannot be called on 'A?' because it is potentially null.
// - 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
// Try calling using ?. instead.
// a.foo();
// ^^^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:24:5: Error: Property 'bar' cannot be accessed on 'A?' because it is potentially null.
// - 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
// Try accessing using ?. instead.
// a.bar;
// ^^^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:25:5: Error: Property 'baz' cannot be accessed on 'A?' because it is potentially null.
// - 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
// Try accessing using ?. instead.
// a.baz = 42;
// ^^^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:26:4: Error: Can't use an expression of type 'A?' as a function because it's potentially null.
// - 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
// Try calling using ?.call instead.
// a();
// ^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:27:13: Error: Too many positional arguments: 0 allowed, but 1 found.
// Try removing the extra positional arguments.
// b.toString(0);
// ^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:29:17: Error: Can't tear off method 'call' from a potentially null value.
// Function f1 = a;
// ^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:30:24: Error: Can't tear off method 'call' from a potentially null value.
// void Function() f2 = a;
// ^
//
// pkg/front_end/testcases/nnbd/nullable_receiver.dart:31:25: Error: Can't tear off method 'call' from a potentially null value.
// void Function()? f3 = a;
// ^
//
import self as self;
import "dart:core" as core;
class A extends core::Object {
synthetic constructor •() self::A
: super core::Object::•()
;
method foo() dynamic {}
get bar() core::int
return 42;
set baz(core::int value) void {}
method call() void {}
}
class B extends core::Object {
synthetic constructor •() self::B
: super core::Object::•()
;
method toString([core::int extra = #C1]) → core::String
return super.{core::Object::toString}();
}
static method error(core::String? s, self::A? a, self::B? b) dynamic {
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:20:5: Error: Property 'length' cannot be accessed on 'String?' because it is potentially null.
Try accessing using ?. instead.
s.length;
^^^^^^" in s.{core::String::length}{<nullable>}.{core::int};
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:21:5: Error: Method 'substring' cannot be called on 'String?' because it is potentially null.
Try calling using ?. instead.
s.substring(1, 1);
^^^^^^^^^" in s.{core::String::substring}{<nullable>}.(1, 1){(core::int, [core::int?]) core::String};
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:23:5: Error: Method 'foo' cannot be called on 'A?' because it is potentially null.
- 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
Try calling using ?. instead.
a.foo();
^^^" in a.{self::A::foo}{<nullable>}.(){() dynamic};
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:24:5: Error: Property 'bar' cannot be accessed on 'A?' because it is potentially null.
- 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
Try accessing using ?. instead.
a.bar;
^^^" in a.{self::A::bar}{<nullable>}.{core::int};
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:25:5: Error: Property 'baz' cannot be accessed on 'A?' because it is potentially null.
- 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
Try accessing using ?. instead.
a.baz = 42;
^^^" in a.{self::A::baz}{<nullable>}. = 42;
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:26:4: Error: Can't use an expression of type 'A?' as a function because it's potentially null.
- 'A' is from 'pkg/front_end/testcases/nnbd/nullable_receiver.dart'.
Try calling using ?.call instead.
a();
^" in a.{self::A::call}{<nullable>}.(){() void};
invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:27:13: Error: Too many positional arguments: 0 allowed, but 1 found.
Try removing the extra positional arguments.
b.toString(0);
^" in b.{core::Object::toString}{<inapplicable>}.(0){(invalid-type) invalid-type};
core::Function f1 = invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:29:17: Error: Can't tear off method 'call' from a potentially null value.
Function f1 = a;
^" in a as{TypeError} core::Function;
() void f2 = invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:30:24: Error: Can't tear off method 'call' from a potentially null value.
void Function() f2 = a;
^" in a as{TypeError} () void;
() →? void f3 = invalid-expression "pkg/front_end/testcases/nnbd/nullable_receiver.dart:31:25: Error: Can't tear off method 'call' from a potentially null value.
void Function()? f3 = a;
^" in a as{TypeError} () →? void;
}
static method ok<T extends core::Object?>(core::String? s, self::A? a, self::ok::T% t, self::B? b, core::Invocation i) dynamic {
s =={core::String::==}{(core::Object) core::bool} s;
a =={core::Object::==}{(core::Object) core::bool} a;
t =={core::Object::==}{(core::Object) core::bool} t;
b =={core::Object::==}{(core::Object) core::bool} b;
s.{core::Object::hashCode}{core::int};
a.{core::Object::hashCode}{core::int};
t.{core::Object::hashCode}{core::int};
b.{core::Object::hashCode}{core::int};
s.{core::Object::toString}(){() core::String};
a.{core::Object::toString}(){() core::String};
t.{core::Object::toString}(){() core::String};
b.{core::Object::toString}(){() core::String};
try {
s.{core::Object::noSuchMethod}(i){(core::Invocation) dynamic};
}
on core::Object catch(final core::Object e, final core::StackTrace t) {
}
try {
a.{core::Object::noSuchMethod}(i){(core::Invocation) dynamic};
}
on core::Object catch(final core::Object e, final core::StackTrace t) {
}
try {
t.{core::Object::noSuchMethod}(i){(core::Invocation) dynamic};
}
on core::Object catch(final core::Object e, final core::StackTrace t) {
}
try {
b.{core::Object::noSuchMethod}(i){(core::Invocation) dynamic};
}
on core::Object catch(final core::Object e, final core::StackTrace t) {
}
s.{core::Object::runtimeType}{core::Type};
a.{core::Object::runtimeType}{core::Type};
t.{core::Object::runtimeType}{core::Type};
b.{core::Object::runtimeType}{core::Type};
}
static method main() dynamic {}
constants {
#C1 = 42
}