Paul Berry
63feed82e1
Rename FlowModel.removePromotedAll to .conservativeJoin.
...
This makes the implementation consistent with the spec text in
1ed6bab4cc
.
Change-Id: Ie25b928c5aacb45a18e85c6f9196b5b55f083478
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152983
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-07-01 13:46:48 +00:00
Johnni Winther
236f3f820d
[cfe] Fix flow analysis in initializers
...
The handling of null shorting in the variable initializer interfered with
the declaration of the variable, making subsequent flow potentially
losing track of promotions.
Closes #42504
Change-Id: Idb17920ffe8746983825714f76160abcca54751b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152760
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-07-01 08:57:18 +00:00
Paul Berry
019755f77b
Flow analysis: simplify marking of loop-assigned variables as not-unassigned
...
At the top of a loop, loop-assigned variables need to be marked as not
definitely unassigned, otherwise we will give incorrect results for
code like this:
```dart
f() {
late int x;
bool firstIteration = true;
while (true) {
if(firstIteration) {
x = 0;
firstIteration = false;
} else {
print(x); // BOGUS ERROR: x definitely unassigned
}
}
}
```
Previously, we were handling this by calling `joinUnassigned` at the
bottom of `removePromotedAll`, but it's simpler to just mark these
variables as not-unassigned while discarding promotions. This change
will make the implementation more closely match spec changes I'll be
making shortly.
Change-Id: If50e28d20a75730aa5187a62ae5cac8690b0dfaf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152861
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-06-30 02:46:26 +00:00
Sam Rawlins
d022d4c9e1
Migrator: Fix if-null promotion with GLB
...
Fixes https://github.com/dart-lang/sdk/issues/42375
EdgeBuilder wishes to do its own GLB type-joining, as does FlowAnalysis.
When FlowAnalysis pushes a promotion in ifNullExpression_rightBegin,
and then in write, and then pops those two promotions to join them in
ifNullExpression_end, EdgeBuilder is not given a chance to make its
own GLB node. Instead promotion never happens: the DecoratedType which
is the variable's type is promoted to non-nullable, for the left side.
The DecoratedType for the right side expression is not considered
non-nullable, so the FlowAnalysis.join will always fail to promote.
TypeOperations.adjustPromotedTypes solves this. It is a no-op in all
implementations except in EdgeBuilder.
Additionally FlowAnalysis.write's promotion fails for the same reason:
the only type of interest is the declared type made non-nullable, and
no matter what, the writtenType is not a subtype of this.
TypeOperations.forcePromotion solves this. It is a no-op in all
implementations except EdgeBuilder.
Change-Id: Iba6b9a69583af8fe1aa23124c7d66047acfff495
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152104
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-06-25 21:09:12 +00:00
Mayank Patke
3b67681bcc
[dart2js] Clean up (pre-)NNBD unit test configurations.
...
Change-Id: Ife85aafa90b1b0347fabb6e95f3d6c00c5307cd2
Bug: https://github.com/dart-lang/sdk/issues/42063
Fixes: https://github.com/dart-lang/sdk/issues/42063
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152440
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-06-25 18:44:32 +00:00
Konstantin Shcheglov
a1fc2ea80c
Make variables assigned in a loop not definitely unassigned anywhere in the loop.
...
Bug: https://github.com/dart-lang/sdk/issues/42301
Change-Id: I75962b976427cef7f40025f1dcd9f27400306825
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151047
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-15 17:29:05 +00:00
Konstantin Shcheglov
24852421e2
Change method override inference to use combined member signature.
...
https://github.com/dart-lang/language/pull/975
Change-Id: I5cec14a384b124a29dcd5adac0f0be6e5214cc9e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151044
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-12 18:59:28 +00:00
Konstantin Shcheglov
97e291ba9f
Mark any variables assigned in the body of try/catch not definitely unassigned in catch.
...
Bug: https://github.com/dart-lang/sdk/issues/42235
Change-Id: Iad3792bef1dc8f468d8b9e7ec729e1cbdf6c946a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150600
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-10 16:17:37 +00:00
Joshua Litt
20faaa5d94
[dart2js] Move dart2js unit tests to pkg/compiler/test.
...
Change-Id: Ib18f554c1076f27a3f7c0df5a36410da41a1f467
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148784
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-28 18:51:11 +00:00
Konstantin Shcheglov
bb0b3cf23a
AllowedExperiments and parser.
...
Change-Id: I9b05c1b9a58ac974dd4edf02db5ffb0d51d54484
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148621
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-20 15:33:31 +00:00
Johnni Winther
f4f0ba4b36
[cfe] Update id-tests post unfork
...
These were for some reason not updated by the update_all script on the
first run.
Change-Id: I49dc1f5524c120947a971356548755325c63e8d2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147360
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-05-08 17:25:41 +00:00
Konstantin Shcheglov
0662b64697
Test that demotion to NonNull via assignment works.
...
This is the second part of the referenced issue.
Practically, we don't do anything special during demotion, we merely
demote when write T to such type S, that T <: S. This S must be a
type of interest (tested or declared). If it happens to be nullable,
and T < NonNull(S), we will promote to NonNull(S).
Bug: https://github.com/dart-lang/sdk/issues/40011
Change-Id: I254b4bfbbfad47fa2c2811def864c8ce0419b7c9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145740
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-01 16:55:53 +00:00
Konstantin Shcheglov
cf3a034210
Implement promotion via initialization in flow analysis.
...
Change-Id: I10a5f6bfeb5a05dd144db5212c9f31796f5a2385
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145502
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-30 16:26:27 +00:00
Konstantin Shcheglov
d131ea4e13
Add Variable type parameter to VariableModel.
...
So, we can use exact type for TypeOperations, and it will be convenient
for implementing promotion via initialization.
R=paulberry@google.com
Change-Id: I5b1243d5a4ac95f92ee1d08e6ed64be09e8c8f53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145306
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-29 15:08:23 +00:00
Konstantin Shcheglov
eada4d8d65
Implement Factor in flow analysis.
...
Bug: https://github.com/dart-lang/sdk/issues/40014
Change-Id: I8d21d3c3368495d9d0dbb1cd52317b053657a176
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144804
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-04-27 18:47:08 +00:00
Johnni Winther
3f18d37333
[cfe] Implement NNBD_TOP_MERGE update
...
Change-Id: I6b204b5d7def6a9d1dd4709e47f95eb102741489
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144763
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-04-27 16:28:08 +00:00
Joshua Litt
32c3a2cde7
[dart2js] Rebase nnbd expectations for 3 tests.
...
cfe_constant_test
inlining_test
jfield_analysis
Change-Id: Ib2833507f4e19f3d6a1e5055977bccc962b2d791
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144494
Commit-Queue: Joshua Litt <joshualitt@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-04-24 18:30:03 +00:00
Konstantin Shcheglov
61c8ac8b46
Issue 40088. Promote to NonNull of the declared type on assignment.
...
Bug: https://github.com/dart-lang/sdk/issues/40088
Change-Id: Icc2c720e24c2e6a85994497cd12bf34957d99d4d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144040
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-04-21 03:01:54 +00:00
Konstantin Shcheglov
7e4673f497
Check overrides using only direct superinterfaces.
...
Change-Id: Ib17c3fb18d6ec4ff4541835a78c645a7b13affd2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142760
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-04-21 02:42:04 +00:00
Konstantin Shcheglov
a12c36dd97
Issue 41557. Support for breaks out of labeled blocks.
...
Bug: https://github.com/dart-lang/sdk/issues/41557
Change-Id: Ica1c6c04acf600cb20d11a195d6c6da73197733c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/143889
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-20 16:30:56 +00:00
Konstantin Shcheglov
4814f000de
Promote to NonNull of a tested type on assignment.
...
Bug: https://github.com/dart-lang/sdk/issues/39562
Change-Id: Id55224199f64a8f01b14937ddda6963aff24140c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/143661
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-18 02:02:57 +00:00
Konstantin Shcheglov
44455a811c
Update flow analysis unit test to declare variables assigned instead of write.
...
R=paulberry@google.com
Change-Id: I50f886d79eb6a916d3570fde931ab8fd85f76c6d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/143623
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-16 00:09:33 +00:00
Johnni Winther
dc97454b63
[analyzer,cfe,dart2js] Add pretty printing to id testing
...
Adds support for pretty printing verbose annotations.
Adds support for force updating annotation texts useful for applying
the pretty printing to valid annotations.
Change-Id: I8fe9b6d2f8198bd5e160854053c8d964ef832a8d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129710
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-04-14 13:24:09 +00:00
Konstantin Shcheglov
f290ae0696
Issue 40554. Apply NORM and TOP_MERGE only when one of the interfaces is not syntactically equal.
...
Bug: https://github.com/dart-lang/sdk/issues/40554
Change-Id: Ib96873a825a5a33142655231881562e278b586d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/143249
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-13 16:42:13 +00:00
Sam Rawlins
2c420267b7
analyzer: Do not allow errors to be ignored inline. Fixes #27218
...
Change-Id: If37dabba3ec18a9f79f44c4ea38d6920a4013019
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140142
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
2020-04-10 17:16:24 +00:00
Konstantin Shcheglov
fa3a4eb956
Update TOP_MERGE according to the spec change.
...
Bug: https://github.com/dart-lang/sdk/issues/41412
Change-Id: If61638188e594cb1b4272e0011ff0ebd5dbb2772
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142942
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-04-09 16:28:09 +00:00
Konstantin Shcheglov
dcdc71d763
Report CONFLICTING_GENERIC_INTERFACES using ClassHierarchy.
...
Change-Id: Ib5d79403358efffd5365ac4931c3163d746d933a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142567
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-04-07 15:50:28 +00:00
Johnni Winther
46bb15edf3
[cfe] Fix inheritance test data discrepancies.
...
Change-Id: I367aace60324a7755f795d2f24aaf0d138bc8d59
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/141602
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-04-02 13:14:39 +00:00
Johnni Winther
d68f552e70
[analyzer,cfe] Handle (un)assigned state in try-statement
...
This handles (un)assigned state in try-statement that do not
complete normally. In this case we could create a variable model
for an unreachable state that would be both assigned and unassigned
leading to an assertion failure.
Closes #41284
Change-Id: Id4c7689bc7c614338af3542eb342c964696fca1e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/141981
Auto-Submit: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-04-01 15:46:15 +00:00
Konstantin Shcheglov
c957128c7e
Document differences in inheritance tests between CFE and analyzer.
...
Change-Id: I812a268990f8db844b03f06545804ce60e7164e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/141380
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-03-30 17:34:08 +00:00
Konstantin Shcheglov
8120ee57d2
Merge types during instance member inference.
...
Change-Id: If3f252d1c031fcb5219e485ac7a053186e6b950c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/141207
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-03-27 16:22:26 +00:00
Konstantin Shcheglov
216d98ad2c
Use NNBD_TOP_MERGE to combine signatures of the inherited members.
...
Initial: https://dart-review.googlesource.com/c/sdk/+/133041
Reverted: https://dart-review.googlesource.com/c/sdk/+/133086
Instance inference is not supported yet in this CL, will continue
in following CLs.
Change-Id: I72de01180b0624eeafc03bfe415ed3d928f1110f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/133167
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-03-26 21:13:12 +00:00
Johnni Winther
62f84880ef
[cfe] Report error on missing return from non-nullable function
...
Closes #40520
Closes #40948
Closes #40425
Change-Id: I0aa3cfa51b410c90dd0bea963846eeb6b2e73efb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140540
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-03-24 08:21:36 +00:00
Johnni Winther
9605fc367f
[cfe] Report error on required named parameters overriding optional named parameters
...
Closes #40950
Change-Id: I5d829affd3df9ca66d5a1b632f364779bdcfb2ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140541
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-03-24 06:22:16 +00:00
Konstantin Shcheglov
5e4f28b900
Use ClassHierarchy for computing implemented interfaces.
...
Change-Id: Ie7acf61f9a29d59cc1416dea85a6adb7c534b8c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140703
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-03-23 22:00:37 +00:00
Konstantin Shcheglov
6b7d7aa2c1
Type Function should be excluded from extended / implemented / mixed types.
...
Change-Id: If225400a976657f042856bfdaf95b285f98cebb4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-03-23 20:35:37 +00:00
Johnni Winther
0e75a0650f
[cfe] Handle mixing in Function
...
Closes #35477
Closes #35573
Change-Id: I0612641108caf1fa08da1aae7684e7f33dfe3b46
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140402
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-03-23 09:56:30 +00:00
Konstantin Shcheglov
bdf1454357
Consider FunctionType(s) with required named parameters as subtypes of legacy FunctionType(s) with named parameters.
...
Change-Id: Ic2f6b0226ec7885e45ef54053b95b84d3bbf8201
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140181
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-03-21 21:51:36 +00:00
Johnni Winther
eb4880beca
[cfe] Don't include Function in Class.supertype and Class.implementedTypes
...
Change-Id: Ib510080a331915a66a0ca51507f8f2bcd29940c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140042
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2020-03-20 16:48:09 +00:00
Johnni Winther
6dff390dec
[cfe] Compute consolidated supertypes
...
Change-Id: Ifa2303afd61af184b171f13f5959b0786273cedb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140041
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-03-19 15:26:09 +00:00
Dmitry Stefantsov
3b6935f30e
[cfe] Report NNBD warnings as errors in strong mode
...
Closes #40981 .
Bug: https://github.com/dart-lang/sdk/issues/40981
Change-Id: I95715ab973a6f09bf7f8b4e090e5a80663cd4861
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139463
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-03-19 11:26:39 +00:00
Konstantin Shcheglov
4844fa9622
Issue 40959. Support null-shorting for cascades.
...
Bug: https://github.com/dart-lang/sdk/issues/40959
Change-Id: Ia7fd153debafd13ab469bbfcc3a2d1ef3feaa5f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139865
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-03-18 07:36:36 +00:00
Johnni Winther
6c6144bb74
[cfe] Implement consolidated in ClassHierarchyBuilder
...
Closes #40414 and #40156
Change-Id: I066aa8ceef4f998230215fd9e9b446b2281cc3bc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138294
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-03-13 08:16:49 +00:00
Konstantin Shcheglov
17eec5bcde
Mark variables written anywhere as not definitely unassigned.
...
Change-Id: Ia3fa8050eca7c7523500cb63620489cecb15f6d2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139038
Reviewed-by: Paul Berry <paulberry@google.com>
2020-03-11 19:47:44 +00:00
Konstantin Shcheglov
9a0c09ecb2
Track definitely unassigned variables.
...
Change-Id: Id610a133912605f9af63222f25408942420cbf1f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138881
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-03-10 18:35:40 +00:00
Konstantin Shcheglov
24c8021f03
Replace initialize() with declare().
...
Fixes https://github.com/dart-lang/sdk/issues/38791
Change-Id: I954059160c75de91e1e32fe2f82ebfdc5569d947
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138666
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-03-09 18:24:51 +00:00
Johnni Winther
101588f0f4
[cfe] Implement legacy top merge functionality
...
+ fix getter/setter type inference
Change-Id: I9a4bed2b6a53131cbc9946bac0a01a4b15a63a91
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137922
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-03-03 12:19:09 +00:00
Johnni Winther
fbe9f6115d
[cfe] Handle Object* in NNBD_TOP_MERGE
...
Closes #40481
Change-Id: I5f1060b137e9855106873b2173930d3ebed69930
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137921
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-03-02 12:15:50 +00:00
Johnni Winther
5800997ed7
[cfe] Correctly merge nnbd signatures
...
Change-Id: I33e55f6ba4c2822c790667a06e0456410696ca04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137920
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-03-02 12:15:50 +00:00
Johnni Winther
a9162bd599
[analyzer,cfe] Implement mixed inheritance id test for analyzer
...
Change-Id: Ie4ce09b83c2a96a5ad16c60d2924f18cd90a4089
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136633
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-02-24 13:28:26 +00:00