File tree Expand file tree Collapse file tree 7 files changed +71
-4
lines changed
lib/transformations/type_flow
testcases/transformations/type_flow/transformer Expand file tree Collapse file tree 7 files changed +71
-4
lines changed Original file line number Diff line number Diff line change 1- ## 2.15.0
1+ ## 2.15.1 - 2021-12-14
2+
3+ This is a patch release that fixes:
4+
5+ - an AOT compilation failure in some Flutter apps (issue [ #47878 ] [ ] ).
6+ - ` dart pub publish ` for servers with a path in the URL (pr
7+ [ dart-lang/pub #3244 ] [ ] ).
8+
9+ [ #47878 ] : https://github.com/dart-lang/sdk/issues/47878
10+ [ dart-lang/pub#3244 ] : https://github.com/dart-lang/pub/pull/3244
11+
12+ ## 2.15.0 - 2021-12-08
213
314### Language
415
Original file line number Diff line number Diff line change @@ -139,7 +139,7 @@ vars = {
139139 "pool_rev" : "7abe634002a1ba8a0928eded086062f1307ccfae" ,
140140 "process_rev" : "56ece43b53b64c63ae51ec184b76bd5360c28d0b" ,
141141 "protobuf_rev" : "c1eb6cb51af39ccbaa1a8e19349546586a5c8e31" ,
142- "pub_rev" : "96404e0749864c9fbf8b12e1d424e8078809e00a " ,
142+ "pub_rev" : "b9edfa5e288ea3d1a57d1db054ef844ae7b27d99 " ,
143143 "pub_semver_rev" : "a43ad72fb6b7869607581b5fedcb186d1e74276a" ,
144144 "root_certificates_rev" : "692f6d6488af68e0121317a9c2c9eb393eb0ee50" ,
145145 "rust_revision" : "b7856f695d65a8ebc846754f97d15814bcb1c244" ,
Original file line number Diff line number Diff line change @@ -11888,7 +11888,9 @@ class TypeParameterType extends DartType {
1188811888 v.visitTypeParameterType (this , arg);
1188911889
1189011890 @override
11891- void visitChildren (Visitor v) {}
11891+ void visitChildren (Visitor v) {
11892+ promotedBound? .accept (v);
11893+ }
1189211894
1189311895 @override
1189411896 bool operator == (Object other) => equals (other, null );
Original file line number Diff line number Diff line change @@ -985,6 +985,7 @@ class _TreeShakerTypeVisitor extends RecursiveVisitor {
985985 if (parent is Class ) {
986986 shaker.addClassUsedInType (parent);
987987 }
988+ node.visitChildren (this );
988989 }
989990}
990991
Original file line number Diff line number Diff line change 1+ // Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file
2+ // for details. All rights reserved. Use of this source code is governed by a
3+ // BSD-style license that can be found in the LICENSE file.
4+
5+ // Regression test for https://github.com/dart-lang/sdk/issues/47878
6+
7+ abstract class Disposable {}
8+
9+ class A {}
10+
11+ class Data <T > {
12+ T ? value;
13+ }
14+
15+ class DataStream <T > {
16+ DataStream ({newValue, Data <T >? stream}) {
17+ var lastValue = stream! .value;
18+
19+ if (lastValue != null &&
20+ lastValue is Disposable &&
21+ lastValue != newValue) {}
22+ }
23+ }
24+
25+ void main () {
26+ DataStream <A >();
27+ }
Original file line number Diff line number Diff line change 1+ library #lib /*isNonNullableByDefault*/;
2+ import self as self;
3+ import "dart:core" as core;
4+
5+ abstract class Disposable extends core::Object {
6+ }
7+ abstract class A extends core::Object {
8+ }
9+ abstract class Data<T extends core::Object? = dynamic> extends core::Object {
10+ }
11+ class DataStream<T extends core::Object? = dynamic> extends core::Object {
12+ constructor •() → self::DataStream<self::DataStream::T%>
13+ : super core::Object::•() {
14+ self::DataStream::T? lastValue = block {
15+ #C1!;
16+ } =>throw "Attempt to execute code removed by Dart AOT compiler (TFA)";
17+ if(!(throw "Attempt to execute code removed by Dart AOT compiler (TFA)") && false && !([@vm.inferred-type.metadata=dart.core::bool (skip check) (receiver not int)] lastValue{self::DataStream::T & self::Disposable /* '!' & '!' = '!' */} =={core::Object::==}{(core::Object) → core::bool} #C1)) {
18+ }
19+ }
20+ }
21+ static method main() → void {
22+ new self::DataStream::•<self::A>();
23+ }
24+ constants {
25+ #C1 = null
26+ }
Original file line number Diff line number Diff line change 2626CHANNEL stable
2727MAJOR 2
2828MINOR 15
29- PATCH 0
29+ PATCH 1
3030PRERELEASE 0
3131PRERELEASE_PATCH 0
You can’t perform that action at this time.
0 commit comments