Commit Graph

8489 Commits

Author SHA1 Message Date
Konstantin Shcheglov 2d381e5ac1 Extract AstRewriteVisitor into separate library.
R=brianwilkerson@google.com

Change-Id: I5e3c646c9777f0a4d33fb5640946a981249f8b2b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111400
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-31 21:18:12 +00:00
Paul Berry c07bd65ac8 Convert driver.dart to triple-slash comment style.
Change-Id: Id2c197c92d8d0422c09ddcd3dd42fb0469fdfefa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111480
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-31 21:00:31 +00:00
Brian Wilkerson 0639908ecc Resolve call method when defined by an extension
Change-Id: Ic1bc90241207bad2c0c0338dae4b1d2f32c0b021
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111310
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-31 18:12:26 +00:00
Brian Wilkerson 782243640b Fix NPE (issue 37677)
Change-Id: Ic16317063955b1c039dfc618f26f8a3306aee411
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111460
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-31 16:20:34 +00:00
Sam Rawlins 0451f598cc Warn about UI-as-Code features in const context with low SDK constraint
Fixes #37675

Bug: https://github.com/dart-lang/sdk/issues/37675
Change-Id: I54bea3325cf2cf6b54fce20fe5e884f5416d96ab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111362
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-07-31 15:19:04 +00:00
Sam Rawlins 8293e96ba9 Fix INFERENCE_FAILURE_ON_COLLECTION_LITERAL to allow for dynamically-typed elements.
Previously, strict-inference would declare that the type of this list could not be inferred:

    var a;
    var l = [e];

Now it is considered that the types of elements of a collection are "settled",
("resolved"?) and that the collection should not be punished (marked as
inference failure) just because it contains dynamic types.

Change-Id: I5b0762420235da187e08bcf6f3fea0c0d3f2195e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111311
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-31 15:04:24 +00:00
Paul Berry 6c1523410f Flow analysis: Create definite assignment test cases.
The test cases are based on
pkg/analyzer/test/src/dart/resolution/definite_assignment_test.dart,
however those tests are removed because they exercise the old definite
assignment logic (which was never hooked up to the rest of the
analyzer, and was abandoned in favor of flow analysis).  This CL also
removes the old definite assignment logic itself.

There are two behavioral regressions compared to the old definite
assignment logic:

