Commit Graph

4554 Commits

Author SHA1 Message Date
Paul Berry 5b00611568 Revert "Add AnalysisDriver.resetUriResolution() and use it for analysis.reanalyze request."
This reverts commit 3428cc6dae.

Reason for revert: Unintentional breaking API change

Original change's description:
> Add AnalysisDriver.resetUriResolution() and use it for analysis.reanalyze request.
> 
> This CL changes "analysis.reanalyze" API. We decided to repurpose it. It was not
> used for some time now in IntelliJ, and AFAIK has never been used in VS Code.
> 
> R=​brianwilkerson@google.com, paulberry@google.com
> 
> Change-Id: I7510b0189197c9f3f848b0fc59a7b2bd22889ac7
> Reviewed-on: https://dart-review.googlesource.com/c/85523
> Reviewed-by: Paul Berry <paulberry@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>

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

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

Change-Id: I6a3e874278f4cf976363a0c7f80f7a65a0a03acf
Reviewed-on: https://dart-review.googlesource.com/c/85723
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-30 21:03:30 +00:00
Paul Berry 63770042aa Merge commit '80c23f87a3e3123d7e337c1fc8bc3b5ec49b34a0' into analyzer 2018-11-30 08:12:45 -08:00
danrubel 80c23f87a3 Update more analyzer error codes to be generated
This updates more analyzer error codes to be generated
from the corresponding CFE error code.

Several of these analyzer error codes had multiple CFE error
codes mapped to them. In these situations, new analyzer error
codes were added to match the existing CFE error codes:

* EXTERNAL_FACTORY_WITH_BODY
* EXTERNAL_FACTORY_REDIRECTION
* CATCH_SYNTAX_EXTRA_PARAMETERS

Change-Id: Ib1cbb9e04d2092e4859e2cfadbcc85e03093f808
Reviewed-on: https://dart-review.googlesource.com/c/85431
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-30 15:00:36 +00:00
pq 45bf7e9906 validate deprecated lints
Change-Id: I83d3dcd2d22d1b5fd4ef8b1af6f06288eb9cd917
Reviewed-on: https://dart-review.googlesource.com/c/85648
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2018-11-30 00:07:20 +00:00
Brian Wilkerson ec5b4bad99 Fix false positive for sdk constraints (issue 35290)
Change-Id: I64164cb97b88dcc0431237cf3a45831fb668c2c5
Reviewed-on: https://dart-review.googlesource.com/c/85620
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-29 19:12:50 +00:00
Konstantin Shcheglov 3428cc6dae Add AnalysisDriver.resetUriResolution() and use it for analysis.reanalyze request.
This CL changes "analysis.reanalyze" API. We decided to repurpose it. It was not
used for some time now in IntelliJ, and AFAIK has never been used in VS Code.

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

Change-Id: I7510b0189197c9f3f848b0fc59a7b2bd22889ac7
Reviewed-on: https://dart-review.googlesource.com/c/85523
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-29 19:08:30 +00:00
Paul Berry 589a823888 Cherry-pick f02e7bb374 to the analyzer branch
Original commit message:

    Rework parseLiteralSetOrMapSuffix to remove expression lookahead

    This reworks the set literal support to remove unnecessary lookahead
    by removing the listener.beginLiteralMapEntry event
    and renaming the listener.endLiteralMapEntry to handleLiteralMapEntry.

Change-Id: I608e94aadc2afb86c772fdc6ef24b0da32c5ddde
Reviewed-on: https://dart-review.googlesource.com/c/85410
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-28 23:53:01 +00:00
Brian Wilkerson 235da6f45d Rename AstNode.getAncestor by deprecating it and adding the new method (analyzer)
Change-Id: Ia00d8cb7153bd9db798352aab00b2431ba709671
Reviewed-on: https://dart-review.googlesource.com/c/85540
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-28 21:04:57 +00:00
Brian Wilkerson 65787a250e Use the experiment flag to enable scanning the >>> operator
Change-Id: I93678479911b629c3b88edd76d1ffa0c1daebaf3
Reviewed-on: https://dart-review.googlesource.com/c/85520
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-11-28 20:22:28 +00:00
danrubel de764dbec1 more set literal tests
Change-Id: I9d6a24e240be7379674b898fb4d094e86058611b
Reviewed-on: https://dart-review.googlesource.com/c/85429
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-28 19:02:00 +00:00
Paul Berry 82add824fd Merge commit 'db89c2d1ac3e8b6c6130cbb714c4e242e6fefc27' into analyzer 2018-11-27 15:11:22 -08:00
Konstantin Shcheglov 232aa553fb Backport AnalysisSession.getResolvedLibrary()/ByElement().
Change-Id: I83c1dbe9d758be12212fcd892bb57ae69407d8be
Reviewed-on: https://dart-review.googlesource.com/c/85147
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-11-27 22:53:24 +00:00
Konstantin Shcheglov 2beed40848 Move Workspace and its implementations into src/workspace.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I172d95e55ced9925e8f428b9b07f432251ef5248
Reviewed-on: https://dart-review.googlesource.com/c/85462
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-27 21:50:00 +00:00
Konstantin Shcheglov 561d892d29 Only consider known files in AnalysisDriver.changeFile().
So, when we internally listen for the whole repo changes, each instance
of AnalysisDriver can react only on what matters for it.

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

