Commit Graph

7628 Commits

Author SHA1 Message Date
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
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
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
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
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 8430281a6b Add an implementation of ScopedVisitor.visitForEachPartsWithDeclaration.
Change-Id: I659609caa84e837801a0a38871c8bb8bb0c8948c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96121
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 18:58:58 +00:00
danrubel b2cb604b9d improve literal list/map/set control flow recovery
* new ExpectedElseOrComma parser error code
* update recovery tests to enable control flow recovery
* rework test to call parser.parseLiteralListSuffix rather than parser.parseLiteralListSuffix

Fix https://github.com/dart-lang/sdk/issues/36141

Change-Id: I5bdee19eb3828de8fbdc514a3820afaa1309df99
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-08 17:31:33 +00:00
Paul Berry 166c5e4b38 Use subtype rather than assignability to disambiguate maps/sets.
This causes the implementation to match the spec.  Also, it's an
important distinction because the analyzer allows the user to change
the meaning of assignability checks using the analysis option
"implicit_casts: false".  We don't want this option to change the
meaning of set/map disambiguation.

Change-Id: I2a870209a31b4344c0568ecfe741bf731d9489a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-08 16:20:23 +00:00
Brian Wilkerson 9a7679e9e1 Remove some of the tests of the task framework to reduce references to it
Change-Id: I1ec466bfbbcb9279169f6d076db72cece38dcd6a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96000
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 16:03:23 +00:00
Brian Wilkerson 6e359857e4 Move ConstantEvaluationTarget out of the task model
Change-Id: I961f033e871a05ba38383b79865ed2795a1d452f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95984
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 16:03:03 +00:00
Paul Berry 0e054b1c6e Some fixes for UI-as-code type inference
Change-Id: I72711aad365e95f2f1b20d7f23d7765a9581ff4f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96022
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-08 15:39:19 +00:00
Brian Wilkerson 9b0ac9ee03 Extract diagnostic tests in preparation for supporting ui-as-code features
Change-Id: Icfeb982a37b501b22189d87de42398c3f1516bee
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95961
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-08 02:10:47 +00:00
Sam Rawlins 05be278603 Split MISSING_RETURN tests
Change-Id: I001d3dd2f1c2d1200ede738aa8d838fc0924ba1a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95960
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-03-08 00:32:17 +00:00
Dan Rubel 34953ffd7d Cleanup some NNBD flags
* rename LibraryAnalyzer.isNonNullableMigrated to isNonNullableLibrary
* rename visitors isNonNullableMigrated to isNonNullableUnit

Change-Id: I46a7472a7cf91e1783b95fa4845f54b8f7f8a659
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95840
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-07 22:02:16 +00:00
Sam Rawlins bc02b6ce7d Split DEAD_CODE tests into their own file
Change-Id: I7d550ec240a10b839791cb5e00216c739af12d8c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95666
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-07 18:28:37 +00:00
Dan Rubel 6c1a05a388 update non-nullable flag in ErrorVerifier for angular plugin
Change-Id: Ib4cb1a7426a15402c85ed9ef0fa9932f4b3f40b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95860
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-07 18:17:57 +00:00
Brian Wilkerson f44fecbe39 Fix the way type arguments for iterable and map are accessed
Change-Id: I8d11fd4c10b8a5bc9fde633aba9987dba0ad59a6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95742
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-07 18:04:12 +00:00
Konstantin Shcheglov e5a833b06b Comment out test that unexpectedly passes on Windows.
TBR

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

Change-Id: I34b9816ccc5d25c6b78b7db09ab7c0d70cf9c6c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95801
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-07 17:09:18 +00:00
danrubel 309140693c Revise non-nullable flag from AstBuilder to ErrorVerifier
This is one step in refactoring non-nullable enablement

* update AstBuilder to record isNonNullable in CompilationUnitImpl
* update ErrorVerifier to pull non-nullable from CompilationUnitImpl

