Commit Graph

62721 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
Brian Wilkerson 1b2a4b8eb1 Convert some tests to DriverResolutionTest
Change-Id: I0fdccb13b95b6e5047030ba084d4358c65a8e72f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98303
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-29 17:11:38 +00:00
Aske Simon Christensen fb58826aa3 [CFE] Compensate for lowering and desugaring in spread.
This fixes a problem where a set or map in a spread would not be
properly recognized by the constant evaluator when compiling for a
VM target.

Fixes https://github.com/dart-lang/sdk/issues/36387

Change-Id: I01efc932994c143fa5a5a2fbacda21fe9206e3e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98330
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-29 16:59:06 +00:00
Johnni Winther 7ef28f0b03 Handle constant field init registration correctly.
+ avoid side-effects of checking enqueuer invariants

Change-Id: Id327371bc70e4b1b5fd4d326b8c8cf8caf50ea0e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98142
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-03-29 16:44:15 +00:00
Johnni Winther da0de0a867 Handle native field impact correctly from ir constants
Change-Id: I0393fd57b78c7cb417888ec3e0ff139b888bf3a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98322
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-03-29 16:41:55 +00:00
William Hesse 00d65e2d84 Roll co19 to revision c3b33ee
Rolls the version of co19 tests in the SDK checkout to
c3b33ee90c5ee7f88fdb0ead08fdbb40c54954d2

Change-Id: I11a181e2fb1e37ff73fb038cd51b3ad38e2a0ae9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98344
Reviewed-by: Jonas Termansen <sortie@google.com>
2019-03-29 16:22:42 +00:00
Brian Wilkerson 0560014c79 Remove unused error codes
Change-Id: I47daa6dab610af657ca781db5ca88438988c3c87
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98162
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-29 15:37:26 +00:00
Konstantin Shcheglov e8b56268ef Resolve constructor initializers and redirections.
R=brianwilkerson@google.com

Change-Id: I296fb2a7b47846481f99b5478a6cd4e383112c5d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98264
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-29 15:31:55 +00:00
Martin Kustermann c185945507 [vm/aot] Ensure global object pool is relocated by compactor and reloaded when returning from natives
When the compactor moves the global object pool the pointer in Thread
was not updated because it was in a macro list which can only hold
objects inside the read-only VM isolate.

All calls into dart need to populate PP as well as all calls returning
from C++ need to restore PP.  There was a missing case where we return
from natives and don't restore PP (i.e. not normal runtime calls).

This started to be an issue after we started moving old space objects.

Cq-Include-Trybots: luci.dart.try:vm-canary-linux-debug-try, vm-dartkb-linux-debug-x64-try, vm-dartkb-linux-release-x64-try, vm-kernel-asan-linux-release-x64-try, vm-kernel-checked-linux-release-x64-try, vm-kernel-linux-debug-ia32-try, vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-debug-x64-try, vm-kernel-linux-product-x64-try, vm-kernel-linux-release-ia32-try, vm-kernel-linux-release-simarm-try, vm-kernel-linux-release-simarm64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-linux-release-x64-try, vm-kernel-optcounter-threshold-linux-release-ia32-try, vm-kernel-optcounter-threshold-linux-release-x64-try, vm-kernel-precomp-android-release-arm-try, vm-kernel-precomp-bare-linux-release-simarm-try, vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-bare-linux-release-x64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-precomp-linux-product-x64-try, vm-kernel-precomp-linux-release-simarm-try, vm-kernel-precomp-linux-release-simarm64-try, vm-kernel-precomp-linux-release-x64-try, vm-kernel-precomp-obfuscate-linux-release-x64-try, vm-kernel-precomp-win-release-simarm64-try, vm-kernel-precomp-win-release-x64-try, vm-kernel-reload-linux-debug-x64-try, vm-kernel-reload-linux-release-x64-try, vm-kernel-reload-rollback-linux-debug-x64-try, vm-kernel-reload-rollback-linux-release-x64-try, vm-kernel-win-debug-ia32-try, vm-kernel-win-debug-x64-try, vm-kernel-win-product-x64-try, vm-kernel-win-release-ia32-try, vm-kernel-win-release-x64-try
Change-Id: I14776be226431e2c53ae888b3c98a1b8c540c4ec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98343
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-03-29 15:13:25 +00:00
Vyacheslav Egorov d23909802e [vm/compiler] Eliminate dead CatchBlockEntry Parameter-s
Parameter instructions inside CatchBlockEntry's initial definitions
are similar to Phi instructions: Parameter value at entry to the
catch would be taken from corresponding slot in the environment
attached to the instruction which threw the exception which is
being caught.

