Johnni Winther
acff31ed26
[cfe] Support null-aware index access
...
Change-Id: I54b58624722845e4b008b90e675516ec274bc2da
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125960
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-11-21 14:36:30 +00:00
Kallen Tu
aa2b3a5eaa
[cfe] Inference constraint solving takes contravariance into account.
...
Implements https://github.com/dart-lang/language/issues/658 .
Change-Id: I28857c40bbc5db76f7312ed540052fed40dac4b4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125552
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-11-21 00:05:18 +00:00
Robert Nystrom
a9c1f68135
Oops, meant to commit these changes with:
...
https://dart-review.googlesource.com/c/sdk/+/125727 .
Change-Id: Id0bc8d8495a011aacd48ca18c845049d87fbfd39
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125768
Auto-Submit: Bob Nystrom <rnystrom@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Bob Nystrom <rnystrom@google.com >
2019-11-20 22:27:12 +00:00
Robert Nystrom
4ee62c3479
Migrate all of the negative language_2 tests to not be negative tests.
...
Also, remove the three negative tests under compiler/dart2js_extra.
Change-Id: I5d285d1e5ed2016de4e0236ee89fe0399fc008c8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125727
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Bob Nystrom <rnystrom@google.com >
Auto-Submit: Bob Nystrom <rnystrom@google.com >
2019-11-20 21:24:02 +00:00
Robert Nystrom
2c5705ad23
Migrate some negative tests to static error tests.
...
Note function_type_parameter_negative_test and
function_type_parameter2_negative_test were identical as far as I could
tell, so I merged them into one.
Change-Id: I00d53bf8ec9534b0c2832b0ea2cc4da442bfd683
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125556
Auto-Submit: Bob Nystrom <rnystrom@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Bob Nystrom <rnystrom@google.com >
2019-11-19 17:37:19 +00:00
Erik Ernst
626639f11f
Added nonfunction-type-alias tests, skipped for non-fasta compiler
...
Change-Id: I89ed80c973c5f2c76d534fcbd0f16d8141869757
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125601
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com >
Commit-Queue: Erik Ernst <eernst@google.com >
2019-11-19 13:46:44 +00:00
Liam Appelbe
bde92ca34a
[vm] Late modifier for final local variables.
...
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: Ia99a3441b4175bb16097766d57133c6d83a0e3f7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125542
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-11-18 23:12:48 +00:00
Kallen Tu
62c67e40dc
Added language test for reified torn-off methods with explicit variance.
...
Change-Id: I51892de84245bc31f442b5b01ab3d03ac869e86f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124913
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-11-18 22:50:55 +00:00
Kallen Tu
7c517ed007
[analyzer] Report invalid variance positions in fields.
...
Change-Id: I51a0e64907569a722fd1df58e098bb92254d53c6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125481
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-11-18 22:42:15 +00:00
Aart Bik
e12a7e0ca2
Fix for OSR assert (debug) or crash (release)
...
Rationale:
Rename traverses blocks in DOM order, not in execution order.
As a result, blocks that are directly entered from the entry
should introduce synthetic phis during OSR with non-empty stack
to make sure incoming stack values are merged properly.
https://github.com/dart-lang/sdk/issues/39193
Change-Id: Ic35961169aa535657333c2ab14fbd2c4e1f0783f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125489
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Aart Bik <ajcbik@google.com >
2019-11-18 22:33:05 +00:00
Aart Bik
29ff784ecb
[dart/compiler] Loop analysis and BCE improvements
...
Rationale:
Loop analysis did not take outer indices used as bounds
(triangular loops) into account to enhance analysis. This
left some obvious BCE optimizations on the table (mainly AOT).
Observed improvements (performance and code size):
About 5-15% performance on golem benchmarks:
mainly armv7, and TypedData*Bench
Minor overall code size reduction on flutter gallery (arm32,arm64)
Comparing ./orig32.json (old) to ./new32.json (new)
Old : 6614912 bytes.
New : 6600336 bytes.
Change: -14576 bytes.
Comparing ./orig64.json (old) to ./new64.json (new)
Old : 6459216 bytes.
New : 6458736 bytes.
Change: -480 bytes.
Similar on velocity_tracker_bench (arm32,arm64)
Comparing orig32.json (old) to new32.json (new)
Old : 804280 bytes.
New : 794552 bytes.
Change: -9728 bytes.
Comparing orig64.json (old) to new64.json (new)
Old : 705520 bytes.
New : 705312 bytes.
Change: -208 bytes.
Change-Id: Ifc3b3a378ae6fd98743c48944a86a9e90ce4da5c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117200
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Aart Bik <ajcbik@google.com >
2019-11-18 19:51:13 +00:00
Johnni Winther
4b5589e0cb
Reland "[cfe] Use StaticTypeContext for getStaticType" and more"
...
This relands commits
"[cfe] Use StaticTypeContext for getStaticType"
45033c6ad9
"[cfe] Move caching of thisType to CoreTypes"
fab25cbe0c
"[vm/bytecode] Notify static type context when entering/leaving library"
c9f88ae253
Change-Id: I407d6b0e3b3df503cedc9fcb2c834d835cf083f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125343
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-11-16 05:50:58 +00:00
Kallen Tu
a2fe9d450e
[analyzer] Report invalid variance positions in methods of a class.
...
Change-Id: I425f81e7e64a02b29e094dab53f37318a09a3c62
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125228
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-11-15 23:55:19 +00:00
Liam Appelbe
329d0913ca
[vm] Late modifier for non-final local variables.
...
I also added a test for top level late variables (they already worked).
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I6720e6476a067c7f8b21a34b87b23ab14fc866a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125224
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
2019-11-15 23:03:16 +00:00
Kallen Tu
6ec813e07a
[analyzer] Modified type inference constraints wrt variance.
...
Change-Id: I0502bad1c57af358453c78d27fe738880beb7b4e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125021
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-11-15 22:02:36 +00:00
Kallen Tu
89dc1a791e
Updated analyzer error messages in variance_multi_subclass_error_test.
...
Change-Id: If3e85c8cc6a92cdafe146769628ea5c11a5bfcab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125362
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-11-15 17:16:25 +00:00
Kallen Tu
85295c9298
[analyzer] Report incorrect type parameter superclass positions.
...
Change-Id: I6c55c32db2c275a199b2878909576f445a87977c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125009
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-11-14 19:04:44 +00:00
Samir Jindel
6c5033acac
Re-land "[vm/async] Don't add an <asynchronous gap> marker along sync-async calls."
...
Original change is in patchset 1.
The issue was that the expected "_Closure.call" frame is not always present.
Change-Id: I91116861e785a72536dde300f4771de4f6fa9d3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124988
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-11-14 15:29:16 +00:00
Liam Appelbe
a0bb025024
[vm] Late static final fields
...
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: Ic40002ab0e6ded6d525ee5e1c218a589b9406c8f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125005
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-11-13 17:56:08 +00:00
Kallen Tu
d5d889668b
[analyzer] Added variance support for upper/lower bounds.
...
Change-Id: I64f44a7068c6caa222787ccb7dfbb3ed8b5fd0fe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124420
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-11-12 22:10:56 +00:00
Kallen Tu
a65aff122d
[analyzer] Changed subtype checking for variance modifiers.
...
Change-Id: I9fa65e13d2f8611acc50fd133029c76666b8f452
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123559
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-11-12 22:09:56 +00:00
Liam Appelbe
2a9af7d953
[vm] Late modifier for non-final static fields.
...
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I8e6feef2c0ee8021bec2f849e9729516532ca91a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124641
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-11-12 17:27:39 +00:00
Régis Crelier
b5110a59a9
Revert "[vm/async] Don't add an <asynchronous suspension> marker along sync-async calls."
...
This reverts commit f4d930997b .
Reason for revert: Different tests are failing on different bots.
Original change's description:
> [vm/async] Don't add an <asynchronous suspension> marker along sync-async calls.
>
> This fixes `package:stack_trace` in the sync-start case of async/async* calls.
>
> Change-Id: I5c41a35283439f533ab19c9fd1cc542931de4b43
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124560
> Commit-Queue: Samir Jindel <sjindel@google.com >
> Reviewed-by: Martin Kustermann <kustermann@google.com >
TBR=kustermann@google.com ,sjindel@google.com
Change-Id: Ib3e1b303613f0393dac6b1b81e8d1ffb322052b8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124800
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2019-11-11 19:03:54 +00:00
Samir Jindel
f4d930997b
[vm/async] Don't add an <asynchronous suspension> marker along sync-async calls.
...
This fixes `package:stack_trace` in the sync-start case of async/async* calls.
Change-Id: I5c41a35283439f533ab19c9fd1cc542931de4b43
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124560
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-11-11 16:36:43 +00:00
Erik Ernst
7408ed4730
Added null-check selector to syntax of cascades, and test.
...
Change-Id: Iecfe33abaf440576127f9a2b536593328c906e12
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124332
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com >
Commit-Queue: Erik Ernst <eernst@google.com >
2019-11-11 15:26:53 +00:00
Leaf Petersen
8ca18f1a14
Extension method prefixed import tests.
...
Adds tests for the change to make extension members accessible even
for prefixed imports. Also tests that it is an error to import a
library with extensions as deferred without hiding the extensions.
Change-Id: I3a81c560694d34c8adbb4cc86ca9e6b8a129ae56
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124589
Commit-Queue: Leaf Petersen <leafp@google.com >
Reviewed-by: Bob Nystrom <rnystrom@google.com >
2019-11-08 23:17:08 +00:00
Alexander Markov
fa43799461
[vm/bytecode] Check number of type arguments in non-generic closures
...
Fixes https://github.com/dart-lang/sdk/issues/39283
Change-Id: I5a5fdf158c6a7ce068be36754ea0487cb754584b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124470
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2019-11-08 17:16:37 +00:00
Liam Appelbe
f4780a6450
[vm] Late modifier for non-static final fields.
...
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: Ib2b3189b20bd056b6378fa5d7a6166acef9a5c67
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124465
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2019-11-07 23:50:57 +00:00
Kallen Tu
78fac5afc1
Added additional language tests for sound variant classes extending legacy classes.
...
Change-Id: I214a8869dba527671b52c275d2302155382ba45f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124140
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-11-07 17:49:38 +00:00
Liam Appelbe
2ae9b6f653
[vm] Handle late fields with no initializer.
...
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I23526e7e8cc5928c22c53414dd201c07199b9610
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124210
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2019-11-06 23:39:22 +00:00
Liam Appelbe
c154677699
[vm] Handle trivial initializers for late fields
...
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I9db9d4815ad27f3f97d43a7a9f1fb74f08673528
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124201
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-11-06 17:46:32 +00:00
Konstantin Shcheglov
80fc4d54e5
Add a NNBD test that needs NNBD migrated SDK.
...
I tested it locally by updating `SharedOptions` to include not only
`--enable-experiment=non-nullable`, but also the forced path to NNBD
SDK: `--dart-sdk=/Users/scheglov/Applications/dart-sdk-NNBD`.
This will fail for now, I will accept current bot failures.
Change-Id: I72c9b46049de6cd25eddebd43d5c73c2fc9d7825
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124168
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-11-06 05:26:27 +00:00
Kallen Tu
11b1433756
Allow downwards inference of sound constructor calls.
...
Change-Id: Iffe2c6c052cfba40000c0325f5f1fd4ce9b51b9f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123941
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-11-06 00:30:07 +00:00
Liam Appelbe
1f8ef384d9
[vm] First pieces of late modifier implementation.
...
This implements the logic for initializing, getting, and setting
non-final instance fields that have initializers. It doesn't address
statics, finals, local variables, or the no-initializer case, and is
only implemented for bytecode.
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I3b9e2772abdc04e3bfede56d2fcf06738f234cbb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122489
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-11-05 19:48:03 +00:00
Kallen Tu
9ba71b0fdd
Modify local inference to generate constraints with respect to variance.
...
Change-Id: Ia746ea1bb37736d06a5e478f1fddf3e985eb16a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123560
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-11-05 17:54:13 +00:00
Kallen Tu
550985189c
Added errors for variance positions in fields.
...
When an explicitly defined type variable is used in an incorrect
variance position in a (final/non-final) field, an error is emitted.
Change-Id: Id1af7bdcd9adfe0c94ee76612c58ff63d011a1fb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122881
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-10-31 21:29:39 +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
Kallen Tu
44641fbd61
Added variance support in bounds inferencing.
...
Change-Id: Id3d05445491650642c40ac8d9b1ecf58162c56f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122485
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-10-30 20:35:23 +00:00
Anna Gringauze
33274b6fae
[dartdevc] removed unnecessary '.bind(this)' + added doc comments.
...
Bug https://github.com/dart-lang/sdk/issues/38896
Change-Id: If5399c19c178e7b379d7827bde1277c2bf18062e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123470
Commit-Queue: Anna Gringauze <annagrin@google.com >
Reviewed-by: Mark Zhou <markzipan@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2019-10-30 18:18:01 +00:00
Aske Simon Christensen
6812504f08
[CFE] Error when an extension operation is used in a constant expression
...
Fixes https://github.com/dart-lang/sdk/issues/39146
Change-Id: Iba733d8887b2422d692ff18e03e126baec2f3d90
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123247
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-10-30 12:23:34 +00:00
Anna Gringauze
32c212e3eb
[dartdevc] Add binding to 'this' for spread and 'yield' expressions
...
DDC does not generate correct bindings for async operations in spread,
resulting in errors on member accesses.
```
class A {
m1() => [1, 2];
Future run() async {
return [await null, ...m1()];
}
}
```
Another case with yield:
```
class C {
List<int> m2() => [1, 2];
Future run() async {
return await run3().toList();
}
Stream<int> run3() async* {
for(var k in [... await m2()])
yield k;
}
}
```
Fixes #38896
Change-Id: I6ea28080414e5843ab647516cc223fd218f8c17e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123465
Reviewed-by: Mark Zhou <markzipan@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Anna Gringauze <annagrin@google.com >
2019-10-29 21:20:26 +00:00
Aart Bik
74433e70da
[vm/compiler] fix assertion bug in SSA builder
...
Rationale:
Our "front-end" may leave CreateArray on stack
in control-flow-collection (viz. BuildMapLiteral()
and BuildListLiteral()).
https://github.com/dart-lang/sdk/issues/39071
Change-Id: I423a431aa9fac985996fb09df6a98c46aed3d696
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122960
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Aart Bik <ajcbik@google.com >
2019-10-25 20:11:17 +00:00
Erik Ernst
6826faf583
Update spec_parser.
...
Update spec_parser to enable configurableUri in deferred imports,
make cascade syntax compositional, include `extension` declarations,
add `late` as a built-in identifier, and reorder the lexical rules for
single words such that they are grouped into reserved words, built-in
identifiers, and "other words known by the grammar".
Cf. language issue #615 , #627 , #628 , #638 .
Change-Id: If60b2ba2ca0e7d4bbc9b4e886857f657fb14c809
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121991
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com >
Commit-Queue: Erik Ernst <eernst@google.com >
2019-10-25 08:57:44 +00:00
Kallen Tu
ef742aa6f0
[ddk] Modify _isInterfaceSubtype to consider variance annotations during runtime.
...
Change-Id: Idc1b553d24d76bfe52d51204aae0e0334f210fd0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121910
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Nicholas Shahan <nshahan@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-10-23 21:48:17 +00:00
Kallen Tu
4601bd7bff
Modified supertype check error message to be more descriptive.
...
Change-Id: I3068bf195eb9a746d25ac62007eaeac0296d3087
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121463
Reviewed-by: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2019-10-22 16:59:16 +00:00
Paul Berry
7d4bc6a1df
Fix handling of null awareness in cascade expressions.
...
Change-Id: Id8f9f45d04bac135c516e543542991c4cb4a0c16
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121909
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-10-17 16:09:30 +00:00
Alexander Markov
c19adc6355
[vm,aot] Fix handling of exported extensions in TFA tree shaker
...
Fixes https://github.com/flutter/flutter/issues/42845
Change-Id: If4734c16a46f74547f9fc92e4d4e26a969a9f809
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121861
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2019-10-16 21:07:26 +00:00
Mayank Patke
2baf675742
Add test demonstrating that FutureOr<A> <: FutureOr<B> =/=> A <: B.
...
Change-Id: Iedc60b57f80e77784e54b8d5ed9076c5016edd2f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121653
Commit-Queue: Mayank Patke <fishythefish@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-10-15 23:07:03 +00:00
Mayank Patke
f10d79618a
[dart2js] Use generic function type parameters in RTI subtype check.
...
Change-Id: Idb1409cd5db5e04857355cfc32a6366098aa882e
Bug: https://github.com/dart-lang/sdk/issues/38816
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121501
Commit-Queue: Mayank Patke <fishythefish@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2019-10-15 21:53:56 +00:00
Aart Bik
cf60eb48b9
[vm/compiler] reduced regression test size
...
https://github.com/dart-lang/sdk/issues/38741
Change-Id: Ief99230c19dd55fb300f94049f320f276461c86c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121409
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Aart Bik <ajcbik@google.com >
2019-10-11 21:15:20 +00:00