Commit Graph

7128 Commits

Author SHA1 Message Date
Konstantin Shcheglov 16f07ea19e Revert "Use nullable context type for operand of null-check operator."
This reverts commit 856a270823.

Reason for revert: breaks ddc-nnbd-linux-release-chrome

Original change's description:
> Use nullable context type for operand of null-check operator.
> 
> R=​brianwilkerson@google.com
> 
> Change-Id: I463dafe91392047a6902dffa5ab937174e4d87c9
> Bug: https://github.com/dart-lang/sdk/issues/39694
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131343
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>

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

Change-Id: I0e3a16b8c06ba539fbc415029db15e889849baba
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/39694
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131461
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 21:22:38 +00:00
Konstantin Shcheglov 00a6b52587 Test that invocation of a method on a nullable interface type prefers nullable extension.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/39875
Change-Id: Iaed3d26819b05eb501c1cb91e3e339b59f3079a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131423
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 19:39:27 +00:00
Konstantin Shcheglov b5f4351060 Move ABSTRACT_SUPER_MEMBER_REFERENCE tests.
R=brianwilkerson@google.com

Change-Id: I8e2f598094cf9a6b6f6887d0216ef2802d0c56e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 19:26:16 +00:00
Konstantin Shcheglov ca31f1d8c6 Refactor FunctionExpressionInvocationResolver to support Never.
Bug: https://github.com/dart-lang/sdk/issues/40055
Change-Id: Ic53b23178441a32d9de6fe0d2b6d5f4c646de75b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131401
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 19:19:07 +00:00
Konstantin Shcheglov 2dd37b65a8 Add findPackagesFrom().
Change-Id: I33c4cc50fd01069790c1c759668d378b77e40e41
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131346
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 17:31:51 +00:00
Konstantin Shcheglov abe7c1a2c4 When NNBD, use nullable iterable type for null-aware spreads.
Bug: https://github.com/dart-lang/sdk/issues/39694
Change-Id: I15c77e63c1e80c65b06e74dca248b93e9214db63
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131345
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 17:29:21 +00:00
Konstantin Shcheglov 6f1bcee053 Extract ifNull resolution in BinaryExpressionResolver.
Change-Id: I686b031f2b614a0b14790379dbe6229ee4d135c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131344
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 17:23:47 +00:00
Konstantin Shcheglov 856a270823 Use nullable context type for operand of null-check operator.
R=brianwilkerson@google.com

Change-Id: I463dafe91392047a6902dffa5ab937174e4d87c9
Bug: https://github.com/dart-lang/sdk/issues/39694
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131343
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 01:37:04 +00:00
Konstantin Shcheglov da6696ba26 Use analyzer Packages.
Change-Id: Ifd8b2bb0c446bf2f7321727bc87179152244f84b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131340
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-13 00:37:14 +00:00
Konstantin Shcheglov 04b5bd9d68 Extract null check in PostfixExpressionResolver.
R=brianwilkerson@google.com

Change-Id: I9063a3cf0dc9e0714020c468f1ceeec13e83384b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131321
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-12 23:17:34 +00:00
Konstantin Shcheglov 92546833e6 Remove packageMap and hasFlutterDependency from Workspace interface.
Change-Id: I8b5c09a0331f038d32a634ee3d1b40dc695b5351
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131282
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-12 18:01:28 +00:00
Konstantin Shcheglov 489c0be893 Extract PostfixExpressionResolver.
Change-Id: I915453f32d65f74e2ec12dd65bd17620bbb7d4ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131220
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-12 17:53:24 +00:00
Konstantin Shcheglov bd018fbd1a Issue 39694. LHS of ?? should be inferred with a nullable context.
Bug: https://github.com/dart-lang/sdk/issues/39694
Change-Id: I481a8792b0c3587a505263f52f65e7cc4fc4f067
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131210
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-11 21:14:22 +00:00
Konstantin Shcheglov 92f14eee94 Stop passing ContextBuilder to Workspace(s).
R=brianwilkerson@google.com

Change-Id: I101a6c4cd91dcdffb9c76c88e7d6b3995f6109b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131207
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-11 19:45:12 +00:00
Konstantin Shcheglov a62aaddcf2 Use ElementTypeProvider in MethodInvocationResolver.
Change-Id: I1a1ad92e01ae52523d39ad861e7f1a41ca3c2a91
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131202
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-11 17:38:17 +00:00
Konstantin Shcheglov 33d468dceb Extract BinaryExpressionResolver.
R=brianwilkerson@google.com