Thus similarly to Phi-s Parameter instructions can be redundant (if they
always evaluate to the same value - no matter where control arrives
from) or dead (if their value never reaches real instruction).

We already had an analysis to discover subset of redundant Parameter-s
which always evaluate to a constant value.

This CL introduces analysis to eliminate dead Parameter-s.

This should significantly reduce size of metadata generated for try/catch
and reduce spilling within functions with try/catch.

On Flutter Gallery: reduces Isolate part of snapshot by 15k (0.7%), Instructions
part is reduced by 2.7K (0.06%).

Change-Id: I345813e326152ca2ed2d4d5353bb64730d7545d4
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-android-release-arm-try, vm-kernel-precomp-bare-linux-release-simarm-try, vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-bare-linux-release-x64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-precomp-linux-product-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97110
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Aart Bik <ajcbik@google.com>
2019-03-29 14:15:42 +00:00
Erik Ernst 69790e7eb4 Updated Dart.g, tests & status files to support ui-as-code collections
Change-Id: I9ba3aa4e3ebaedee3a2cd20ccdcc533af96b9bda
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98018
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
2019-03-29 13:33:52 +00:00
Alexander Thomas 1bf1ca1933 Revert "Update dart_style to 1.2.5."
This reverts commit 611a53ee5e.

Reason for revert: Depends on changes not in the dev branch, will have to retry next week.

Original change's description:
> Update dart_style to 1.2.5.
> 
> Change-Id: I8e4949da4fb4c67ee81553ffc9af4609c2e8b83a
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98281
> Commit-Queue: Alexander Thomas <athom@google.com>
> Reviewed-by: Kevin Moore <kevmoo@google.com>

TBR=kevmoo@google.com,rnystrom@google.com,athom@google.com

Change-Id: Ic749658f82bdebfc930d81847e1efcfc45bacc48
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98342
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2019-03-29 13:15:53 +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
Bob Nystrom 611a53ee5e Update dart_style to 1.2.5.
Change-Id: I8e4949da4fb4c67ee81553ffc9af4609c2e8b83a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98281
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
2019-03-29 12:10:12 +00:00
Jens Johansen b7f69e24a2 dartdevc and bazel worker can use incremental compiler
This allows dartdevc and the bazel worker to user
the incremental compiler with kernel.
Use --reuse-compiler-result --use-incremental-compiler to run in this mode.

Change-Id: I9189ce5f1a51320d9d96e071f8c95c80fe6fca84
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95386
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2019-03-29 12:07:42 +00:00
Sergey G. Grekhov a506c708f2 [co19] DEPS updated
Change-Id: Idf7c5bab05f7247853bf3e2f2accbc96e2f8550f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98181
Reviewed-by: William Hesse <whesse@google.com>
2019-03-29 10:31:48 +00:00
Konstantin Shcheglov 9b77e4c507 Include constructors into available suggestions.
R=brianwilkerson@google.com

Change-Id: I44a9ad96f40ff1c5bd42f41bdf03defae7608360
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94980
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-29 01:26:39 +00:00
Bob Nystrom 0eb76a5b5a Move await for of null tests to a different file.
Those will be failing in 2.3, and we don't want that to make the entire
await_for_test to fail.

Change-Id: I5f81ada877a5ecef8a3034f071313a6729b53aaa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98242
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2019-03-28 23:45:29 +00:00
Sigmund Cherem 8d699db9af Update spread_collections/inference_test to use Type.== instead of identical
dart2js doesn't canonicalize types so comparing with identical causes the test
to fail.

