Commit Graph

994 Commits

Author SHA1 Message Date
Dmitry Stefantsov f21d521d0e [cfe] Fix pre-inference set/map disambiguation
Closes #36377

Bug: http://dartbug.com/36377
Change-Id: I0a486f467bdc999e6188fb3206f4eed1d8ffb67a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98341
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-29 17:18:55 +00:00
Dmitry Stefantsov 6b19aa821b [cfe] Do type checks on spreads during inference
Change-Id: I9eb72681a5a019ff7f7e030cf5f500144293bd4e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98180
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-29 17:18:55 +00:00
Dmitry Stefantsov 1a5ed8247f [fasta] Fix typos and copy-paste errors in a test case
Change-Id: I5d65f4ec44cb358767b1a8902d862dba1be1bb6e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98019
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-29 17:18:55 +00:00
Dmitry Stefantsov 584affcffa [cfe] Add initial support for 'for' and for-in elements in maps
Change-Id: I9fade4b8ac193f4d9a4df33c71447c0cb5fc3590
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98015
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-29 17:18:55 +00:00
Dmitry Stefantsov fa7e0c7531 [cfe] Add element type checks in spreads
Closes #36348

Bug: http://dartbug.com/36348
Change-Id: I2952e4430409bc84a97e611b43cf8885a5f5a6f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98003
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-29 17:18:55 +00:00
Jens Johansen 4fe2f6f349 Add more tests to the incremental compiler
Add a test that reproduces a error we had in flutter code when
for instance 51da94da76 was HEAD.

Add a test for constant sets.

Change-Id: Ibae4891623bb23b93473aae6b29387cfcb66bf3a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98340
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-03-29 12:20:12 +00:00
Jens Johansen a977273262 Re-allow the incremental compiler to load modules
This reverts commit 4d43abdd9f2f3026ccfabaa5495499b3ea220430 and adds a
fix.

Change-Id: Id80186aba02dd80171aac3843d63aa4f42c5ca17
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98017
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-03-28 12:53:01 +00:00
Dmitry Stefantsov 7b33a8fdc4 [cfe] Fix type inference in map literals with spreads
Closes #36223

Bug: http://dartbug.com/36223
Change-Id: Id274361628f5b769609ca9c9513e48dbfaa42374
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97963
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-28 12:30:41 +00:00
Dmitry Stefantsov 864b22d3ce [cfe] Add inference and type checks to if-elements in maps
Change-Id: I3cacaee173320dd52bead6688fac24e4e4a01f0f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97962
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-28 12:30:41 +00:00
Jens Johansen cf768254fd Temporarily disable 'Allow the incremental compiler to load modules'
Caused weird test failures. Disabling while investigating.

Change-Id: I566a209175a1ad6a4384ee815f54ba04bdb75570
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98120
Reviewed-by: Jens Johansen <jensj@google.com>
2019-03-28 09:59:29 +00:00
Jens Johansen 32a5fa0a83 Allow incremental compiler to just create outline
Change-Id: I996787821f01f21bb41be837e6d4c25a2114e017
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95384
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-03-28 08:44:56 +00:00
Jens Johansen 83e6e9f8e6 Allow the incremental compiler to load modules
Change-Id: I63bbbdfc94ac6ab0b7b8cce104fe38c4ba592f34
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95382
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-28 08:39:41 +00:00
Dmitry Stefantsov fbc70da0d3 [cfe] Add inference and type checks in for-elements in lists and sets
Change-Id: Ib8e85f674caf0565b25cf29642f4981a4a1534e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97934
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-26 17:23:10 +00:00
Dmitry Stefantsov 49a7fa1c11 [cfe] Add inference and type checks for if-elements in lists and sets
Change-Id: Iad4e6a6ed86e17f97f6bb7ad16f2bff20ab84fae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97925
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-26 17:23:10 +00:00
Kevin Millikin 1af9f99a5f [cfe] Compile loops in map literals
Add support for compiling for and for-in loops in map literals.  They
are lowered to block expressions.

Change-Id: I555401257ba028543310edbd0547166d7c6a26a2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97929
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-26 13:45:52 +00:00
Kevin Millikin ac21076110 [cfe] Implement compilation of loops in lists and sets
Implement the translation of for and for-in loops in non-const lists
and sets.  They are lowered to block expressions containing a loop.
It is impossible to target these loops with a break or continue
because they do not contain statements in their body.