Change-Id: I78e5f529330f10f294ad1c1b3b7ac8b672a5ee9b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95426
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-07 13:29:45 +00:00
Brian Wilkerson a7d790bbbe Fix cast exception in resolution
Change-Id: Iefa49b509bec67522bbd916c41fc301d5d9d3811
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95705
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-06 23:57:31 +00:00
Paul Berry 0124541d5f Deprecate AST data structures that will be obseleted by the "UI as code" feature
- ForStatement and ForEachStatement will be replaced by ForStatement2.
- MapLiteral and SetLiteral will be replaced by SetOrMapLiteral.

To ease the transition, the old classes are subtypes of the new
classes, so even though the analyzer still creates instances of the
old classes, clients should be able to start referring to the new
classes in their code.  The analyzer will stop creating instances of
MapLiteral and SetLiteral when the experimental flags for the "UI as
code" feature are turned on, and will stop creating instances of all 4
classes when we bump the major version number (which should happen
sometime in March).

For visitors, we've updated the base classes with the following default methods:
  visitForStatement(node) => visitForStatement2(node);
  visitForEachStatement(node) => visitForStatement2(node);
  visitMapLiteral(node) => visitSetOrMapLiteral(node);
  visitSetLiteral(node) => visitSetOrMapLiteral(node);

So clients should be able to start revising their visitors to override
the new visit methods rather than the old ones, and the visit methods
in the base classes will automatically forward to the new visit
methods.

Change-Id: Ifde3a2aa3c8c49ce4e65dfaabf086db4dabb73f7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95665
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-06 21:43:50 +00:00
Brian Wilkerson 17bf9d13b1 Delay disambiguating maps and sets until we know whether there are any conflicts
Change-Id: If55d8ab011047107f34a05a08e60ee54eabc0b44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95668
Reviewed-by: Paul Berry <paulberry@google.com>
2019-03-06 20:47:45 +00:00
Brian Wilkerson 079309fcd6 Create curly braces when resynthesizing map and set literals
Change-Id: I918624f0a07a02c98fdd2725a18fb3fd945eca8d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95664
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-06 20:21:07 +00:00
Paul Berry 68c9909ef8 Re-apply workaround for bug fixed by closures containing type promotions in variables with inferred types.
ba5644b76c fixed an analyzer bug causing
a crash when a top level variable requiring type inference contained a
closure involving type promotion, and removed some explicit types that
were present in the analyzer to work around the bug.

Although the bug has been fixed now, the fix hasn't rolled out in a
release of the SDK.  So to avoid people seeing analysis server crashes
when editing the analyzer, I'm re-introducing the workaround.

Change-Id: I5e61345021cd33cb9ad1f017a7619815a38c6a1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95667
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-06 20:12:07 +00:00
Konstantin Shcheglov d1e60e0f3d Remove @failingTest from a test that stopped failing.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Id0fb24e38b09acce28b401d941f9ff81729b9e1b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95701
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-06 19:35:58 +00:00
Konstantin Shcheglov 90b61e2fde Start implementing linker and resynthesizing.
Change-Id: Id1ad7925082f642d5dad7b01fa02b6c8cb76cf06
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95101
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-06 17:29:29 +00:00
Konstantin Shcheglov a1226b1490 Write and read almost all nodes.
CommentReference is not done yet.

Also skipped deprecated:
  visitListLiteral2
  visitMapLiteral2
  visitSetLiteral2

And about to be deprecated?
  visitForEachStatement
  visitForStatement
  visitMapLiteral
  visitSetLiteral


  Now we can resolve, write and read back into AST everything in pkg/.
  Some statistics:

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

totalContent: 34814665 characters
totalWriteTime: 18140 ms
totalWriteBytes: 305675628
totalReadTime: 2761 ms
Change-Id: I2f92bb47c124d5ba040d8f66f762d23603c17609
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95580
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-06 17:20:49 +00:00
Paul Berry ba5644b76c Fix handling of closures containing type promotions in variables with inferred types.
Promotion analysis requires the localVariableInfo data structures to
be set; these are set by the VariableResolverVisitor.  So we need to
ensure that this visitor runs prior to type inference.