Change-Id: I0b70cfa662ff23adce7644d313ff9841c8170e0c
Reviewed-on: https://dart-review.googlesource.com/c/85461
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-27 21:48:10 +00:00
Konstantin Shcheglov 61a1793574 Issue 35162. Include SDK version constraint into AnalysisOptions.
So, analysis result signatures depend on it and recomputed when it
is changed.

Also, change analysis server to update analysis options not only
when analysis_options.yaml is changed, but also when pubspec.yaml
is changed.

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

Bug: https://github.com/dart-lang/sdk/issues/35162
Change-Id: If4b937c26212d3da74ac7125eb2c6f70dbcb1793
Reviewed-on: https://dart-review.googlesource.com/c/85405
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-11-27 00:57:27 +00:00
danrubel 52892f7c47 Add scanner and parser support for new >>> operator
This adds support for the new >>> operator as detailed in
https://github.com/dart-lang/language/blob/master/accepted/future-releases/constant-update-2018/feature-specification.md#new-operators

Tracking issue: https://github.com/dart-lang/language/issues/60

Enable support by setting AbstractScanner.enableGtGtGt = true

Change-Id: I8e7d2fb341971452d8e05d734a1de612880fef5e
Reviewed-on: https://dart-review.googlesource.com/c/85421
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-26 22:12:25 +00:00
danrubel f02e7bb374 Rework parseLiteralSetOrMapSuffix to remove expression lookahead
This reworks the set literal support to remove unnecessary lookahead
by removing the listener.beginLiteralMapEntry event
and renaming the listener.endLiteralMapEntry to handleLiteralMapEntry.

Change-Id: Ia71fe69359b0447a60d729db34ec35ad25a54750
Reviewed-on: https://dart-review.googlesource.com/c/84661
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-26 20:03:19 +00:00
Paul Berry d7ee7b9516 Merge commit '880dfa0bca19b024bea57a20434da6f3f0fe9c87' into analyzer 2018-11-26 08:35:57 -08:00
Brian Wilkerson 198d4d135f Infer an empty set literal when appropriate
Change-Id: Ib46c35adbd3dd9e28073aeb5996d785b5e62e608
Reviewed-on: https://dart-review.googlesource.com/c/85142
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-21 22:27:53 +00:00
Paul Berry e649ed1aa3 Merge commit 'c1daa3276566e48dac6f52742264578092c56a35' into analyzer 2018-11-21 08:47:55 -08:00
Dan Rubel f3344f3c13 Update parser to report error for missing comma
Fix https://github.com/dart-lang/sdk/issues/35213

Change-Id: Ia9a1628f15bebf0c915f5d16712f98ac614896e8
Reviewed-on: https://dart-review.googlesource.com/c/85021
Auto-Submit: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-21 16:17:48 +00:00
Brian Wilkerson 758e690b8d Enable the use of set literals in the analyzer unit tests
Change-Id: Idbf0b807d59fd68436906f699fd4ab55db23ac62
Reviewed-on: https://dart-review.googlesource.com/c/84962
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-20 23:56:40 +00:00
Paul Berry c165ef8a37 Ensure that lists and maps built by ExprBuilder have their staticType set.
We can't rely on resolution to do this, because resolution only
operates in the compilation unit currently being analyzed, and
constant values may be needed from other compilation units.

Fixes #35230.