Change-Id: I25ed5c2cea682cd32b324693fc0098dc724d8cb7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131203
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-11 17:30:14 +00:00
Konstantin Shcheglov a7641ad9ae Use implementation from InvocationInferenceHelper in MethodInvocationResolver.
R=brianwilkerson@google.com

Change-Id: I86e0234b4019bf3d4f9c48af70f4751899639fd4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130937
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-10 23:27:22 +00:00
Konstantin Shcheglov 763b682963 Provide packages map to PackageBuildWorkspace.
Change-Id: Ibca7748c5c1260f392e931063cd1990eb26f8117
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130934
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-10 21:51:22 +00:00
Jens Johansen 201e6a86e1 [parser] Fix 'late' used as 'var'
Fixes #39858.

Change-Id: Ic2721fc56d184b3d0ad3082a7fa9cc45d6bbf45d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129060
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2020-01-10 10:46:17 +00:00
Konstantin Shcheglov b38238888a Issue 37122. Fix for downwards inference for FunctionExpressionInvocation.
Bug: https://github.com/dart-lang/sdk/issues/37122
Change-Id: Ie24f3ed5f1d22f2c226143f183dcc004a3a5afbf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130961
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 23:41:06 +00:00
Konstantin Shcheglov 22fa09a168 Issue 40033. Fix for 'bool' context type for '!' prefix expression.
Bug: https://github.com/dart-lang/sdk/issues/40033
Change-Id: I2c9020f54f794fb7f009bec22af7753e73271c3b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130921
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 22:30:46 +00:00
Konstantin Shcheglov 30785388a6 Issue 37122. Fix inference for FunctionExpressionInvocation.
Bug: https://github.com/dart-lang/sdk/issues/37122
Change-Id: I5f8cb9a315bd1231d3cc2275067d11df02194c53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 22:00:16 +00:00
Konstantin Shcheglov 3f099b05bd Extract PrefixExpressionResolver.
R=brianwilkerson@google.com

Change-Id: Icaee778f5135a802940d925eb4ea0dbf892e164d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130886
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-09 20:57:02 +00:00
Konstantin Shcheglov 29f8e0a7bb First steps in cleaning up FunctionExpressionInvocationResolver.
There is more to do around inference, will continue in following CLs.

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

Change-Id: I7c74a7ddccfdc834883863a2a15c6028cf449f22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130825
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-09 20:19:26 +00:00
Sam Rawlins dd5fa9cf33 Do not complain about a lone unused private constructor
Change-Id: If721b2c86b8e99018a9b32992a8dab437dac865d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130821
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-09 09:58:03 +00:00
Janice Collins f55470fdaf Fix a problem where '?.call()' could propagate a non-legacy type.
BUG=https://dartbug.com/39996

Change-Id: Ifc2eb7040ba70b7cf0da392a30a25e5989c925eb
Fixed: 39996
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130581
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Janice Collins <jcollins@google.com>
2020-01-08 18:44:27 +00:00
Konstantin Shcheglov a8397d8bac Replace assertElementTypeString with assertType.
TBR, somehow I missed these invocation sites initially.

R=brianwilkerson@google.com

Change-Id: Iaf372750c5cb3b9d1912037a03092e1d487316ef
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130721
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-01-08 17:51:03 +00:00
Konstantin Shcheglov 5bfabfb4f0 Merge some resolution assertions.
Change-Id: I4a5d79d13d890acd641f302c85c7b0f463a11200
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-08 17:30:35 +00:00
Konstantin Shcheglov 1fee7f0263 Remove unnecessary casts to TypeImpl.
Change-Id: I48dcc4a448fa60551905c3d73c8df90a31230738
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130572
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-08 17:22:30 +00:00
Johnni Winther 008e6ae60b [analyzer,cfe,dart2js] Add skipMap to id-testing
This supports skipping tests per configuration, for instance to add
nnbd-only tests and skip these in non-nnbd configurations.

Change-Id: I7eaebaa16d67129ce60cffa3594c766ff5e5bc66
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130376
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-01-08 14:47:28 +00:00
Johnni Winther 64dae246db [dart2js] Use CFE constant evaluator for non-required constants
Change-Id: Id363332caf29e98307553ec048c2dea36c739d95
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129701
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-01-08 08:21:59 +00:00
Konstantin Shcheglov e85e203e73 Deprecate DartType.name
Change-Id: If3a967bba976aa78493764513edbb3d406b08d27
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130625
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-08 07:00:59 +00:00
Konstantin Shcheglov 9e7c401d4f InterfaceTypeImpl has one constructor.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Iea88ae0fa035ffa7154460ac61752cf90dc004c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130571
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-08 06:16:23 +00:00
Konstantin Shcheglov accd08fa64 Resolve with Never and Never? receivers.
Change-Id: I388c05d09238a20fc5a84503816b9102c51a573a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-08 04:07:46 +00:00
Konstantin Shcheglov b7326f2807 Fix deferredPrefix.loadLibrary() resolution to check for extra arguments.
R=brianwilkerson@google.com

