Commit Graph

64479 Commits

Author SHA1 Message Date
Martin Kustermann 1a196d43a7 [VM/AOT] Execute catch-entry moves in parallel (our AOT doesn't generate non-cyclic moves)
Change-Id: Idfea23f9003bc3bf4b902da315835b9ac9239f36
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96580
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2019-03-12 10:32:22 +00:00
Johnni Winther 6a2aa920cd Support pragma annotations through ir constants
Change-Id: I40b2662a00596ca9ebbb5301f99b541806e71515
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96280
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-03-12 09:28:32 +00:00
Martin Kustermann d3d077090d [VM/FrontendServer] Add 3head patch to frontend server after breaking API changes
This CL

  https://dart-review.googlesource.com/c/sdk/+/95683

changed the names of named, optional parameters of methods which are
overridden by code in flutter/engine.

Change-Id: I09d054b33297c0eaaf00928d0c69761abb57082a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96581
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2019-03-12 09:05:42 +00:00
Konstantin Shcheglov 016e3172d1 Default parameters, more metadata, import dart:core.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ibf31dcc7e0fbea3935f75c7472a23eac4c2999eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96522
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-12 00:26:01 +00:00
Martin Kustermann 853d38896e [VM/AOT] Fixes incorrect deserialization of catch entry moves
The catch entry moves are serialized in a space-efficient manner using a
suffix tree.  The deserialization logic was not always correctly reading
the right catch entry moves which can cause incorrect stack frame on
catch entries and therefore can cause crashes.

Change-Id: Ic0eda8924f80262f5477ed5606eb6f74c55242c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96104
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-03-11 22:32:31 +00:00
Mark Zhou 3cf7d6a9c7 [tests] Changing expected cast errors to type errors for collections tests
Change-Id: I0e48dba7b1612994075629c43331794bfb2d2530
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96421
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>
2019-03-11 21:56:41 +00:00
Brian Wilkerson b87c44d6b3 Generate diagnostic for non-bool conditions in if elements
Change-Id: I36bd37a3a3bdfea7ca0853d90299b5fa7d36a352
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96520
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-11 21:51:31 +00:00
Konstantin Shcheglov 74395d940f Comment out test_import_short_absolute that fails on Windows.
TBR

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ic613b1c0f1acb5fc8cac0023cfd989b2dabccf0e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96521
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-11 21:39:47 +00:00
Alexander Markov 7c1544898d [vm] Decouple flow graph building of implicit getters and setters from kernel reading
Change-Id: I514fa59e88afaa63f989b9bd373a20ea42d1d0e3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96204
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Auto-Submit: Alexander Markov <alexmarkov@google.com>
2019-03-11 20:56:21 +00:00
Ryan Macnak 57f4da318c [vm, gc] The mutator's TLAB and the interpreter's lookup cache must be visited even if the mutator is unscheduled.
Remove strange conditional the made this a no-op before heap verification.

Bug: TC-384
Change-Id: Ic5aee093c6ee37df5d61dc5c22c79097a73d43e2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96400
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-03-11 20:17:46 +00:00
Konstantin Shcheglov 15842d4583 Build more import scopes, support for enums.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I78c7a8be5b5d4ea9c9ecbc82f0c1101d7819dd30
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96460
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-11 20:16:26 +00:00
Paul Berry f2029f54cd Fix type inference of map/set literals when the context is a type parameter.
Change-Id: Ic78cfd838e7fce4f362770c0827d71b351711e57
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96340
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-11 19:48:26 +00:00
Alexander Aprelev 11b9481403 [vm/frontend] Fix frontend_server_test on Windows.
Assumption is that invalidated files are identified by uri.
Allow `file:`-uri so uri can be used for compilation/recompilation requests.

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

Change-Id: Ia976486841ddd5e5e78923467f8b2ca58396f994
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95683
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-03-11 19:20:44 +00:00
Brian Wilkerson bfb30bffe0 Fix a bug in the ConstantVerifier so that conditional elements are lazily verified
Change-Id: Ib8b8d5af3dc3a27280116d275616bf26a482bb90
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96360
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-03-11 19:14:38 +00:00
Liam Appelbe ed1f956991 Fix the abi dills download script
Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: Ic8b6cb0b1b5cb026bc06dd2ff414c026700a7c5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96133
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-03-11 18:12:09 +00:00
Jonas Termansen 8f03ae05ff [infra] Add --list-configurations option to test.dart.
This option makes the available named configurations much more discoverable.

Additionally this change expands the available named configurations by
generalizing the operating system and processor architecture patterns
in the named configurations. This change should ensure that nobody is doing
any local testing that isn't covered by a named configuration.

Change-Id: I776105955a86e9f0403ce07a3cdf971e4213646f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96320
Commit-Queue: Jonas Termansen <sortie@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2019-03-11 18:04:59 +00:00
Ryan Macnak 9faca2fa68 [vm] Document lifetime requirements of arguments to Dart_TimelineEvent.
Strengthen requirement on `label` to match Fuchsia.

Change-Id: Iebc9e0cc7be5984ad2b94dde561b76aec64fe78a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96145
Reviewed-by: Chinmay Garde <chinmaygarde@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-03-11 17:55:18 +00:00
Ryan Macnak 295ea59385 [vm] Give functions compiled through Dart_LoadCompilationTrace a non-zero usage counter.
So they survive a few code collection cycles.

Change-Id: Ie447b1bcd1f46f58b8e06f6b4f7bedfa1cf3dd77
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96203
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-03-11 17:54:39 +00:00
Jonas Termansen def0b21225 [infra] Fix test.dart saying untested configurations don't exist.
There are more named configurations in existance than the ones that actually
run on the builders.

Change-Id: Ie91e71fcec6014830fe286b33c856177fb30c2a2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96380
Reviewed-by: Alexander Thomas <athom@google.com>
2019-03-11 17:43:03 +00:00
Paul Berry abd1854176 Fix recording of map/literal context type.
Previously, we were using the storage space provided by
`InferenceContext.getContext` for two purposes: 1. to store the
inference context passed down from the parent AST node, and 2. to
store the refined inference context computed by
ResolverVisitor._computeContextType.  After type inference, the data
that remained was the refined interface context (2); however,
ErrorVerifier._checkForRawTypeErrors was expecting to be able to
retrieve the downward inference context in order to report
`HintCode.STRICT_RAW_TYPE` correctly.  This caused a failure in
test_strictRawTypes_emptyMap (in checker_test.dart).

This CL fixes the issue by storing the refined inference context (2)
in a field in `SetOrMapLiteralImpl`, so that it doesn't overwrite the
downward inference context (1).

It also fixes an issue that was previously obscured by this bug, where
we weren't copying over the downward inference context when replacing
a set literal with a map literal.  (This fix will become irrelevant
after the next breaking change release of the analyzer, when we stop
creating different objects for set vs. map literals, and simply use
the base class `SetOrMapLiteralImpl`).

In addition, ResolverVisitor._computeContextType has been renamed to
_computeSetOrMapLiteralContextType to clarify that it only computes
context information for set/map literals.

Change-Id: I62a9c4bb6fe755acf60b881948538216af81b515
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96261
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-11 16:50:43 +00:00
Konstantin Shcheglov a8b3461f2e New summaries work snapshot.
1. Extract LinkingBundleContext to store references and types.

2. Resolve and resynthesize metadata for many nodes.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I88334bd4509efe0182a4bba6a67edac99ed51886
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96262
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-11 15:21:32 +00:00
Paul Berry 9e7627b6a1 Re-land "Eliminate uses of old AST node types from pkg/analyzer/lib/src/summary"
There are two bug fixes:

- Due to dartbug.com/33441, it's possible that a set/map literal
  resynthesized from a summary will have neither its `isSet` or
  `isMap` boolean set to `true`.  We work around the problem for the
  short term assuming such literals are maps.

- The linker method ConstNode.collectDependencies hadn't been updated
  to handle the new summary nodes `makeUntypedSetOrMap` and
  `makeTypedMap2`.

This CL includes unit tests for these two bug fixes.

Original change description:

> Eliminate uses of old AST node types from pkg/analyzer/lib/src/summary
>
> Change-Id: Ida907040d0461d9ae723421eeac71f4e19a8d4b2
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95284
> Commit-Queue: Paul Berry <paulberry@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
> Bug:

Change-Id: Ie26be4e0e241872ef4c7e183ada1f1d6b5f6e7f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96264
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-11 14:43:22 +00:00
Brian Wilkerson 210361ae63 Move IgnoreInfo out of the task model code base
Change-Id: Ib164e66ed96325042c9ab18de6489ab2d1c700ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96263
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-11 13:20:14 +00:00
Johnni Winther 440b4cd84e Insert implicit casts when setting interface targets
This preserves the invariant that method invocations and property sets
with an interface target handle static types at the call site.

This is a prerequisite to improving dart2js with implicit checks.
With this we can mark dynamic invocations a statically safe and
discover when instance methods don't need to check parameter types.

Change-Id: Ife7a3f947952b3c1f73316b922b2aa107343068e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95400
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-03-11 13:08:34 +00:00
Alexander Thomas 567d552de8 [infra] Add versionchecker and debianpackage to test matrix
* Run Debian package creation in a Docker container.
* Upload archives from Docker host (the container lacks credentials).
* Remove BUILDBOT_BUILDERNAME environment variables from test matrix:
  They are overwritten in the recipe.

Change-Id: I90d7747e64231bdb745c85030a9cecf256adbaf0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94542
Reviewed-by: William Hesse <whesse@google.com>
2019-03-11 12:52:03 +00:00
Aske Simon Christensen 576c4c71d9 [CFE] Always clone subexpressions of unevaluated constants.
This makes the constant evaluator entirely non-destructive.

Change-Id: I0d347b51821e393e46c8d7782f0ccbc35712f0de
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96101
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2019-03-11 08:37:10 +00:00
Scott Hyndman 674fd0e060 Fixes VSCode highlighting of num.dart.
Closing backticks were required.

Closes #36146
https://github.com/dart-lang/sdk/pull/36146

GitOrigin-RevId: db9e112e92ec7de1c3f8e7ebb8e6171391853dd6
Change-Id: Idfdc28c99037bcad808dd70084057b0adf7adc6a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95983
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-03-10 20:02:52 +00:00
Konstantin Shcheglov fa90c9abe5 New summaries work snapshot.
1. Extract TokensWriter and TokensContext.

2. Type parameters for more declarations.

Change-Id: Iaeeaa5c8da98c9fa5dce65244ccb28e66d3656a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96224
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-10 17:06:28 +00:00
Brian Wilkerson ed9e70c771 Add completion support for the ui-as-code features
Change-Id: I7835e7169fc702f69f01db0dd1f598a663dff196
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96223
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-09 17:37:16 +00:00
Konstantin Shcheglov 1335296750 Move SourceLibraryBuilder builder, support for typedef(s), some type parameters.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I5c78a165d9d4c60bb268dccd4ace47985d98529c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96221
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-09 17:24:06 +00:00
Vyacheslav Egorov 9ff0a654ca Revert "Reland "[VM runtime] Dual mapping of executable pages.""
This reverts commit 6da340bf76.

Reason for revert: almost all benchmarks are now failing on Golem linux-x64 target. Flutter Golem build is broken 

Original change's description:
> Reland "[VM runtime] Dual mapping of executable pages."
> 
> This is a reland of 44186dfdcd
> 
> Original change's description:
> > [VM runtime] Dual mapping of executable pages.
> > 
> > Change-Id: Iaad78d324e25462ce951f4df26974a6a368c50b7
> > Reviewed-on: https://dart-review.googlesource.com/c/93377
> > Commit-Queue: Régis Crelier <regis@google.com>
> > Reviewed-by: Ryan Macnak <rmacnak@google.com>
> 
> Change-Id: I7a0caa078950637d9fe831732577fd2467061099
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95263
> Reviewed-by: Ryan Macnak <rmacnak@google.com>

TBR=rmacnak@google.com,regis@google.com

Change-Id: I3342de2584537269ffe9a53946bef27cb25a69fc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96161
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
2019-03-09 14:15:39 +00:00
Paul Berry 9e5cf6b09e Improve set/map/list literal type checking.
We now exclusively use StaticWarningCode.*_TYPE_NOT_ASSIGNABLE to
report static errors.
CheckedModeCompileTimeErrorCode.*_TYPE_NOT_ASSIGNABLE is reserved for
future use when #21119 is fixed.

Change-Id: I681b1253417a135272361306cb3468dd9590b17b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96200
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-09 13:43:26 +00:00
Paul Berry affcca729b Fix some tests broken by CL 94993
Some of the "regressions" in CL 94993
(73be247e12) just turned out to be test
expectations that needed to be updated.  This CL makes the following
kinds of updates to test expectations:

- Adds info:INFERRED_TYPE_LITERAL when necessary (some of the code for
  inferring the types of type literals has been generalized, so this
  info is reported more frequently than it previously was).

- Removes duplicate error:*_TYPE_NOT_ASSIGNABLE (it was previously a
  bug to report this twice; that bug is now fixed).

Change-Id: I75a6ab3c420c2aa868ec8cb203e33f76a1e57a75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96201
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-09 00:13:06 +00:00
Paul Berry f6c8468a98 Revert "Eliminate uses of old AST node types from pkg/analyzer/lib/src/summary"
This reverts commit 0b40a46ab5.

Reason for revert: Broke flutter

Original change's description:
> Eliminate uses of old AST node types from pkg/analyzer/lib/src/summary
> 
> Change-Id: Ida907040d0461d9ae723421eeac71f4e19a8d4b2
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95284
> Commit-Queue: Paul Berry <paulberry@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>

TBR=paulberry@google.com,scheglov@google.com,brianwilkerson@google.com,mfairhurst@google.com

Change-Id: Ie13d23c84ea59c60acf56fd0d73f73c91107f6ed
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96202
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-09 00:07:36 +00:00
pq 303b8bab3a fix for null_closures
Change-Id: I413b71dd1acdeaca4c4950b3e6914c1695b72018
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95981
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-09 00:02:46 +00:00
Johnni Winther 231c5c138e Create codegen work item for all members
Ensures that constants of effectively constant instance fields are
registered also with --omit-implicit-checks.

Change-Id: Icc31799f1cc5f565321c832780f30c711e9c8c50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96160
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2019-03-08 23:46:55 +00:00
Paul Berry 0b40a46ab5 Eliminate uses of old AST node types from pkg/analyzer/lib/src/summary
Change-Id: Ida907040d0461d9ae723421eeac71f4e19a8d4b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95284
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 23:22:45 +00:00
Konstantin Shcheglov 37fa71dc4e Resolve types in scopes, resynthesize some elements.
Also some very basic top-level inference: field formal initializers in
constructors, initializers of top-level variables (for now ignoring
dependencies), setter return type to `void`.

We pass 172 or 590 resynthesis tests, about 29%.

Change-Id: Id70b80ceb7c794627626a1fe94172b0e9ccdda8b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95672
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-03-08 22:55:59 +00:00
Paul Berry 9f7e11c06b Remove extraneous 3 from method name
Change-Id: I71d3cc8f96254e4f428060ecd3dead82b6d9418a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96146
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 22:11:34 +00:00
Paul Berry d4ccff7b54 Fix _inferSetOrMapLiteralType to handle a context of ? correctly.
Also add a comment explaining why it's not necessary to compute the
greatest closure (even though the spec says to do so).

Change-Id: I74f78ca3b6d43fedfaefb13f9120248eb62b283b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96142
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 21:36:21 +00:00
pq 1e1d19bb02 fix for replace_colon_with_equals
Change-Id: Ifc4f20d6de04d506b783661ce7f0dbcc01440ca9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96135
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-03-08 21:35:35 +00:00
Brian Wilkerson 04befc2ab3 Improve type inference tests
Change-Id: I8e95d906a7cf933720d7d9012f9a9b66064d0fe3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96129
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-03-08 21:17:35 +00:00
Paul Berry 73be247e12 Eliminate uses of old AST node types from pkg/analyzer/lib/src/generated
Change-Id: Icba5f914248124909e38091f846054de8924adc8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94993
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 21:04:20 +00:00
Johnni Winther 068aa0d2e7 Support eagerly initialized static fields.
Change-Id: I4265fe9bcfccc6a99627e57705868a7ee1da828d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94749
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-03-08 20:48:35 +00:00
Aart Bik e6f56a8adf [vm/compiler] first vm implementation of block expression
Rationale:
Implementation of control-flow collections is
done through the notion of block expressions.
This is a first implementation to get this
working. It takes a few shortcuts (like disabling
OSR inside block expressions for now) that may be
refined later.

https://github.com/dart-lang/language/issues/78
https://github.com/dart-lang/language/issues/47

Change-Id: I966bf10942075052fcfd9bac00298a179efc551b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94441
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-03-08 20:48:31 +00:00
pq 474e7dc865 update add await fix description
Change-Id: I482a8feed9d0b3d0f8e7914947eee21121cf574a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96143
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-03-08 20:31:15 +00:00
Paul Berry b3b9375ca7 Update comments to refer to the greatest/least closure operation.
Fixes #36129.

Bug: 36129
Change-Id: I29f1182d7071d66d7d9fb6e43b4cb544d52bd344
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96141
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 20:28:45 +00:00
Paul Berry 6387b1bc73 Clarify ambiguity handling logic in _inferSetOrMapLiteralType
Change-Id: Ibb5b66524be129bcd8cbf2453c22047631c0d8d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96140
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 20:27:14 +00:00
Paul Berry b72ab0790d Add an Iterable type to the nonstandard SDK test.
With the new "UI as code" functionality, the analyzer requires any SDK
it analyzes to contain an Iterable type.

Change-Id: Ib098b135665b970040abf9e319b93f36fe09bea8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96122
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 20:13:38 +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