Change-Id: I11fa5597110bc13164ca5dc9846836848120cd08
Reviewed-on: https://dart-review.googlesource.com/c/84964
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-20 22:22:15 +00:00
Paul Berry 42d4269e06 Remove unused import
Change-Id: Ibc3a323dc19e2c7677370a20e009c9659544ec22
Reviewed-on: https://dart-review.googlesource.com/c/84924
Auto-Submit: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-20 18:34:19 +00:00
Paul Berry 051643c0ed Hook up analyzer set literal logic to Fasta parser.
A few analyzer summary tests had minor bugs that weren't noticed until
we hooked up the parser; those are fixed now.

Note that more analyzer set literal logic still needs to be written.

Change-Id: I6ba22602887cda20984770f927743595cc7cf451
Reviewed-on: https://dart-review.googlesource.com/c/84828
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-19 23:25:27 +00:00
Konstantin Shcheglov 5c7f36e2f1 Add getParsed/ResolvedLibraryByUri() to AnalysisDriver and use in AnalysisSession.
This is how clients actually ask ParsedLibraryResult - by its element,
and correspondingly AnalysisDriver.getParsedLibraryByUri().

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

Change-Id: Id295122a667ec57f11d05c2bef8fcb905c463d3a
Reviewed-on: https://dart-review.googlesource.com/c/84826
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-19 23:11:07 +00:00
Konstantin Shcheglov 90b694b93d Keep resynthesized annotations, even if partially unresolved.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ie56808e53d2acdf94153658197813150b138431f
Reviewed-on: https://dart-review.googlesource.com/c/84823
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-19 21:33:25 +00:00
Dan Rubel aa9d186fa5 More analyzer set literal tests
Change-Id: I2d2dc2f8fb04f9baf135ac2504f0fa412c4ed262
Reviewed-on: https://dart-review.googlesource.com/c/84781
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-19 21:22:33 +00:00
Brian Wilkerson cb88347087 Port the SDK violation hint to the master branch
Change-Id: Id795400473796f05e46c0ffdd0a8920f8ad5bcd3
Reviewed-on: https://dart-review.googlesource.com/c/84688
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-19 21:14:48 +00:00
Konstantin Shcheglov de2e6a5543 Return ResultState.NOT_A_FILE for external libraries from getParsed/ResolvedLibrary().
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ia2604f7c5c675fe66dae430401d9fdc4b20a0860
Reviewed-on: https://dart-review.googlesource.com/c/84760
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-19 18:39:41 +00:00
Brian Wilkerson 032bfe0872 Use void rather than Object as a type argument when possible
Change-Id: I275a20e6f58a01adda3be64cf83930cc238beed3
Reviewed-on: https://dart-review.googlesource.com/c/84700
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-19 18:32:31 +00:00
Brian Wilkerson 47e11951a8 Add a missed test file
Change-Id: Ica4bdb1120bebfd71bd893ecad330e00fddbf5ce
Reviewed-on: https://dart-review.googlesource.com/c/84689
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-19 17:35:13 +00:00
Konstantin Shcheglov 3f03b07d53 Keep actual resynthesized constant expressions even when they are partially unresolved.
This is what Angular outliner (and another generator that I forgot)
expects. The alternative with resolving library seems less palatable.

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

Change-Id: I6e407c6034284043e169bc64076ec2c811b33bfe
Reviewed-on: https://dart-review.googlesource.com/c/84682
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-19 16:58:28 +00:00
Paul Berry 6d8e14c9db Merge commit 'f56fea3e6389727df2cae5c6feebcdd49437b12a' into analyzer 2018-11-19 08:24:02 -08:00
danrubel 7f63fcfe1f Add AstBuilder set literals support
Change-Id: I8e126d31975bc3834b4091ba149c97b92dde9a10
Reviewed-on: https://dart-review.googlesource.com/c/84663
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-17 03:11:41 +00:00
Dan Rubel 9677ec9a14 Fix parsing complex function expressions
Fix https://github.com/dart-lang/sdk/issues/35177

Change-Id: I378314741bbbe555f9cdc2b95dcfd5ce71a15efa
Reviewed-on: https://dart-review.googlesource.com/c/84660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-11-16 21:49:30 +00:00
Paul Berry 32a6032f03 Merge commit 'ddbe22190c41b1993a3c93b67f1bfa57287348f8' into analyzer 2018-11-16 12:01:38 -08:00
Paul Berry 920630acab Cherry-pick 19d9aa3337 to analyzer branch.
Original commit message:
    Add isLibraryByUri() to AnalysisDriver.

    The package:build develpers told us that they need it.