Change-Id: I75cab6bf235110e32e4d9c21d656c12eb42685d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130600
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2020-01-07 22:30:19 +00:00
Sam Rawlins 6d826735af Report unused constructors
Fixes #35108

Change-Id: I639f1165ec626fc0e8eadf6fa501200ec98af053
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127205
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-01-07 21:49:59 +00:00
Konstantin Shcheglov 94b69ae149 Fix TypeParameterType.== when reloaded elements and recursive bounds.
Change-Id: I648d8461f4909660af91152c780aa6c581a20525
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130463
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-07 18:34:14 +00:00
Sam Rawlins 4c6757a9ff new analyzer compile-time error: load_library_takes_no_arguments
Fixes #38281

Change-Id: I8a626a9e006a988bcd449e6aa89338afc716ad94
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129901
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-01-07 05:20:12 +00:00
Brian Wilkerson 6e8f0e1035 Unify two diagnostics for documentation purposes and improve the highlighting range associated with them
Change-Id: I02ff33cde1d56a24b2eccf782dc8927f02746235
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130440
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-01-07 01:38:12 +00:00
Brian Wilkerson a96e0bc784 Improve the selection range for return_without_value
Change-Id: I4a1fe0c25d40e5228b2a94af25c6bc671d30a014
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130443
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-01-07 01:35:22 +00:00
Konstantin Shcheglov 39f14a000e Rewrite most getDisplayString() to ElementDisplayStringBuilder.
R=brianwilkerson@google.com

Change-Id: I500d0045873a12d550d9ffe302e066a63ba56660
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130221
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-06 16:43:40 +00:00
Sam Rawlins a325691756 analyzer: Add failing test for #38162
Also move return_of_invalid_type tests to their own file.

Change-Id: Ie02acee903dde7cc498d3ecbb1d9f5b0c1691298
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130006
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-01-06 05:15:29 +00:00
Brian Wilkerson 877d6f745d Improve the range selected for const_constructor_with_non_final_field
Change-Id: I168e92c32b581dffcad25804161b56f4d99c1dd1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130300
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-01-05 23:50:22 +00:00
Sam Rawlins b5834c4261 analyzer: Add failing test for #38200
Change-Id: I38ff8e62574ee86a859364624733a67a6f351b19
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129981
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-04 17:20:55 +00:00
Sam Rawlins bebc7d3af5 analyzer: Add a failing test for #38188
Also move tests for illegal_async_return_type

Change-Id: Icd76c1ece456470ce734df2ac6628d5aedcd6e8e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129940
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-01-04 05:21:45 +00:00
Konstantin Shcheglov 76e3faa982 Resolve MethodInvocation(s) with Never and Never? receivers.
Change-Id: I7314efe7ccc352da7a407c3a657a30cc0956580b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130180
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-04 01:41:05 +00:00
Konstantin Shcheglov be4acb4cd5 Remove duplication in checking elements in TypeNameResolver.
R=brianwilkerson@google.com

Change-Id: I36b81e80057cab05e5c12818cc19edd53f5071c8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130135
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-03 23:39:55 +00:00
Konstantin Shcheglov 4f2a9e083d Resolve MethodInvocation fully in MethodInvocationResolver.
So, it is not separated into ElementResolver and StatisTypeAnalyzer.

Change-Id: I413a71b703ab93304760e1f912c3d55585411397
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130132
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-03 21:40:19 +00:00
Konstantin Shcheglov c913b01ec0 Report error during constant evaluation for ForElement.
R=brianwilkerson@google.com, pquitslund@google.com

Change-Id: Ic87094ed1dcfb4e630e3e62b9ed7e7ec8feab2c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130133
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-01-03 21:18:59 +00:00
Konstantin Shcheglov 3e961f4e91 Stop using assertHasTestErrors() where possible.
R=brianwilkerson@google.com

Change-Id: I0ab8d2afd27c3a18d4fd49cb0e3864078cc163ae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130121
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-01-03 16:12:49 +00:00