Type inference is not yet implemented.

Change-Id: I35ff1650fde54cd376fe0b444891010435c74507
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97922
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-26 12:16:22 +00:00
Kevin Millikin e5374a688c [cfe] Add front-end support for for and for-in
In collection literals, support for and for-in in Fasta's body
builder.  They are removed when encountered during type inference and
their lowering to block expressions is not yet implemented.

Change-Id: I41e6a7a4aca7ffafdc12119e1503e9c0df5a6589
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97628
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-26 09:45:29 +00:00
Vyacheslav Egorov c9ecdabe5d Revert "Combine override checks and override-based inference in one phase"
This reverts commit 9db4119b67.

Revert "Change default of 'keepFields' in constant transformation to true"

This reverts commit b1e14cbe5f.

Revert "[fasta] Don't create forwarding stub if there's already a member"

This reverts commit 51da94da76.

These commits are reverted to unblock rolls into Flutter.

b1e14cbe5f is reverted because it contained
changes that prevented clean revert of the other CLs.

Change-Id: I8d3c00f0c1b146f4debe7f1a1a7de75be154e265
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97802
Commit-Queue: Alexander Aprelev <aam@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-03-25 19:40:26 +00:00
Dmitry Stefantsov 51da94da76 [fasta] Don't create forwarding stub if there's already a member
Change-Id: I5c7fd3ef5bfa5538f14b6b143de0f57e8dde3142
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97636
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2019-03-25 14:09:26 +00:00
Peter von der Ahé 9db4119b67 Combine override checks and override-based inference in one phase
Change-Id: I2760f72f4eaa44bd192747179e843f017db30874
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97301
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-22 08:59:48 +00:00
Kevin Millikin 0cacd6c28d [CFE] Compile if map entries in map literals
The compilation of if map entries is similar to the way that if list
and set elements are compiled.

Change-Id: I8a3a97f01a176922c8ecc9a7d8636fad18124be3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97310
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2019-03-21 11:57:10 +00:00
Jens Johansen eb344e2072 Keep live libraries and uri to source in sync
This CL removes the sources from uriToSource for libraries
the incremental compiler doesn't keep around.

This includes:
* Explicitly invalidated libraries, also if in a package.
* Transitively invalidated libraries, also if in a package.
* Libraries that are now no longer referenced in the resulting whole
  program, unless it's in a package.
* Libraries from packages that are implicitly invalidated by an
  updated .packages file (e.g. if the .packages file no longer
  reference it or reference a new version of it).

This does *NOT* include:
* Libraries from packages that are not invalidated and that are still
  mentioned in .packages, even if the actual libraries are no longer
  referenced in the resulting whole program. The reason is that these
  libraries are kept around in the incremental compiler.

Bug: 36197
Change-Id: I0ed41567ab54828585326ffd4dcb3722980bf874
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97201
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-03-21 10:08:30 +00:00
Kevin Millikin 4daa9b94ea [cfe] Compile if elements in lists and sets
If elements are compiled to if statements.  The type inference rules
including insertion of runtime checks are not yet implemented.

Change-Id: Iaa7ab709a7acacf952887b17ac1081a9fecd7cef
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97200
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-20 08:43:03 +00:00
Peter von der Ahé c9efa472da Remove instrumentTopLevelInference as it is redundant with expectation files
Change-Id: I1ce14796ba7d6976ae209f90f7c5f09226f3728e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97300
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-20 06:52:13 +00:00
Peter von der Ahé 57ac8b1ad9 Remove redundant instrumentation from tests and expectations.
Remove instrumentation for diagnostic messages, forwarding stubs and
covariance, since all this information is present in the expectation
files already.

Change-Id: Idf6622f7eddba801761e13666b470ae6dcc9d59b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97106
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-20 06:52:13 +00:00
Peter von der Ahé 6e1888af6b Circular type inference leads to InvalidType
Change-Id: I82c57a485b9293a05649b8420e7d78a2c2f922c9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97100
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-20 06:52:13 +00:00
Peter von der Ahé 479483ed13 Compute isGenericCovariantImpl in outline phase
Change-Id: I7ef6a39f66383a53c090cf5c47861cba84903271
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97084
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-20 06:52:13 +00:00
Kevin Millikin 9aea5536fb [cfe] Initial support for compiling if in collections
Support compiling if elements and map entries by constructing
IfElement or IfMapEntry when they are seen.  There is no support for
lowering them to block expressions yet.