- Assignments inside assert bodies are erroneously assumed to always
  execute (they don't, because assertions may be disabled).

- Flow analysis does not yet understand that a function may be known
  to never return (with NNBD, such a function would have a return type
  of Never).

These regressions have been flagged with TODO comments (in the test
files assert.dart and if.dart respectively), and will be addressed in
later CLs.

Change-Id: I4a3923f667b151fe31cdcca69373ee1f8fb85607
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110400
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-07-31 13:55:54 +00:00
Brian Wilkerson 9f2845e39b Resolve index operators from extensions
Change-Id: I73c4b4a9c6c4daf13ca4c2f59640bf7c29c10028
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111318
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-31 13:40:14 +00:00
Brian Wilkerson 3fa3f0e62d Enhance the comment for TypeParameterElement.bounds to capture information from a previous CL
Change-Id: I5d736f8078f3bfadb75d8b358952e0ea29d6e696
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111381
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-31 12:40:04 +00:00
Paul Berry de013a4b51 Add an optional path parameter to parseString.
This is needed because some clients rely on the path showing up in
error messages.

Change-Id: I3746db3fc9eecef048b4e50c37b6a0b60a13dc7c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110340
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-30 21:34:56 +00:00
Konstantin Shcheglov dddd58b3d3 Report an error when extension declares a member with the same name as declared in Object.
R=brianwilkerson@google.com

Change-Id: Ic344d3c3dfe291e7f10494897160a2ed4f6c108e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111140
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-30 16:59:30 +00:00
Brian Wilkerson 645c985201 Resolve references to static members of extensions
Change-Id: Ic25906ab6a9755c4d0e3b1f63b165718c8c0d1a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111182
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-30 16:35:40 +00:00
Konstantin Shcheglov b011a80478 Extract ImportsVerifier and company.
These classes are not used anywhere outside of analyzer itself.

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

Change-Id: I98292f2c9402a806d36039c7cc54846cea8bb3c8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111264
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-30 16:11:12 +00:00
Konstantin Shcheglov 92633cf4af Tests for using getter in MethodInvocation.
R=brianwilkerson@google.com

Change-Id: If63713da5e01608b63d697360faac1fce376550b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111261
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-30 16:03:10 +00:00
Konstantin Shcheglov b21b6f7086 Set resolution types for extension override method invocation.
Both for unresolved and resolved cases.

R=brianwilkerson@google.com

Change-Id: I2cc83dabefcec5815db4d05400404c190e2309e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111180
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-30 01:03:24 +00:00
Mike Fairhurst d54ab60990 Fix TODO now that == considers NullabilitySuffix
Change-Id: Ieae40dd889cf869a1f56f5572e3187c7ab9d04db
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111101
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-07-29 20:35:53 +00:00
Mike Fairhurst 2f96be9ee3 [analyzer] Allow references of 'this' in late field initializers
Change-Id: Ic464a1d8402404ca79f2281780bf3d408bbb948a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110550
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-07-29 20:23:03 +00:00
Konstantin Shcheglov 60725e7030 Report an error when 'covariant' is used in extension.
R=brianwilkerson@google.com

Change-Id: I69e2d35bdc485448266706239e199911411f720f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 19:11:23 +00:00
Konstantin Shcheglov 1a0fe21fb2 Add ExecutableElement(s) based InheritanceManager3, and switch analyzer to it.
This reverts commit b8614ca613.

Change-Id: Ic31ee323b21311d8a89f50bcb533316eb55f75e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110941
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-07-29 19:02:24 +00:00
Brian Wilkerson a048eb9bbc Resolve operators from extensions
Change-Id: Iddc75987812be98ec0839c473cc0753a032c2095
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111060
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-29 17:42:56 +00:00
Konstantin Shcheglov bbd0bee625 Include 'exists' flag into the linked library signature.
With summary2 we store 'iSynthetic' flag with each LinkedNodeUnit.
So, when a file changes from "exists, but empty" to "does not exist",
this should change the linked library signature, so that we resynthesize
library with new data, and correctly mark the library isSynthetic.

R=brianwilkerson@google.com

Change-Id: I007353273103231bda2a07573b4a7132fc26b9f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110883
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 15:43:48 +00:00
Konstantin Shcheglov d116c67192 Fix promoteToNonNull() for the case when the type parameter bound is null.
Maybe we should change TypeParameterElement so that 'bound' is never
null, and instead returns Object.

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

Change-Id: Id7ecbe40e5bed24f0e5b4cc041a2883f5264b4c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110960
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 15:39:27 +00:00
Konstantin Shcheglov e5a6fca9a4 Use isDartCoreDouble/Int/Num in TypeSystem.
Update StaticTypeAnalyzer to no attempt to perform refinement on
extension overrides.

R=brianwilkerson@google.com

Change-Id: I314117b624b30af8857c899cdfa7f3eb36152b5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110942
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 13:27:32 +00:00
Konstantin Shcheglov 477c11aa9b Skip Never during indexing.
NeverElementImpl does not have encloding element, so cannot be indexed.

This fixes a crash that we get during codes.dart indexing, where we have
now [Never] reference.

R=brianwilkerson@google.com

Change-Id: I9e8da0b1a5e96ef2b16f920004b2df125551573f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110943
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 13:19:29 +00:00
Konstantin Shcheglov 6c56e98162 Visit extension elements and children of extensions.
R=brianwilkerson@google.com

Change-Id: I0260c0aa17b281c13ded128d8203b2f241bbad35
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110944
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 13:19:19 +00:00
Paul Berry b8614ca613 Revert InheritanceManager3 changes.
These changes were inadvertenly rolled out in a way that breaks
clients, so we need to stage them out more gradually.  See discussion
at
https://dart-review.googlesource.com/c/sdk/+/110552/2/pkg/analyzer/lib/src/generated/resolver.dart#3768

This reverts commit 5b5ddeda92.
This reverts commit e76879acc4.
This reverts commit 27bec56744.

Change-Id: Ic80a577b1cdc4a6c89ca06afceae01af6621d3e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110841
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-07-28 13:54:09 +00:00
Konstantin Shcheglov 48ce5c2f16 Deprecate isMoreSpecificThan() and isDirectSupertypeOf().
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I57a884f411d006ed720b372826288cf39c91901e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110752
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-07-26 23:52:27 +00:00
Konstantin Shcheglov c5da55311a Fix promoteToNonNull() to support type parameters.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I89202210ee458a2a74f98d5dc09f8c2f00c98c09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110746
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-26 23:03:45 +00:00
Mike Fairhurst c27db7ce6f Preliminary work for INVALID_USE_OF_NEVER
Change-Id: Ifa37cbc7a9c36c5713591d63e241ba388214d7d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109899
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-07-26 21:53:51 +00:00
Konstantin Shcheglov e76879acc4 Add 'inheritanceManager' to LinterContext.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I3cb4061afe1d2330494ac90c961e26c468eb5c51
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110761
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 21:35:26 +00:00
Konstantin Shcheglov d60345a77b Move import directive prefix offset into informative data.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: If0fb1a744eaa94fef6ab6302f393e6cd3a0cf18b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110745
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 20:43:16 +00:00
Brian Wilkerson d2f1dde3c7 Merge two codes, improve some messages, and general code cleanup
In retrospect I probably should have made this three separate CLs, and
I'm happy to go back and do so if you'd prefer.

Change-Id: I816bbbc16794c86129c9b6501db4a5dce2a8e199
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110480
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-26 18:25:21 +00:00
Brian Wilkerson a0e8fc935e Guard against NPE when checking for an implicit covariance cast in an invocation of an extension method
I'll add unit tests when the check is implemented. Note that there are
both co19 and language tests for this case.

Change-Id: Iad8499a32a6f21a58739b3179167ccce384afc86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110780
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 17:59:53 +00:00
Konstantin Shcheglov e1cb626127 Deprecate DartType.isEquivalentTo and replace with '=='.
There is just one use of it internally, in Angular, trivially fixable.

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

Bug: https://github.com/dart-lang/sdk/issues/35331
Change-Id: If46ca0e3a9faaeca4c4721de908ae675c651e4b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110701
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:40:06 +00:00
Konstantin Shcheglov c49eeadd2a Remove workarounds for http://dartbug.com/37587
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/37587
Change-Id: Ic97738593996bbd1a77b1d62a967fa703ecb6e32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110700
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:37:21 +00:00
Konstantin Shcheglov a42f5a668f Include mixin superclass constraints into superinterfaces.
https://dart-review.googlesource.com/c/sdk/+/110348 uncovered an
issue that would have failed with assert() and returned null as LUB.

Found 3 failing tests while running presubmit in google3.

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

Change-Id: I7da3ad77f71262f68c5e16ab3d27e4ff43ab438f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110684
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:24:16 +00:00
Konstantin Shcheglov 27bec56744 Add ExecutableElement(s) based InheritanceManager3, and switch analyzer to it.
Initial: 5d6bab4ed2.
Reverted: 39afa4e555
Change-Id: If611f96e6b0156ec218831dd64305e6ccf02e312
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110552
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:16:11 +00:00
Konstantin Shcheglov 1365def43f Compare nullabilitySuffix in DartType equality.
I run it over internal codebase, and don't see failures.
https://test.corp.google.com/ui#id=OCL:255219117:BASE:255312965:1561602093402:afaf19f1

Change-Id: If5a33b05cc21c25501d4d721267f38f3a58cf010
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107444
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-26 05:11:56 +00:00
Konstantin Shcheglov 86dba81dec Tests for codeRange and metadata for annotations.
Implementation for summary2.

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

Change-Id: I7d092688a35702e12509a4450cbda8f5069abcef
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110583
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-25 23:10:35 +00:00
Konstantin Shcheglov 800b734ee5 Add DartType.isDartCoreNum getter.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Iac0cfb3e3d97a0402fc52b041bac137adcc6b505
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110548
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-25 23:09:28 +00:00
Mike Fairhurst db25ef8a9c Report unnecessary !
Change-Id: Ie5fbe1e7697c2911eb9ff931bcf5d2e1cef9d171
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108944
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-25 21:45:09 +00:00
Konstantin Shcheglov de71dd4173 Rename Reference.node2 to just 'node'.
R=brianwilkerson@google.com

Change-Id: Iddb1f3154ac7b711a3b7302f85e321cd896f61e0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110544
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-25 20:46:00 +00:00
Brian Wilkerson 95dcd5c258 Fix two bugs and refactor and extend the tests
Change-Id: Ie6e1a15c5332ab437a525fa8086e4ce58f671afd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110545
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-25 20:45:55 +00:00
Konstantin Shcheglov b9ab8efca6 Implement LUB for interface types with nullability.
Using InstantiatedClass is a necessary step for fixing DartType.==
https://github.com/dart-lang/sdk/issues/37587

Change-Id: Ia959d841778b3894f50f47b7490b59b9d7ab6ba6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110348
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-25 17:48:24 +00:00
Brian Wilkerson 8fb6f68f43 Support resolution of this
Change-Id: I491703d7dd7c6eed6eebf3597ba33d10cfdb2958
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110402
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-25 17:23:38 +00:00
Brian Wilkerson fbcbb83cab Add documentation for more diagnostics
Change-Id: I57b69e5e16c7b6effb369e49556fc744976b04e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110201
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Kathy Walrath <kathyw@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-25 17:15:34 +00:00
Siva Annamalai d9287f4fe6 Reland "[dart] Enable constant-update-2018"
This reverts commit 83d2aaa072.

Reason for revert: Want to reenable const-update-2018 by default.

Original change's description:
> Revert "[dart] Enable constant-update-2018"
> 
> This reverts commit 9bbd3192f4.
> 
> Reason for revert: Reverting enabling of constant-update-2018 by default as some blocking issues were found that are breaking Flutter and preventing rolls of Dart into Flutter. Once the blocking issues are addressed and fixed this CL will be relanded.
> 
> Original change's description:
> > [dart] Enable constant-update-2018
> > 
> > Change-Id: Ib3942b4f6e336a02826305d9f81839333a5464a0
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106943
> > Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
> > Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
> 
> TBR=paulberry@google.com,vegorov@google.com,athom@google.com,vsm@google.com,aadilmaan@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Change-Id: I5796881412cec464f450ff3894ca253c58edc4a2
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109308
> Reviewed-by: Siva Annamalai <asiva@google.com>
> Reviewed-by: Vijay Menon <vsm@google.com>

TBR=paulberry@google.com,vegorov@google.com,athom@google.com,vsm@google.com,asiva@google.com,aadilmaan@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I06fbeef318706074c0efcfd42b459bf37c3c92e7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109661
Reviewed-by: Siva Annamalai <asiva@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-07-25 16:58:49 +00:00
Konstantin Shcheglov a66a42baff Test for default value referencing extension static method.
Plus implementation for summary2.
And couple other fixes around extensions.

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

Change-Id: Ibb90a6f2fc32ac4ef71023db1f51cdf8d3265022
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110363
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-25 02:59:24 +00:00
Brian Wilkerson 3e3d6473bc Perform more resolution of method invocations involving extension methods
Change-Id: Ia8060a8a595003341657422bdb68a7b53153f272
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110346
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-24 21:09:59 +00:00
Brian Wilkerson 3d5238a0ec Resolve static members of an extension within the members of the extension
Change-Id: I60687da4353ad056ff6312b07e9818b9dcfb9813
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110202
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-24 16:01:13 +00:00