Change-Id: Ieb276b175f244a122d2e5d2f31ac852252d2c595
Reviewed-on: https://dart-review.googlesource.com/c/84642
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-16 19:40:30 +00:00
Brian Wilkerson 716c9dcde2 Add a hint when Future is imported from core in code targeted to run with an SDK prior to 2.1
Change-Id: I925412b9c7c3023836a0a2a7d3d00847adf0b0c7
Reviewed-on: https://dart-review.googlesource.com/c/84547
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-16 19:07:27 +00:00
Konstantin Shcheglov b27d6078c2 Update getLibraryByUri() to more directly use external summaries, and check for part instead of library.
We need at least the external summaries portion, the checks for isPart
is to be a bit more clean, I think, hopefully does not break anything
internally.

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

Change-Id: Ic2e47b45ffb057195d34e1c5c55bbb20541e423d
Reviewed-on: https://dart-review.googlesource.com/c/84551
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-16 18:11:59 +00:00
Brian Wilkerson 01e0df71a8 Stop unnecessarily extending Object
Change-Id: Ib557755916b09be4e1ad1b1c2e4bed052a280513
Reviewed-on: https://dart-review.googlesource.com/c/84640
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-16 16:43:24 +00:00
Konstantin Shcheglov 8414e2240c Don't report DEPRECATED_MEMBER_USE for deprecated mixins, top-level variables, and class fields.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ied5fbe5f7427d286a43902719eb153964c8800e0
Reviewed-on: https://dart-review.googlesource.com/c/84545
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-15 20:35:57 +00:00
Konstantin Shcheglov a6665c1aa1 Fix for computing constant values of annotations with named constructors.
We are given ConstructorElementHandle, not ConstructorElementImpl.

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

Change-Id: I41f8029dddc293e45628d7ecca131b337cc9e286
Reviewed-on: https://dart-review.googlesource.com/c/84543
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-15 19:57:15 +00:00
Konstantin Shcheglov 19d9aa3337 Add isLibraryByUri() to AnalysisDriver.
The package:build develpers told us that they need it.

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

Change-Id: Ia48851faac353d5f83e7d6af7d579c2c1d8be1bd
Reviewed-on: https://dart-review.googlesource.com/c/84502
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-15 17:48:49 +00:00
Brian Wilkerson 7d84c2e4b0 Serialization of set literals
Change-Id: I6e0e2dd3cda72d24d36e9b2c5d2c00d81f73379b
Reviewed-on: https://dart-review.googlesource.com/c/84364
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-14 20:01:57 +00:00
Brian Wilkerson 1d00a8a11f Add checking for errors related to set literals
Change-Id: Iad1442da6be318a709f5782fbda4a9055f55dfac
Reviewed-on: https://dart-review.googlesource.com/c/84302
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-13 20:08:23 +00:00
Brian Wilkerson 3826a983b0 Add constant evaluation for lazy null-aware and lazy conditional expressions
Change-Id: Iea892bee3ad5c0bdbc0803ce665acfe38ccbd9a1
Reviewed-on: https://dart-review.googlesource.com/c/84182
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-12 23:21:34 +00:00
Brian Wilkerson f6128b48b6 Add constant evaluation for operators that now apply to bool as well as int
Change-Id: I080386cddfece2d789fcee7d13bdda01260cc724
Reviewed-on: https://dart-review.googlesource.com/c/84160
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-12 21:26:08 +00:00
Konstantin Shcheglov 2079620a53 Issue 34733. Expand 'implicit-casts' controlled casts, and deprecate more of 'declaration-casts'.
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/34733
Change-Id: Ifda5cbd8cc8d81a7e3ad8133d68c056b869bb588
Reviewed-on: https://dart-review.googlesource.com/c/84122
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-12 21:04:59 +00:00
Konstantin Shcheglov 6880bfca41 Cherry-pick 028ac52180 from analyzer to master.
This fixes "Evaluation of this constant expression throws an exception"
during Flutter analysis.

Initial CL: https://dart-review.googlesource.com/c/sdk/+/81750

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

Title: Enum values are always computed, compute even implicit null values of default parameters.
Change-Id: If38dde0490f04bf39119087b5f15a36272e58cab
Reviewed-on: https://dart-review.googlesource.com/c/84041
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-12 19:54:18 +00:00