Change-Id: I3e6f19f8ab95d949402c3bf0caf0c31cc0fccbad
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98241
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2019-03-28 21:58:49 +00:00
Brian Wilkerson edf470bf83 Initial sketch of dartdoc support
Change-Id: I1250bfd56075d6575c0f268b4e335445b13b4605
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97443
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-28 20:52:29 +00:00
Konstantin Shcheglov 1b643e5c1f Support for mixins.
R=brianwilkerson@google.com

Change-Id: I35e37863ed6ab68756669829f6ae8461e56485cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97782
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-28 19:31:13 +00:00
Vijay Menon bc0148cf87 [ddc] Skip unsupported co19 tests on ddc/ddk
Change-Id: I3a365828a6e7c0f5060238bf65eb11512b66934b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98160
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Vijay Menon <vsm@google.com>
2019-03-28 19:03:33 +00:00
Ben Konyi 15b4e57510 [ VM / Service ] Fixed failing isolate_lifecycle_test
Change-Id: I7cf18b36ccd55aeca368343a02e036f9a8ba2e0a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98221
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-03-28 19:03:32 +00:00
Brian Wilkerson 4c50d06ac5 Handle inconsistent analysis exception during a refactoring (issue 36149)
Change-Id: I94f5d16d7a3cbcf4a33892428f0dc8056dbdd318
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98200
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-28 18:33:05 +00:00
Ryan Macnak ae62f7fefe [vm, gc] Make incremental write-barrier elimination safe.
If generated code allocates an old object during concurrent marking, add this object to the deferred marking stack to be (re)scanned when marking is finalized to catch stores missed by the barrier elimination.

Bug: https://github.com/dart-lang/sdk/issues/36341
Change-Id: Ifc744fdf720446f14b68268383e1fe5c92d9b5a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97861
Reviewed-by: Siva Annamalai <asiva@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-03-28 18:00:10 +00:00
Brian Wilkerson d07e33e11f Convert more comments from block to line style
Change-Id: Ib1b2b1f6858c3c7503fd7a701b9badb9cfbfe8d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98050
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-28 17:54:00 +00:00
Brian Wilkerson 926a6c0958 Convert more comments
Change-Id: I6e198ee0809ee352038e2014a983d43b0c29101f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98048
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-28 17:52:05 +00:00
Michael Powell dfcc52f909 [vm/dart:io/fuchsia] Improve fdio_pipe_half signature, step 2.
The return value on fdio_pipe_half conflated two things: the error code
on failure (as a zx_status_t) or a file descriptor on success. This
technically worked, because they're both ints, the error code was always
negative, and the file descriptor always positive. However, the stated
return type of zx_status_t was misleading. This changes the signature
such that it always returns an actual zx_status_t, and the file
descriptor is returned through a pointer argument.

Also remove the last argument, since it was always given the same value.

This needs to be done as a soft transition because it's called from the
Dart runtime. The steps are as follows:
1. Add fdio_pipe_half2 with the new signature.
2. Update the Dart runtime to call fdio_pipe_half2.
3. Change fdio_pipe_half to be identical to fdio_pipe_half2.
4. Update the Dart runtime to call the updated fdio_pipe_half.
5. Delete fdio_pipe_half2.

This is step 2.

Change-Id: Ieac841c5f8055f34000851cef364a12b6c0aca2a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96664
Commit-Queue: Zach Anderson <zra@google.com>
Auto-Submit: Michael Powell <mikepowell@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2019-03-28 17:45:55 +00:00
Konstantin Shcheglov 1926f69e4d Include available classes when includeConstructorSuggestions is true.
R=brianwilkerson@google.com

Change-Id: I333ac2d1e19c077f31f02b2504b3041fd04acf7b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98161
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-28 17:26:55 +00:00
Brian Wilkerson d0fda82493 Clean up some of the unused task model support in test code
Change-Id: I2a70070866e38377a4dd149b6407942e3f81c92d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98049
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-28 17:13:45 +00:00
Ryan Macnak 2bc81be75a [infra] Some missing interpreter bot configurations.
Change-Id: Iaae977801450a684868794911b4df8b87d9c034f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95671
Reviewed-by: Alexander Thomas <athom@google.com>
2019-03-28 16:58:13 +00:00
Ben Konyi ac2c934563 Reland "[ VM / dart:isolate ] Added ability to set names for spawned isolates."
This reverts commit 638f13ff3d.

