Johnni Winther
0a9e57419b
[kernel] Make verbose qualified names conditional in toStringInternal
...
Including the library name/uri in types and member names makes these
unreadable in most cases. This changes that default toStringInternal
to omit the library name/uri but supports a verbose mode that includes
the library name/uri for debugging the rare occasions where they matter.
Change-Id: I783e8bd0ac5d2f19c3051e8e7f226b240c8d1bc8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/141546
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-03-30 08:41:15 +00:00
Dmitry Stefantsov
dea82cc39a
[cfe] Make instantiation-to-bound algorithm NNBD-aware
...
Closes #40764 .
Bug: https://github.com/dart-lang/sdk/issues/40764
Change-Id: Ia9eff062f54632edbdb26937879742d7a813a07c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139643
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-03-20 09:03:41 +00:00
Dmitry Stefantsov
928f9fc932
[cfe] Remove flag --force-nnbd-checks
...
The checks are now always enabled for the "non-nullable" experiment
Closes #40980 .
Bug: https://github.com/dart-lang/sdk/issues/40980
Change-Id: I32a141a93f0ba86ebdab554e1f312c2147927993
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139440
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2020-03-16 15:01:38 +00:00
Johnni Winther
e865bd89d1
[cfe] Normalize nullabilities in opt out libraries
...
Closes #40526
Change-Id: Idf40bd430fad0f08d7cc117f988bfc5e2b432a46
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139200
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-03-12 21:58:17 +00:00
Johnni Winther
ae2a25c537
[cfe] Handle FutureOr in late lowering
...
Closes #40783
Change-Id: Ia3afff050df8719bd7574c753639cde1ca321eff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138930
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-03-12 21:55:46 +00:00
Dmitry Stefantsov
029c8f1cee
[cfe] Use Supertype instead of InterfaceType in ClassHierarchyBuilder
...
Change-Id: I1a11ce32237480c0eddf50a7a86cd56b89116e77
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138801
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-03-09 12:57:17 +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
60582b3d7a
[cfe] Handle future or fields
...
Change-Id: Ie915ca0824f983966e5017e899a02d50ad14b091
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136978
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-02-26 09:53:30 +00:00
Johnni Winther
aa31a9162b
[cfe] Support constant evaluation in agnostic mode
...
Change-Id: Ia33ea19a091b1172eb9b4125f5f30a625886d34e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136632
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-02-24 13:29:05 +00:00
Dmitry Stefantsov
59045afd1d
[cfe] Remove unnecesary uses of SubtypeCheckMode.ignoreNullabilities
...
Change-Id: I8b64ca39e7a153141885d428fc5bd95e446fcb49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135640
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-02-18 12:28:29 +00:00
Dmitry Stefantsov
fd992e423e
[cfe] Normalize supertypes before nnbd-top-merging them
...
Closes #40454 .
Bug: http://dartbug.com/40454
Change-Id: Ia255c99c937a04876e04a0f0f5935147e55fbd35
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134842
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-02-07 18:14:40 +00:00
Dmitry Stefantsov
535ee87c21
[kernel] Add NORM implementation
...
Change-Id: I6292a4247ed0c418f2d3d6fa841ed086894c31c9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134335
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-02-07 15:00:24 +00:00
Johnni Winther
4d32ec8d21
[cfe] Non-nullify legacy types in opt-in libraries
...
+ preserve promotion for synthetic variables.
Closes #40255
Change-Id: I2ebe43c31a05ff0121d971205bf8ff5f0e084113
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134161
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-02-03 14:52:55 +00:00
Johnni Winther
96a8282cd9
[cfe] Use structural equality for generic function types
...
Change-Id: Iecff57779243e042c5e9cad96c96139da9d93380
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129719
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-01-07 07:52:32 +00:00
Dmitry Stefantsov
01a8d76307
[cfe] Fix compiler crashes on for-in iterables with Null type
...
Closes #39817 .
Bug: http://dartbug.com/39817
Change-Id: Id60a3d35d73880c68e6a73adffd4c8c96e9b49fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128664
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-12-18 15:14:21 +00:00
Johnni Winther
818ec6db92
[cfe] Implement nnbd-top-merge
...
+ and use nnbd-top-merge and legacy erasure in hierarchy computation
Change-Id: I4bf06ce8d3c68a9926865ebf84b24b4029828d73
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128065
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-12-13 17:19:59 +00:00
Dmitry Stefantsov
47a9ebea76
[cfe] Make API of as-instance-of and legacy LUB/GLB library-specific
...
Change-Id: I1991c66e654ef537243d9f25f17070acbfa13af9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126380
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-12-05 13:32:28 +00:00
Dmitry Stefantsov
1f382890a7
[cfe] Make inference NNBD-aware
...
Change-Id: I7a793c87b00c97a7d4b05ba94116215d8f6d2a89
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125970
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-11-22 12:09:14 +00:00
Dmitry Stefantsov
3ed0ce2419
[cfe] Reuse nullability modifier when creating a copy of a type
...
It's a part of internal cleanup of pkg/kernel and pkg/front_end. The
nullability modifier is reused whenever a type object is created as a
(potentially modified) copy of another type object.
Change-Id: I9d09a744281e33814289a4f4dd65c764a7905eff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125260
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-11-21 16:00:25 +00:00
Johnni Winther
129565a71d
[kernel] Handle property invocation in MethodInvocation.getStaticType
...
Change-Id: I4a1ecdb9842f4f189be67e5f5d1b99ddb40d41da
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125202
Reviewed-by: Jens Johansen <jensj@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-11-18 10:15:08 +00:00
Dmitry Stefantsov
b4554c1215
[cfe] Make nullability a required parameter for types
...
Change-Id: Id787291294cafb15cf4ecad4a9db9da4c6066638
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124135
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Auto-Submit: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-11-07 13:24:47 +00:00
Dmitry Stefantsov
24f1f313a2
[cfe] Implement the rest of the NNBD-aware subtype relation
...
Closes #38673 .
Bug: http://dartbug.com/38673
Change-Id: I83fd29be0b6b74b8238a8a07c60d95365871c955
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124132
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-11-06 11:00:21 +00:00
Kallen Tu
94e312f7a6
Added errors for variance positions in method members.
...
When an explicitly defined type variable is used in an incorrect
variance position in a method (whether in the return or the
parameters), an error is emitted.
Change-Id: I7e49687579bb2ce6e293b052b657b98741cb04f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122740
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-10-31 18:26:43 +00:00
Dmitry Stefantsov
2897bebdef
[cfe] Resolve serialization mismatch due to variance computation
...
Change-Id: Id38c63f5bd659f21423d802fd6180aa04465712c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123406
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-10-31 10:15:29 +00:00
Kallen Tu
48fbd1aa2b
Throw exception when calling defaultDartType in VarianceCalculator.
...
Prevents the variance computation from silently, and unintentionally
work with new types that may be added in the future.
Change-Id: I94f6b25b26a919cc7cfe6e4b41030f5dd497d5d5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123463
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-10-30 17:03:14 +00:00
Dmitry Stefantsov
9910fa8454
[cfe] Implement the first part of NNBD-aware isSubtypeOf
...
This CL is a squashing of the following smaller CLs:
* https://dart-review.googlesource.com/c/sdk/+/120669/
* https://dart-review.googlesource.com/c/sdk/+/120670/
* https://dart-review.googlesource.com/c/sdk/+/121331/
* https://dart-review.googlesource.com/c/sdk/+/121381/
* https://dart-review.googlesource.com/c/sdk/+/121383/
* https://dart-review.googlesource.com/c/sdk/+/121620/
* https://dart-review.googlesource.com/c/sdk/+/121707/
* https://dart-review.googlesource.com/c/sdk/+/122144/
* https://dart-review.googlesource.com/c/sdk/+/122360/
* https://dart-review.googlesource.com/c/sdk/+/122381/
* https://dart-review.googlesource.com/c/sdk/+/122783/
* https://dart-review.googlesource.com/c/sdk/+/122787/
Change-Id: I9d850f531f0fce07055ff9b5cd39abb605752005
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122868
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-10-25 16:37:39 +00:00
Dmitry Stefantsov
23e8f2bcfa
[cfe] Verify that Null is always nullable
...
Closes #38360 .
Bug: http://dartbug.com/38360
Change-Id: I073a63bc968f1955a3c23bb8ed42e07b5955568a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120668
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-10-16 11:25:02 +00:00
Johnni Winther
72bae7be70
[cfe] Handle all bounds checks on extension methods.
...
Closes #38755
Change-Id: I3d5449950ecb3268436a3033ae16bac590a1e4b5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120790
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2019-10-09 19:50:02 +00:00
Dmitry Stefantsov
bdf6b9505e
[cfe] Ask for subtype checking mode explicitly
...
The interpretation of the subtype check result depends on the mode. In partial
NNBD mode all type errors that wouldn't be errors in non-NNBD programs should
become warnings. In full NNBD mode all such errors are errors. This CL adds
the mode explicitly to the interface of the subtype check as a parameter.
Bug: http://dartbug.com/38673
Change-Id: I14bcdd260618530cfdd8189c01abba7469a16679
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119545
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-10-02 11:30:29 +00:00
Dmitry Stefantsov
e034104f04
[cfe] Remove TypeEnvironment.*Type getters
...
The getters were returning types of undefined nullabilities. Now the
nullability-aware getters on CoreTypes should be used instead.
Closes #38224 .
Bug: http://dartbug.com/38224
Change-Id: I617a0ef8ee17ebd792c2bc1ec6477a5ee469fee1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118570
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-09-25 13:28:28 +00:00
Dmitry Stefantsov
c719d02753
[kernel] Add function to compute variance of typedef type parameters
...
Change-Id: If00727835c0008917f5ce8154b4bffafb0f31630
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/85102
Reviewed-by: Aske Simon Christensen <askesc@google.com >
2019-09-23 15:17:38 +00:00
Dmitry Stefantsov
9505a1b87f
[fasta] Add variance field to type parameters
...
Change-Id: I0c3eda4057b52853c063a682ff15fb17a595db3b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/85082
Reviewed-by: Aske Simon Christensen <askesc@google.com >
2019-09-23 15:17:38 +00:00
Johnni Winther
ab8e70addd
[cfe] Handle implicit extension access inference
...
Change-Id: Ia46976af37b586a7b88e3ff8465894e6858a6759
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115210
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-03 20:10:26 +00:00
Peter von der Ahé
76e3dfe096
Remove TypeEnvironment.legacyMode
...
Change-Id: I1bcebc66cbf4d3cb749fdc4cec382d936d4107ca
Reviewed-on: https://dart-review.googlesource.com/c/94212
Reviewed-by: Kevin Millikin <kmillikin@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2019-02-25 12:17:54 +00:00
Peter von der Ahé
ceb998ecc0
Remove unused TargetFlags
...
Change-Id: I33f1ffaec5bb9a936639424b78393cd187344ff9
Reviewed-on: https://dart-review.googlesource.com/c/94210
Reviewed-by: Kevin Millikin <kmillikin@google.com >
2019-02-25 12:17:54 +00:00
Dmitry Stefantsov
971733a08b
[kernel] Add a class to track variance of type parameters
...
Change-Id: Ib03f5be2a3a4a2e7e81bc573b7865e9cefe75e7e
Reviewed-on: https://dart-review.googlesource.com/c/85080
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Aske Simon Christensen <askesc@google.com >
2019-02-01 13:14:36 +00:00
Peter von der Ahé
f5fd281150
Prevent unsound promoted bounds from being used as arguments
...
Fixes https://github.com/dart-lang/sdk/issues/35100
Change-Id: I65f73f40d0ea970f0631599e01b177412fc32a40
Reviewed-on: https://dart-review.googlesource.com/c/90390
Commit-Queue: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-01-29 14:46:04 +00:00
Peter von der Ahé
e7495724b9
Remove TypeEnvironment.hierarchy
...
Change-Id: Ia32e2c0beb504e38f8dcb9bae33f4ee9f0e7daca
Reviewed-on: https://dart-review.googlesource.com/c/88825
Reviewed-by: Kevin Millikin <kmillikin@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2019-01-10 05:21:24 +00:00
Dmitry Stefantsov
dcc9f74a3c
[kernel] Make instantiate-to-bound implementation in Kernel private
...
Change-Id: I04983b1d99a75054dd93ec6e7131eb7f0492540b
Reviewed-on: https://dart-review.googlesource.com/c/84638
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Aske Simon Christensen <askesc@google.com >
Auto-Submit: Dmitry Stefantsov <dmitryas@google.com >
2018-11-22 11:50:27 +00:00
Dmitry Stefantsov
c560ee9399
[fasta] Remove temporary map typedefInstantiations
...
Change-Id: Ife72d3b9a2b4f150e5d4e3548409fadec1dc3146
Reviewed-on: https://dart-review.googlesource.com/c/82226
Auto-Submit: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-11-01 18:55:04 +00:00
Peter von der Ahé
a8291f767d
Update package:kernel to use FunctionType.typedefType
...
Change-Id: I1d427e4fe98eb54749f3a16027badcff945ef962
Reviewed-on: https://dart-review.googlesource.com/c/82200
Auto-Submit: Peter von der Ahé <ahe@google.com >
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Kevin Millikin <kmillikin@google.com >
2018-10-31 06:49:09 +00:00
Peter von der Ahé
1546ff6752
Add class TypeArgumentIssue
...
Change-Id: Ie46fa496c10e8c78182bb3aeeab1836464259f42
Reviewed-on: https://dart-review.googlesource.com/c/81269
Commit-Queue: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-10-25 09:07:26 +00:00
Peter von der Ahé
724573e332
Rename findBoundViolations to findTypeArgumentIssues
...
Change-Id: I10bf8afa4a7e7656725bdb5bb05aff9a1252bff3
Reviewed-on: https://dart-review.googlesource.com/c/81265
Commit-Queue: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-10-25 09:07:26 +00:00
Peter von der Ahé
94b9d05349
Move bounds checks to own file.
...
Change-Id: I0954bdb2633c0fae8d760bff05e5be8bbba59c57
Reviewed-on: https://dart-review.googlesource.com/c/81262
Commit-Queue: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-10-25 09:07:26 +00:00
Kevin Millikin
796d628ab6
Improve error reporting from Kernel scripts
...
* Ensure that we have a .dill file and it has the correct version before
we start decoding it in dump.dart.
* Throw errors, not strings. Ensure that they have a useful
toString().
* Do not print usage except when the command is invoked
incorrectly (wrong number of arguments). Once we get into the
command it's less likely that it's been invoked incorrectly and more
likely that something else has gone wrong.
Because these utilities are invoked from other scripts (like the
fasta command), printing their usage for problems other than
invoking them correctly doesn't match the way that they were invoked
and it's confusing.
Change-Id: I7832383594d2b3719a0a7a7392ba4685717a79d2
Reviewed-on: https://dart-review.googlesource.com/c/78206
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2018-10-05 12:19:01 +00:00
Alexander Aprelev
c339846594
[kernel] Move util.dart from bin to lib.
...
bin/util.dart doesn't have main() entry point and that breaks snapshot generation that is
automatically invoked by pub for all dart sources in bin/ folder.
See https://github.com/flutter/flutter/pull/19044\#issuecomment-402241782
Change-Id: Ie91549173536740992ce61d830efdfdc603c5564
Reviewed-on: https://dart-review.googlesource.com/63683
Commit-Queue: Alexander Aprelev <aam@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2018-07-04 00:50:16 +00:00
Kevin Millikin
1abf929476
Fix some uses of deprecated API
...
Fix all deprecation warnings in the kernel and vm packages.
Change-Id: I44e5b128cc8fbc1360ad4c49ecdf2aa7cfd269d8
Reviewed-on: https://dart-review.googlesource.com/46720
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Kevin Millikin <kmillikin@google.com >
2018-03-15 10:09:23 +00:00
Peter von der Ahé
fd19dfe5f5
Remove IncrementalClassHierarchy
...
Change-Id: Ie141648f8fbc97a025e90cc456265a51c3da0b04
Reviewed-on: https://dart-review.googlesource.com/41823
Reviewed-by: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2018-02-16 09:13:46 +00:00
kmillikin
b019045393
Front-end implementation of mixin type inference.
...
Infer missing type arguments to generic mixin classes in mixin
applications based on mixin supertype constraints. The implementation
directly follows the draft feature specification at
https://dart-review.googlesource.com/c/sdk/+/38940 .
Bug: https://github.com/dart-lang/sdk/issues/31984
Change-Id: I7caba037b1b0e73c44f71aaa958f3ff3e8f3c1f0
Reviewed-on: https://dart-review.googlesource.com/40661
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2018-02-14 22:43:24 +00:00