Change-Id: I579301beb101f32a1965f9eb8f07b1196d232b8e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95422
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-06 17:16:19 +00:00
Brian Wilkerson fa0d99156f Remove task model initialization
Change-Id: I1c0bfd80f94b3d0f41a73d4df0fbe1b3514697c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95562
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-06 13:43:46 +00:00
Brian Wilkerson 3712235e0e Remove the task graph and the tool that produces it
Change-Id: I8fa4b1e1646f4072fafa4521648f0ec158e4cebc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95561
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-06 13:43:37 +00:00
Konstantin Shcheglov 2448445826 Make IfStatementImpl use IfMixin.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I32f967a392a96692b6633f8ee62072404cdeaa11
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95425
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-06 02:19:54 +00:00
Paul Berry f112b672e7 Use ListLiteral.elements2 instead of ListLiteral.elements.
ListLiteral.elements will soon be deprecated.

Change-Id: If61755da665c57d4e226eaebcbe089e14208685b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95424
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-05 23:33:48 +00:00
Paul Berry 4a7f9d7c11 Remove FindNode.setLiteral method.
I accidentally left this out of 47b417c88e.

Change-Id: Ife4f3e1ceb82417ab7b9246dc4d6d36020e963c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95486
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-05 23:33:24 +00:00
Paul Berry 47b417c88e Remove FindNode methods related to AST data structures that will be removed.
ForStatement and ForEachStatement will be removed in favor of
ForStatement2.  MapLiteral and SetLiteral will be removed in favor of
SetOrMapLiteral.  This CL changes FindNode methods to match, and
adjusts callers.

Change-Id: I89990f63aa277acd31458d485e897ebf0c6cf61f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95421
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-05 20:39:41 +00:00
Konstantin Shcheglov 927e758e96 Stop using package:html in analyzer.
Related to https://github.com/dart-lang/sdk/issues/35802

R=brianwilkerson@google.com

Change-Id: I875a8dc657900137c5a7b59f2820b30a81b23405
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95480
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-05 18:36:41 +00:00
Dan Rubel 58a0487125 more tests for 34610 and 36009
https://github.com/dart-lang/sdk/issues/34610
https://github.com/dart-lang/sdk/issues/36009

Change-Id: I840047fe53fe99b0e2c8b778a84b0598334ab295
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95420
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-05 18:00:31 +00:00
danrubel 96e982f054 Improve await-outside-async error recovery
Fix https://github.com/dart-lang/sdk/issues/36048

Change-Id: If40baa44a0aefa301c042bc1002d92e577bd3b9a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95302
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-05 17:08:31 +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
Brian Wilkerson 643895befc Fix two failing tests on the bots (TBR)
Change-Id: I607ae4c59b85e8720e1efbc1d60842168318d410
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95340
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-05 00:45:35 +00:00
Konstantin Shcheglov 24d28e8f48 Write SetOrMapLiteral instead of MapLiteral or SetLiteral.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ib02e203893c3945f17c9ea20486f3dd421d8e94d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-04 22:42:16 +00:00
Brian Wilkerson c86a9ece5f First cut at upward inference for the ui-as-code features
Change-Id: I5d63e9433deed3baa1a2df44e04b57782da6c9b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95062
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-04 22:00:46 +00:00
Konstantin Shcheglov 2329fccdb9 Use visitForStatement2() and read as ForStatement2 and its parts.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I57dc7d816d9984a247b4c5e78f1f792230174604
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95281
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-04 21:52:20 +00:00
Mike Fairhurst a7a4c95df7 Summarize SetOrMapLiteral
Change-Id: Ic0356500fc9381a05bc91fb8bd9bead877de01cd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94348
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
2019-03-04 21:47:21 +00:00