Change-Id: Ib5015539b1c93791c2469be6995789f8f0362806
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97845
Commit-Queue: Ben Konyi <bkonyi@google.com>
Auto-Submit: Ben Konyi <bkonyi@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-03-28 16:39:50 +00:00
Ben Konyi 380ae2ce55 [ Observatory ] Fixed links for 'part's in dart:* scripts not being created.
For example in the dart:io script, `part 'bytes_builder.dart';` would not
link to the script inset for 'bytes_builder.dart'.

Change-Id: I9252980cb2621f0bc2ea4b224209cb07dc21b896
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97848
Auto-Submit: Ben Konyi <bkonyi@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-03-28 16:35:35 +00:00
Aart Bik f29e100f42 [dart/fuzzer] Generate DartFuzz API tables automatically
Rationale:
Rather than manually constructing the API tables for DartFuzz,
this introduces a utility to generate API tables based on
the analyzer traversal of common libraries. The utility
recognizes DartTypes that are currently understood by DartFuzz
and constructs the tables organized by return type.

TBD:
DartFuzz's type system is rather simple; as this improves,
more and more methods will be accepted by the utility,
thereby increasing fuzzing coverage of our libraries.
Change-Id: Idcc607a4a592dbbf80bd79cdfec429cb397b7f68
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98041
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2019-03-28 16:31:45 +00:00
Aske Simon Christensen f0027dfea3 [CFE] JS number semantics for constant subtype checks.
Change-Id: I7c12ec41ac6bab6318f4ff52201bdf333a6b81e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98141
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-03-28 15:00:58 +00:00
Aske Simon Christensen 018fd36557 [CFE] Handle spread and if in const map literals.
Change-Id: I5250a115c1c98849a695e1d159532a49605c7caf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98014
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-28 15:00:58 +00:00
Aske Simon Christensen b5be157e09 [CFE] Handle spread and if in const set literals.
Change-Id: I7db79282c1caafb2f8f07cd676e4bbe0941cd264
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98009
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-28 15:00:58 +00:00
Aske Simon Christensen 0b57b67ecb [CFE] Move const set desugaring to constant evaluator.
To properly recognize control-flow constructs in sets, the constant
evaluator needs to get un-desugared set literals. This commit skips the
desugaring of const set literals if the constant evaluator is enabled
and adds a similar desugaring in the constant evaluator.

Doing the desugaring in the constant evaluator (which can be called
independently of Fasta) necessitates that dart:collection is indexed
in CoreTypes. We can remove this indexing again when the VM gains
native support for set constants.

Change-Id: Ibddafdcb182e4471012801745b51b529805b7b9f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98008
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-28 15:00:58 +00:00
Aske Simon Christensen 102b1fa39e [CFE] Handle spread and if in const list literals.
Change-Id: I534dcd2e02d8d70b83b55a4890fb1a6e1bf6170d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97307
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-28 15:00:58 +00:00
Aske Simon Christensen 8611cbf7df [CFE] Add constant update flag to collection tests.
Change-Id: I5bb25392fb5c836da7d83deb33ceb584a09bd2dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97939
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-28 15:00:58 +00:00
Aske Simon Christensen 665d2d0003 [CFE] Leave const collections to the constant evaluator.
Change-Id: Ib828bfa7f5695657e9e5ca67f7a9c3868a2a8fa1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97936
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-28 15:00:58 +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
Johnni Winther 05f3b12960 Add test for native declarations
Change-Id: Iea9d8d27e6fdefa6f47471a459cdb4363aab65e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98011
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-03-28 10:29:11 +00:00
Johnni Winther b978fdd142 Move experimental flag defaults to CFE
Change-Id: I9f1890f349fb19bbd792af071adc14ad4e50c364
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98010
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-03-28 10:19:51 +00:00