Change-Id: I74c2492fefc9703e9e2f639baad7f737bbe63721
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96786
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-14 10:08:36 +00:00
Kevin Millikin afb459f7fa [cfe] Iterate map entries in map spreads
There was a missing call to the getter Map.entries in the translation
of map spreads.  Fixes https://github.com/dart-lang/sdk/issues/36173

Change-Id: I211a61173c383f1c64032eb04491d03e4331cc9a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96780
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2019-03-13 12:13:52 +00:00
Peter von der Ahé da3c23bdaa Test override-based inference when inheriting conflicting types
Change-Id: If7c1b0bf3111b05c5e2b083da749453a4ba9e675
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96648
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-13 06:46:21 +00:00
Peter von der Ahé 68aeb5cec2 Tweak error messages related to inference and overriding.
Change-Id: I216da55c0b5a6c6cc5b6f26f7a4565ae1e392c72
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96644
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-13 06:46:21 +00:00
Dmitry Stefantsov 1ce3e8af71 Reland "[cfe] Handle spread map entries of static type Null"
This is a reland of ccd2c85a1a

Original change's description:
> [cfe] Handle spread map entries of static type Null
> 
> Change-Id: I164b3fa471deb65da93ecfd60ee836ec22eb93e1
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96080
> Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

Change-Id: I4519970d8259481e137424f3506b7fb97307b14a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96134
Reviewed-by: Régis Crelier <regis@google.com>
2019-03-08 19:05:19 +00:00
Dmitry Stefantsov 9f6476392c Reland "[cfe] Compile null-aware spreads in non-const maps"
This is a reland of 3160b084d8

Original change's description:
> [cfe] Compile null-aware spreads in non-const maps
> 
> Change-Id: I22ee0b8821835bf8f2417f5fb4433898d06e7c36
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96060
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

Change-Id: I46198eb380a1813723376e894d5d32261b25dfcb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96132
Reviewed-by: Régis Crelier <regis@google.com>
2019-03-08 19:04:43 +00:00
Dmitry Stefantsov 10b38fd3f9 Reland "[cfe] Handle spread elements of static type Null"
This is a reland of 0a13ef7d03

Original change's description:
> [cfe] Handle spread elements of static type Null
> 
> Change-Id: Idec027766e77237c25fe2274426f92e24f45dec4
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96043
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

Change-Id: I222c2b153cdf0ed47a0e83aff5deca4686c10343
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96131
Reviewed-by: Régis Crelier <regis@google.com>
2019-03-08 19:04:03 +00:00
Dmitry Stefantsov c31be8ab5c Reland "[cfe] Disambiguate between sets and maps with spreads"
This is a reland of b817b274c2

Original change's description:
> [cfe] Disambiguate between sets and maps with spreads
> 
> Change-Id: I8da95178d0864dd0d59232a902cdb142be7f135e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95649
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

Change-Id: Id22b7513230f6410dc2af5146d292fc7fc47a0aa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96130
Reviewed-by: Régis Crelier <regis@google.com>
2019-03-08 19:03:27 +00:00
Régis Crelier 2b501b21aa Revert "[cfe] Disambiguate between sets and maps with spreads"
This reverts commit b817b274c2.

Reason for revert: very red bots, gardener not going to blindly approve all redness

Original change's description:
> [cfe] Disambiguate between sets and maps with spreads
> 
> Change-Id: I8da95178d0864dd0d59232a902cdb142be7f135e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95649
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

TBR=dmitryas@google.com,askesc@google.com,kmillikin@google.com

Change-Id: I008c42a5b50da98af32c923b233130920fdb2546
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96127
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-03-08 17:39:34 +00:00
Régis Crelier ff5f5de1be Revert "[cfe] Handle spread elements of static type Null"
This reverts commit 0a13ef7d03.

Reason for revert: very red bots, gardener not going to blindly approve all redness

Original change's description:
> [cfe] Handle spread elements of static type Null
> 
> Change-Id: Idec027766e77237c25fe2274426f92e24f45dec4
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96043
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

