[cfe] Enable nnbd in expression suite

Change-Id: Iad66d179b4b2795ba68a65cf078fa69a4f65fae2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/237040
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
This commit is contained in:
Johnni Winther
2022-03-16 11:44:31 +00:00
committed by Commit Bot
parent 3b64cede6d
commit 5f7d226ae8
58 changed files with 89 additions and 82 deletions
@@ -613,7 +613,7 @@ Future<Context> createContext(
errors.add(message);
}
..environmentDefines = const {}
..explicitExperimentalFlags = {ExperimentalFlag.nonNullable: false}
..explicitExperimentalFlags = {}
..allowedExperimentalFlagsForTesting = const AllowedExperimentalFlags();
final ProcessedOptions options =
+1 -1
View File
@@ -6,7 +6,7 @@ main() {
}
class Foo<E1> {
E1 get foo => null;
E1? get foo => null;
String get bar => "hello";
}
+1 -1
View File
@@ -1,4 +1,4 @@
class Foo<E2> {
E2 get foo => null;
E2? get foo => null;
int get bar => 42;
}
@@ -1,6 +1,6 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return () → dart.core::int* {
return this.{main::B::x}{dart.core::int*}.{dart.core::num::+}(this.{main::B::y}{dart.core::int*}){(dart.core::num*) →* dart.core::int*};
return () → dart.core::int {
return this.{main::B::x}{dart.core::int}.{dart.core::num::+}(this.{main::B::y}{dart.core::int}){(dart.core::num) → dart.core::int};
};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{main::B::z}{dart.core::String*};
return this.{main::B::z}{dart.core::String};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{main::A::doit_with_this}(2){(dart.core::int*) →* dart.core::int*};
return this.{main::A::doit_with_this}(2){(dart.core::int) → dart.core::int};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{main::B::_priv}{dart.core::int*};
return this.{main::B::_priv}{dart.core::int?};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{main::B::_privMethod}{() →* void};
return this.{main::B::_privMethod}{() → void};
@@ -4,8 +4,8 @@ Errors: {
^^^^^^^^^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return #lib1::globalVar.{dart.core::num::+}(invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:13: Error: Undefined name 'staticVar'.\nglobalVar + staticVar + 5\n ^^^^^^^^^"){(dart.core::num*) →* dart.core::num*}.{dart.core::num::+}(5){(dart.core::num*) →* dart.core::num*};
return #lib1::globalVar.{dart.core::num::+}(invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:13: Error: Undefined name 'staticVar'.\nglobalVar + staticVar + 5\n ^^^^^^^^^"){(dart.core::num) → dart.core::double}.{dart.core::double::+}(5){(dart.core::num) → dart.core::double};
Errors: {
}
static method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return #lib1::globalVar.{dart.core::num::+}(#lib1::MyClass::staticVar){(dart.core::num*) →* dart.core::int*}.{dart.core::num::+}(5){(dart.core::num*) →* dart.core::int*};
return #lib1::globalVar.{dart.core::num::+}(#lib1::MyClass::staticVar){(dart.core::num) → dart.core::int}.{dart.core::num::+}(5){(dart.core::num) → dart.core::int};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return main::hasBound<main::C::T*>();
return main::hasBound<main::C::T>();
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return main::hasBound<main::C::T*>();
return main::hasBound<main::C::T>();
@@ -6,4 +6,4 @@ Errors: {
^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return main::hasBound<main::A::T*>();
return main::hasBound<main::A::T%>();
@@ -6,4 +6,4 @@ Errors: {
^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return main::hasBound<main::A::T*>();
return main::hasBound<main::A::T%>();
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{main::MiddlewareApi::toString}(){() →* dart.core::String*};
return this.{dart.core::Object::toString}(){() → dart.core::String};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return x is main::A::T*;
return x is{ForNonNullableByDefault} main::A::T%;
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return main::id<main::A::T*>(x as{TypeError,ForDynamic} main::A::T*);
return main::id<main::A::T%>(x as{TypeError,ForDynamic,ForNonNullableByDefault} main::A::T%);
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return new main::A::•<main::A::T*>();
return new main::A::•<main::A::T%>();
@@ -7,6 +7,6 @@ definitions: []
position: "main.dart#A"
expression: |
() {
T k = null;
T? k = null;
return k;
}
@@ -1,7 +1,7 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return () → main::A::T* {
main::A::T* k = null;
return () → main::A::T? {
main::A::T? k = null;
return k;
};
@@ -1,7 +1,7 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return #C2.{main::ConstClass::x}{dart.core::int*};
return #C2.{main::ConstClass::x}{dart.core::int};
constants {
#C1 = 42
#C2 = main::ConstClass {x:#C1}
@@ -1,7 +1,7 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return #C2.{main::ConstClass::x}{dart.core::int*};
return #C2.{main::ConstClass::x}{dart.core::int};
constants {
#C1 = 42
#C2 = main::ConstClass {x:#C1}
@@ -1,4 +1,4 @@
Errors: {
}
method /*isLegacy, from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return dart.core::identical(1, 1);
@@ -1,4 +1,4 @@
Errors: {
}
method /*isLegacy, from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return null is dart.collection::Queue<dynamic>*;
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return null is{ForNonNullableByDefault} dart.collection::Queue<dynamic>;
+1 -1
View File
@@ -1,7 +1,7 @@
// Copyright (c) 2018, 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.
// @dart=2.9
int globalVar = 100;
class MyClass {
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr< extends dynamic>(dart.core::List<dart.core::String> x) → dynamic
return main::Foo|getFortyTwo(x.{dart.core::Iterable::first}{dart.core::String*});
return main::Foo|getFortyTwo(x.{dart.core::Iterable::first}{dart.core::String});
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dart.core::List<dart.core::String> x, dart.core::int y) → dynamic
return x.{dart.core::Iterable::fold}<dart.core::int*>(0, (dart.core::int* previousValue, dart.core::String* element) → dart.core::int* => previousValue.{dart.core::num::+}(element.{dart.core::String::length}{dart.core::int*}){(dart.core::num*) →* dart.core::int*}){(dart.core::int*, (dart.core::int*, dart.core::String*) →* dart.core::int*) →* dart.core::int*};
return x.{dart.core::Iterable::fold}<dart.core::int>(0, (dart.core::int previousValue, dart.core::String element) → dart.core::int => previousValue.{dart.core::num::+}(element.{dart.core::String::length}{dart.core::int}){(dart.core::num) → dart.core::int}){(dart.core::int, (dart.core::int, dart.core::String) → dart.core::int) → dart.core::int};
@@ -2,6 +2,6 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(lowered dynamic #this) → dynamic
return () → dynamic {
dart.core::print(main::Foo|getFortyTwo(#this as{TypeError,ForDynamic} dart.core::String*));
dart.core::print(main::Foo|getFortyTwo(#this as{TypeError,ForDynamic,ForNonNullableByDefault} dart.core::String));
return #this;
};
@@ -1,21 +1,21 @@
Errors: {
}
method /*isLegacy, from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic a, dynamic b) → dynamic
return ((dynamic a, dynamic b) → dart.core::bool* {
if(!(a{dynamic}._usedData =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b{dynamic}._usedData) || !(a{dynamic}._deletedKeys =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b{dynamic}._deletedKeys) || !(a{dynamic}._hashMask =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b{dynamic}._hashMask) || !(a{dynamic}._index{dynamic}.length =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b{dynamic}._index{dynamic}.length) || !(a{dynamic}._data{dynamic}.length =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b{dynamic}._data{dynamic}.length)) {
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic a, dynamic b) → dynamic
return ((dynamic a, dynamic b) → dart.core::bool {
if(!(a{dynamic}._usedData =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b{dynamic}._usedData) || !(a{dynamic}._deletedKeys =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b{dynamic}._deletedKeys) || !(a{dynamic}._hashMask =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b{dynamic}._hashMask) || !(a{dynamic}._index{dynamic}.length =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b{dynamic}._index{dynamic}.length) || !(a{dynamic}._data{dynamic}.length =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b{dynamic}._data{dynamic}.length)) {
return false;
}
for (dart.core::int* i = 0; i.{dart.core::num::<}(a{dynamic}._index{dynamic}.length as{TypeError,ForDynamic} dart.core::num*){(dart.core::num*) →* dart.core::bool*}; i = i.{dart.core::num::+}(1){(dart.core::num*) →* dart.core::int*}) {
if(!(a{dynamic}._index{dynamic}.[](i) =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b{dynamic}._index{dynamic}.[](i))) {
for (dart.core::int i = 0; i.{dart.core::num::<}(a{dynamic}._index{dynamic}.length as{TypeError,ForDynamic,ForNonNullableByDefault} dart.core::num){(dart.core::num) → dart.core::bool}; i = i.{dart.core::num::+}(1){(dart.core::num) → dart.core::int}) {
if(!(a{dynamic}._index{dynamic}.[](i) =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b{dynamic}._index{dynamic}.[](i))) {
return false;
}
}
for (dart.core::int* i = 0; i.{dart.core::num::<}(a{dynamic}._data{dynamic}.length as{TypeError,ForDynamic} dart.core::num*){(dart.core::num*) →* dart.core::bool*}; i = i.{dart.core::num::+}(1){(dart.core::num*) →* dart.core::int*}) {
for (dart.core::int i = 0; i.{dart.core::num::<}(a{dynamic}._data{dynamic}.length as{TypeError,ForDynamic,ForNonNullableByDefault} dart.core::num){(dart.core::num) → dart.core::bool}; i = i.{dart.core::num::+}(1){(dart.core::num) → dart.core::int}) {
dynamic ad = a{dynamic}._data{dynamic}.[](i);
dynamic bd = b{dynamic}._data{dynamic}.[](i);
if(!dart.core::identical(ad, bd) && !(ad =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} a && bd =={dart.core::Object::==}{(dart.core::Object*) →* dart.core::bool*} b)) {
if(!dart.core::identical(ad, bd) && !(ad =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} a && bd =={dart.core::Object::==}{(dart.core::Object) → dart.core::bool} b)) {
return false;
}
}
return true;
})(a, b){(dynamic, dynamic) →* dart.core::bool*};
})(a, b){(dynamic, dynamic) → dart.core::bool};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{#lib1::Foo::foo}{#lib1::Foo::E1*};
return this.{#lib1::Foo::foo}{#lib1::Foo::E1?};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{#lib1::Foo::bar}{dart.core::String*}.{dart.core::String::length}{dart.core::int*};
return this.{#lib1::Foo::bar}{dart.core::String}.{dart.core::String::length}{dart.core::int};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return new #lib1::Foo::•<dynamic>().{#lib1::Foo::bar}{dart.core::String*}.{dart.core::String::length}{dart.core::int*};
return new #lib1::Foo::•<dynamic>().{#lib1::Foo::bar}{dart.core::String}.{dart.core::String::length}{dart.core::int};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{main::E::t}{main::E::T*};
return this.{main::E::t}{main::E::T?};
@@ -1,4 +1,4 @@
Errors: {
}
method /*isLegacy, from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{dart.collection::LinkedList::first}{dart.collection::LinkedList::E*};
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{dart.collection::LinkedList::first}{dart.collection::LinkedList::E};
@@ -4,7 +4,7 @@ Errors: {
^^^^^^^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return () → Null {
return () → Never {
throw new dart.core::AbstractClassInstantiationError::•("Process");
dart.io::File::fromUri(dart.core::Uri::parse("file://test.dart"));
};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return dart.io::exit(2);
return let final Never #t1 = dart.io::exit(2) in throw new dart._internal::ReachabilityError::•("`null` encountered as the result from expression with type `Never`.");
+10 -7
View File
@@ -1,7 +1,7 @@
// Copyright (c) 2018, 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.
// @dart=2.9
library main;
import 'dart:io' show File, Process, exit;
@@ -31,7 +31,7 @@ class A<T> {
static int staticVar = 3;
int doit_with_this(int x) => x + 1;
final int _priv = 0;
final int? _priv = 0;
void _privMethod() {}
}
@@ -40,7 +40,10 @@ T id<T>(T x) => x;
class B extends A<Object> {
int x;
final int y = 7;
int _priv;
int? _priv;
B(this.x);
String get z {
return "";
}
@@ -52,14 +55,14 @@ class B extends A<Object> {
class Bound {}
class HasPrivate {
int _priv = 0;
int? _priv = 0;
}
class C<T extends Bound> extends HasPrivate {}
void hasBound<T extends Bound>() {}
Object k;
Object? k;
class D<T> {
Y id<Y>(Y x) => x;
@@ -97,8 +100,8 @@ extension Foo on String {
}
class E<T> {
T _t;
T get t => _t;
T? _t;
T? get t => _t;
}
void withBound<E extends String>(List<E> x) {
@@ -1,7 +1,7 @@
// 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.
// @dart=2.9
library main_2;
import 'main.dart' as m;
@@ -1,4 +1,8 @@
Errors: {
org-dartlang-debug:synthetic_debug_expression:1:6: Error: The argument type 'List<dynamic>' can't be assigned to the parameter type 'List<T>'.
- 'List' is from 'dart:core'.
m(id(s = []))
^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic s) → dynamic
return this.{main::D::m}(this.{main::D::id}<dart.core::List<main::D::T*>*>((s = dart.core::_GrowableList::•<dynamic>(0)) as{TypeError} dart.core::List<main::D::T*>*){(dart.core::List<main::D::T*>*) →* dart.core::List<main::D::T*>*}){(dart.core::List<main::D::T*>*) →* dynamic};
return this.{main::D::m}(this.{main::D::id}<dart.core::List<main::D::T%>>(invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:6: Error: The argument type 'List<dynamic>' can't be assigned to the parameter type 'List<T>'.\n - 'List' is from 'dart:core'.\nm(id(s = []))\n ^" in (s = dart.core::_GrowableList::•<dynamic>(0)) as{TypeError,ForNonNullableByDefault} Never){(dart.core::List<main::D::T%>) → dart.core::List<main::D::T%>}){(dart.core::List<main::D::T%>) → dynamic};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
method /*isNonNullableByDefault, from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return 0;
@@ -1,4 +1,4 @@
Errors: {
}
static method /*isLegacy, from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
static method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return dart.io::Platform::isAndroid;
@@ -1,4 +1,4 @@
Errors: {
}
method /*isLegacy, from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{dart.core::Object::toString}(){() →* dart.core::String*};
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return this.{dart.core::Object::toString}(){() → dart.core::String};
@@ -2,6 +2,6 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return block {
final dart.core::Set<dart.core::String*>* #t1 = new dart.collection::_CompactLinkedHashSet::•<dart.core::String*>();
#t1.{dart.core::Set::add}{Invariant}("a"){(dart.core::String*) →* dart.core::bool*};
final dart.core::Set<dart.core::String> #t1 = new dart.collection::_CompactLinkedHashSet::•<dart.core::String>();
#t1.{dart.core::Set::add}{Invariant}("a"){(dart.core::String) → dart.core::bool};
} =>#t1;
@@ -2,5 +2,5 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic
return block {
final dart.core::List<dart.core::String*>* #t1 = dart.core::List::of<dart.core::String*>(main::listOfStrings);
final dart.core::List<dart.core::String> #t1 = dart.core::List::of<dart.core::String>(main::listOfStrings);
} =>#t1;
@@ -6,4 +6,4 @@ Errors: {
^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dart.core::_Closure x) → dynamic
return invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:2: Error: Cannot invoke an instance of '_Closure' because it declares 'call' to be something other than a method.\n - '_Closure' is from 'dart:core'.\nTry changing 'call' to a method or explicitly invoke 'call'.\nx().fold<int>(0, (previousValue, element) => previousValue + element.length)\n ^"{dynamic}.fold<dart.core::int*>(0, (dynamic previousValue, dynamic element) → dynamic => previousValue{dynamic}.+(element{dynamic}.length));
return invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:2: Error: Cannot invoke an instance of '_Closure' because it declares 'call' to be something other than a method.\n - '_Closure' is from 'dart:core'.\nTry changing 'call' to a method or explicitly invoke 'call'.\nx().fold<int>(0, (previousValue, element) => previousValue + element.length)\n ^"{dynamic}.fold<dart.core::int>(0, (dynamic previousValue, dynamic element) → dynamic => previousValue{dynamic}.+(element{dynamic}.length));
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr(dynamic x) → dynamic
return x{dynamic}.call(){dynamic}.fold<dart.core::int*>(0, (dynamic previousValue, dynamic element) → dynamic => previousValue{dynamic}.+(element{dynamic}.length));
return x{dynamic}.call(){dynamic}.fold<dart.core::int>(0, (dynamic previousValue, dynamic element) → dynamic => previousValue{dynamic}.+(element{dynamic}.length));
@@ -2,6 +2,6 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<E extends dart.core::String>(dart.core::List<dart.core::String> x) → dynamic
return (() → Null {
dart.core::List<#lib1::debugExpr::E*>* y = dart.core::_GrowableList::•<#lib1::debugExpr::E*>(0);
x.{dart.core::List::addAll}(y){(dart.core::Iterable<dart.core::String*>*) →* void};
})(){() →* Null};
dart.core::List<#lib1::debugExpr::E> y = dart.core::_GrowableList::•<#lib1::debugExpr::E>(0);
x.{dart.core::List::addAll}(y){(dart.core::Iterable<dart.core::String>) → void};
})(){() → Null};
@@ -7,6 +7,6 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<E extends dart.core::String>(dart.core::List<dart.core::String> x) → dynamic
return () → Null {
dart.core::List<#lib1::debugExpr::E*>* y = dart.core::_GrowableList::•<#lib1::debugExpr::E*>(0);
y.{dart.core::List::addAll}(invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:31: Error: The argument type 'List<String>' can't be assigned to the parameter type 'Iterable<E>'.\n - 'List' is from 'dart:core'.\n - 'Iterable' is from 'dart:core'.\n() { List<E> y = []; y.addAll(x); }\n ^" in x as{TypeError} Never){(dart.core::Iterable<#lib1::debugExpr::E*>*) →* void};
dart.core::List<#lib1::debugExpr::E> y = dart.core::_GrowableList::•<#lib1::debugExpr::E>(0);
y.{dart.core::List::addAll}(invalid-expression "org-dartlang-debug:synthetic_debug_expression:1:31: Error: The argument type 'List<String>' can't be assigned to the parameter type 'Iterable<E>'.\n - 'List' is from 'dart:core'.\n - 'Iterable' is from 'dart:core'.\n() { List<E> y = []; y.addAll(x); }\n ^" in x as{TypeError,ForNonNullableByDefault} Never){(dart.core::Iterable<#lib1::debugExpr::E>) → void};
};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<E extends dart.core::Object? = dynamic>() → dynamic
return dart.core::print(#lib1::debugExpr::E*);
return dart.core::print(#lib1::debugExpr::E%);
@@ -6,4 +6,4 @@ Errors: {
^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>() → dynamic
return main::hasBound<#lib1::debugExpr::T*>();
return main::hasBound<#lib1::debugExpr::T%>();
@@ -6,4 +6,4 @@ Errors: {
^
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>() → dynamic
return main::hasBound<#lib1::debugExpr::T*>();
return main::hasBound<#lib1::debugExpr::T%>();
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>(dynamic x) → dynamic
return x is main::A::debugExpr::T*;
return x is{ForNonNullableByDefault} main::A::debugExpr::T%;
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>(dynamic x) → dynamic
return main::id<main::A::debugExpr::T*>(x as{TypeError,ForDynamic} main::A::debugExpr::T*);
return main::id<main::A::debugExpr::T%>(x as{TypeError,ForDynamic,ForNonNullableByDefault} main::A::debugExpr::T%);
@@ -6,5 +6,5 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>() → dynamic
return () → Null {
main::A::debugExpr::T* k = invalid-expression "org-dartlang-debug:synthetic_debug_expression:2:13: Error: A value of type 'A<dynamic>' can't be assigned to a variable of type 'T'.\n - 'A' is from 'pkg/front_end/testcases/expression/main.dart'.\n T k = new A();\n ^" in new main::A::•<dynamic>() as{TypeError} Never;
main::A::debugExpr::T% k = invalid-expression "org-dartlang-debug:synthetic_debug_expression:2:13: Error: A value of type 'A<dynamic>' can't be assigned to a variable of type 'T'.\n - 'A' is from 'pkg/front_end/testcases/expression/main.dart'.\n T k = new A();\n ^" in new main::A::•<dynamic>() as{TypeError,ForNonNullableByDefault} Never;
};
@@ -8,6 +8,6 @@ type_definitions: ["T"]
position: "main.dart#A"
expression: |
() {
T k = null;
T? k = null;
k = id(k);
}
@@ -2,6 +2,6 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>() → dynamic
return () → Null {
main::A::debugExpr::T* k = null;
k = main::id<main::A::debugExpr::T*>(k);
main::A::debugExpr::T? k = null;
k = main::id<main::A::debugExpr::T?>(k);
};
@@ -1,4 +1,4 @@
Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>() → dynamic
return new main::A::•<main::A::debugExpr::T*>();
return new main::A::•<main::A::debugExpr::T%>();
@@ -8,5 +8,5 @@ type_definitions: ["T"]
position: "main.dart#A"
expression: |
() {
T x = null;
T? x = null;
}
@@ -2,5 +2,5 @@ Errors: {
}
method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr<T extends dynamic>(dynamic x) → dynamic
return () → Null {
main::A::debugExpr::T* x = null;
main::A::debugExpr::T? x = null;
};