TBR=dmitryas@google.com,askesc@google.com,kmillikin@google.com

Change-Id: I1cc4656cd7ed8d360dcc4736fe510ece9ea3bf8d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96126
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-03-08 17:35:43 +00:00
Régis Crelier 1a2c93ae00 Revert "[cfe] Compile null-aware spreads in non-const maps"
This reverts commit 3160b084d8.

Reason for revert: very red bots, gardener not going to blindly approve all redness

Original change's description:
> [cfe] Compile null-aware spreads in non-const maps
> 
> Change-Id: I22ee0b8821835bf8f2417f5fb4433898d06e7c36
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96060
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

TBR=dmitryas@google.com,askesc@google.com,kmillikin@google.com

Change-Id: Icd37478bc7a3b9ccddf2daba215fa8c138063c4e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96124
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-03-08 17:19:36 +00:00
Régis Crelier afccd8cbc7 Revert "[cfe] Handle spread map entries of static type Null"
This reverts commit ccd2c85a1a.

Reason for revert: very red bots, gardener not going to blindly approve all redness

Original change's description:
> [cfe] Handle spread map entries of static type Null
> 
> Change-Id: I164b3fa471deb65da93ecfd60ee836ec22eb93e1
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96080
> Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
> Reviewed-by: Kevin Millikin <kmillikin@google.com>

TBR=dmitryas@google.com,askesc@google.com,kmillikin@google.com

Change-Id: Ia8f60993222851a73291662f75556b2e4111a6f0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96123
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-03-08 17:19:35 +00:00
Dmitry Stefantsov ccd2c85a1a [cfe] Handle spread map entries of static type Null
Change-Id: I164b3fa471deb65da93ecfd60ee836ec22eb93e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96080
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-08 15:46:31 +00:00
Dmitry Stefantsov 3160b084d8 [cfe] Compile null-aware spreads in non-const maps
Change-Id: I22ee0b8821835bf8f2417f5fb4433898d06e7c36
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96060
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-08 15:46:31 +00:00
Dmitry Stefantsov 0a13ef7d03 [cfe] Handle spread elements of static type Null
Change-Id: Idec027766e77237c25fe2274426f92e24f45dec4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96043
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-08 15:46:31 +00:00
Dmitry Stefantsov b817b274c2 [cfe] Disambiguate between sets and maps with spreads
Change-Id: I8da95178d0864dd0d59232a902cdb142be7f135e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95649
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-08 15:46:31 +00:00
Dmitry Stefantsov 52ff930338 [cfe] Desugar map spread entries in non-const map literals
Change-Id: Ie8f6cc0294888716f4e0349ba07320e684e26e1d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95640
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-08 12:08:42 +00:00
Dmitry Stefantsov 76ff150df4 [cfe] Add type inference for spreads in map literals
Change-Id: Ibe39deb9c1a022b30b70e677150925205e58d8b5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94741
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-08 12:08:42 +00:00
Kevin Millikin e3f0ca80e5 [cfe] Compile null-aware spreads in non-const lists and sets
Change-Id: I0be204a03bf4ddeb8950ec443952e9e99197b125
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95641
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-07 10:11:05 +00:00
Kevin Millikin 9d9f599ca9 [cfe] Compile spread in sets
Compile spread in sets analogously with lists.

Change-Id: Ieb3e139064a1174f7bb1c33aa82b21ca47fe768f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95620
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2019-03-06 11:37:27 +00:00
Dmitry Stefantsov 1da7c0d472 [cfe] Fix type checks in spreads within lists and sets
Change-Id: Id0eb5bc798fdd425cf1bc46d60efb3a1d5455938
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95383
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-05 19:54:11 +00:00
Dmitry Stefantsov 09a1cf67e6 [cfe] Don't replace spreads with invalid expressions after inference
Change-Id: Ie6081b1471ee8b1697fe93f8b79b630bf6577fe7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95120
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-03-05 19:54:11 +00:00
Dan Rubel e033b676dd fix parser crash in unterminated string literal inside unterminated interpolation
Fix https://github.com/dart-lang/sdk/issues/35900

Change-Id: I96d83e0c93d9e9c22d5b30048dc210672b1c003c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95043
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-05 15:35:58 +00:00