Commit graph

56116 commits

Author SHA1 Message Date
Peter von der Ahé 39516de753 Split ThisPropertyAccessGenerator
This prepares the generator to be implemented by the analyzer.

Change-Id: I429f41beec55057b427ef686d99c7ff26c1e6b25
Reviewed-on: https://dart-review.googlesource.com/56118
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-05-23 09:26:35 +00:00
Peter von der Ahé 2d79c356e0 Start creating common superclass for generators
Change-Id: I9d8c95665eed15be45c2a5b734e541af73a7db91
Reviewed-on: https://dart-review.googlesource.com/56117
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-05-23 09:24:46 +00:00
Terry Lucas 2a7188523e Fixed status
TBR=sra@google.com

Change-Id: Ie8f1d0e19bdde301aa995376727035f807d5d222
Reviewed-on: https://dart-review.googlesource.com/56288
Commit-Queue: Terry Lucas <terry@google.com>
Reviewed-by: Terry Lucas <terry@google.com>
2018-05-23 07:52:55 +00:00
Terry Lucas cf87b84f7d Support Promise to Future for both DDC and dart2js.
APIs in the newer Chrome IDLs support more JS style promises. The Dart web libraries now hookup those promises and return a Dart Future.
Additionally, a new type maplike is exposed in the IDL this is exposed too.

Change-Id: I44175877eb95f4d910586d42c0139fb182483f82
Reviewed-on: https://dart-review.googlesource.com/49800
Commit-Queue: Terry Lucas <terry@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2018-05-23 04:08:14 +00:00
Ben Konyi 6d8f473d4f [ VM / Hot Reload ] Updated kernel_service and hot reload behavior to run as long as the compiler returns valid kernel.
Change-Id: Id2b20d95488ccd374f4ca337355dde9f5057292a
Reviewed-on: https://dart-review.googlesource.com/46820
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-05-22 23:50:28 +00:00
Dan Rubel f4f79acb61 Improve annotation identifier recovery
Change-Id: Iaac50ebf39f6f76939f738f97929c8212fa2c098
Reviewed-on: https://dart-review.googlesource.com/56240
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-05-22 22:24:04 +00:00
Dan Rubel 3bdd173175 Call computeType rather than parseType
Change-Id: I4d67e8742997181775320b596443ea9dd78be60d
Reviewed-on: https://dart-review.googlesource.com/56241
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-05-22 21:47:14 +00:00
Stephen Adams 2c8c05f877 [dart2js] merge generator body into empty entry function
Change-Id: I99a5f16f9a22d3c3cbb4989151a8d3c7bfda16ef
Reviewed-on: https://dart-review.googlesource.com/56037
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-22 21:17:44 +00:00
Alexander Thomas 96cfc632bb [infra] Use a less specific browser version that works across platforms
TBR=whesse@google.com

Change-Id: Ieff493c187dc5da5dbee49887454cf25e1dc6eef
Reviewed-on: https://dart-review.googlesource.com/56115
Reviewed-by: Alexander Thomas <athom@google.com>
2018-05-22 21:11:03 +00:00
Brian Wilkerson 3ac2a3fe19 Address comment from 55981
Change-Id: I8e0e95239f613d15d130c465a0d39dd04a044194
Reviewed-on: https://dart-review.googlesource.com/56200
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-05-22 20:53:16 +00:00
Sigmund Cherem 8c0f5747a0 Add build_integration package and move multi_root_file_system there.
This is following the design discussion we had a few months ago.

Change-Id: I48b2e82af33d10b9cd1e599e1b3a4e8e419417c8
Reviewed-on: https://dart-review.googlesource.com/56035
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-05-22 20:09:24 +00:00
Leaf Petersen ba0da68563 Update status for new test
TBR=brianwilkerson@google.com

Change-Id: Iab0a3ad5cbb524adac9ea6886d21fe51376d10bd
Reviewed-on: https://dart-review.googlesource.com/56180
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Leaf Petersen <leafp@google.com>
2018-05-22 18:33:54 +00:00
Vyacheslav Egorov 3f6c87d5ac [vm/compiler] Do not use Constant(#null) to reserve space on the expression stack.
Given IL like this:

  t3 <- Constant(#null)   <--\
  // ... do something ...    |
  StoreLocal(:temp, t4)   ---/
  // Do something else
  StoreIndexed(t1, t2, t3)

Graph builder would use Constant(#null) as an input definition for
StoreIndexed - which leads to wrong generated code in unoptimized mode
on X64 where StoreIndexed has specialization for constant values. In
optimized code SSA renaming would actually replace t3 with a correct
reaching definition.

This CL introduces a new IL instruction MakeTemp(...) which has exactly
the same effect as Constant(#null) on the expression stack, but is
not treated as a constant value by the backend.

The bug was unnoticed because of the loose assertions in the SSA
renaming which permitted replacing Constant-s with non-Constant
reaching definitions. This CL also tightens those assertions to
catch this issue.

Also cleanup the code in SSA renaming a bit to make it a bit easier
to understand.

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

Bug: 33195
Change-Id: I7c914c836d4af7a50e8a8e1a02d03e9413f87779
Reviewed-on: https://dart-review.googlesource.com/56112
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-05-22 18:05:14 +00:00
Brian Wilkerson a756248065 Add Forest support for assert statements and initializers
Change-Id: I7a1f51144e69890d9858e60948cf59800ed81e53
Reviewed-on: https://dart-review.googlesource.com/56005
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-05-22 17:59:24 +00:00
Zach Anderson a9ab8f4e7d [GN] Hack around Dart 2 application_snapshot deps issue
For Dart 2 snapshots, application_snapshots() hardcodes a deps on
//utils/kernel-service:copy_kernel_service_snapshot

related #33167

Change-Id: I9a598e83a3e8ebb9a27bfe83132f3a957f2fea0e
Reviewed-on: https://dart-review.googlesource.com/56161
Reviewed-by: Nate Bosch <nbosch@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-05-22 17:47:16 +00:00
Dan Rubel 298129c3a4 Improve part of identifier recovery
Change-Id: I16b5799e883ed0a04445809e329d9e7fba5afff4
Reviewed-on: https://dart-review.googlesource.com/56041
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-05-22 17:07:46 +00:00
Konstantin Shcheglov 371c8e4b87 Append version and CRC32 to data in FileByteStore.
We need this to prevent reading accidentally damaged data.

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

Bug:
Change-Id: I1c3b2c61f3cdb087c8f7effafba7fa13deef87ce
Reviewed-on: https://dart-review.googlesource.com/3700
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-22 17:06:32 +00:00
Aske Simon Christensen 6cc0d9770f Skip expressions by parsing them with a no-op listener.
This change slows down Fasta by around 0.5%, as it now does a full
parse of expressions outside bodies in the outline and diet parsing
phases, but it is, for now, a more robust solution than the heuristic
skipExpression, fixing several crashes.

Fixes https://github.com/dart-lang/sdk/issues/31155
Fixes https://github.com/dart-lang/sdk/issues/31171
Fixes https://github.com/dart-lang/sdk/issues/31188

Change-Id: Id5639dbd8b4c3f1f7e42eed66e3bee60f37bc3dc
Reviewed-on: https://dart-review.googlesource.com/55660
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-05-22 16:51:29 +00:00
Stephen Adams 3ccd5a06f5 [js_runtime] Fix for 'o is FutureOr<T>' with function type T
Change-Id: I0533d565f7edf87ea9ac45e56e1e192658ec5849
Reviewed-on: https://dart-review.googlesource.com/55982
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2018-05-22 16:43:54 +00:00
Mike Fairhurst d34fe65afa Revert "New package:build workspace before we support it at the language level."
This reverts commit ac8971a98a.

Reason for revert: Tests fail on windows

Original change's description:
> New package:build workspace before we support it at the language level.
> 
> Does not work with dartanalyzer, only dart analysis server.
> 
> Change-Id: I1d7c3fbbbda512d799ac44a6fa5a188d1a3bb8c3
> Reviewed-on: https://dart-review.googlesource.com/55586
> Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
> Reviewed-by: Mike Fairhurst <mfairhurst@google.com>

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

Change-Id: Ie3a0f7549cdbd65c9a3f7100f303105b121830a6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/56162
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-05-22 16:43:25 +00:00
Leaf Petersen 580e486386 Make CastStreamSubscription.onData handle a null callback
Fixes #33166

Change-Id: I52e8bcb6c782c84e8a474b0fc40ada24f31bf602
Reviewed-on: https://dart-review.googlesource.com/55984
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-05-22 16:24:57 +00:00
Alexander Thomas 2a8eb8089d [infra] Specify chrome version used by builds running on the test matrix
Prepares the test matrix for the corresponding recipe change:
https://chromium-review.googlesource.com/c/chromium/tools/build/+/1064632

Change-Id: I21d380f6ad452e3eca6e6f20133297d31347872c
Reviewed-on: https://dart-review.googlesource.com/56109
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2018-05-22 16:17:34 +00:00
Devon Carew eeec6466b6 Convert the command-line analyzer to a dart 2 snapshot.
Change-Id: Ieb5cd8971494a8a6ffc07c0fd4dde07cfb6f5373
Reviewed-on: https://dart-review.googlesource.com/56034
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-05-22 15:44:04 +00:00
Konstantin Shcheglov 89df6b785d Issue 33181. Use RefactoringWorkspace in rename refactoring to determine when element being renamed is outside the workspace.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/33181
Change-Id: I01c9b275579cd961a581491d8cd25893b3bcc094
Reviewed-on: https://dart-review.googlesource.com/56039
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-22 15:28:23 +00:00
Alexander Thomas 85ddeb990a [release] Prepare changelog for 2.0.0-dev.56.0
TBR=whesse@google.com

Change-Id: Iadbd442d65dd02d76794e59b0f2d8700f3fbe22a
Reviewed-on: https://dart-review.googlesource.com/56110
Reviewed-by: Alexander Thomas <athom@google.com>
2018-05-22 14:35:50 +00:00
Kevin Millikin 7ff8adcec9 Fix an incorrect dart:mirrors test
The class defined by an anonymous mixin application is always
abstract.  If it were not, then it would be a Dart 2 static error that
it does not provide implementations of any of the abstract members of
the mixed-in class.  For example:

  class S {}
  abstract class M {
    int f();
  }
  abstract class C extends S with M {}

The class defined by `S with M` must be abstract because it does not
provide an implementation of `f`.

Change-Id: I3a990d7db4c5cb3c2dc83f4f12e4fd1eba68f876
Reviewed-on: https://dart-review.googlesource.com/56107
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-05-22 13:56:41 +00:00
Dmitry Stefantsov 08d466bfad [kernel] Treat TypeParameter.defaultType as a child in visit methods
Change-Id: Id2bc2ec8f4d08ca3ef0c428efa2dbf369039b59c
Reviewed-on: https://dart-review.googlesource.com/55883
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 13:14:16 +00:00
Peter von der Ahé 330dcb19da Rename remaining generators
Change-Id: I8baf2347aaab8a32eb41518ea8079dc491753af5
Reviewed-on: https://dart-review.googlesource.com/56106
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 13:10:42 +00:00
Dmitry Stefantsov 2c9d8924e3 [fasta] Make explicit Object in bound a constraint during type inference
Change-Id: I1da9c822e83663dd285880a074e5a36ff295003c
Reviewed-on: https://dart-review.googlesource.com/55897
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2018-05-22 13:06:11 +00:00
Peter von der Ahé 5924c35640 Prepare to remove expression_generator_impl.dart
Change-Id: I459ee57e95b47bf59935df32902ce19051c3e7ab
Reviewed-on: https://dart-review.googlesource.com/56105
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 12:23:21 +00:00
Vijay Menon c771e4d132 DDC: disallow ignore option on Stream cast failures
See #27223

Change-Id: Ia23edc3700a8e0bb3d982be9b0bb36ad4522091d
Reviewed-on: https://dart-review.googlesource.com/56033
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Vijay Menon <vsm@google.com>
2018-05-22 12:15:32 +00:00
Aske Simon Christensen e191d4feb5 Simplify errors on invalid arguments
Change-Id: I1bd94725b4e4e44e706c6d22543bbea22649ec69
Reviewed-on: https://dart-review.googlesource.com/55680
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-05-22 11:14:22 +00:00
Peter von der Ahé 7ab9ea0e4e Change return type of Fangorn.parenthesizedCondition
Change-Id: Ie023607a0a85adcb710ec91174188a2013146254
Reviewed-on: https://dart-review.googlesource.com/56100
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-05-22 09:40:21 +00:00
Peter von der Ahé 09582b46ea Remove FastaAccessor and Accessor
Change-Id: I439670b0fafa09536901647572615afa4e82977a
Reviewed-on: https://dart-review.googlesource.com/55965
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 09:32:41 +00:00
Peter von der Ahé a738567968 Convert ContextAccessor to ContextAwareGenerator
Change-Id: Id9afaa968616d48c0dbe088d19a7dcb0f94ef369
Reviewed-on: https://dart-review.googlesource.com/55964
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 09:23:21 +00:00
Peter von der Ahé bbdf560ee7 Convert UnresolvedAccessor to UnresolvedNameGenerator
Change-Id: Ie28b5d963ab575383b36551657c0f0109b5de53d
Reviewed-on: https://dart-review.googlesource.com/55963
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 09:23:21 +00:00
Peter von der Ahé b5c6143d74 Convert IncompleteSend to IncompleteSendGenerator
Change-Id: Ief33fe9277ec9a297f0dc9274820e1f1ab13ca75
Reviewed-on: https://dart-review.googlesource.com/55962
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-05-22 09:23:21 +00:00
Régis Crelier 63ff7ee922 [vm/interpreter] Support closures in bytecode.
Support reordered bytecode metadata sections.
For now, read but ignore exceptions table in bytecode metadata.

Change-Id: I86202acc8ea22d746deaa894afd685d2f1daaaf8
Reviewed-on: https://dart-review.googlesource.com/56036
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2018-05-22 02:37:01 +00:00
Stephen Adams e1cabfd1d4 [dart2js] 'Fix' error in registrations
Restore 'overregisration' removed by
https://dart.googlesource.com/sdk/+/929b79e86533b6c409437fbc4a08cf5dfde8be75

Change-Id: I607d2bfbbaa4ea9d320b37aebba06acd1da1af19
Reviewed-on: https://dart-review.googlesource.com/56038
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2018-05-22 01:56:11 +00:00
Emily Fortuna 49d5ca3bb4 Switch to BigInt for ConstantValue.
Change-Id: I17eec094d794b1c4791d491ea523d284f9eae4ed
Reviewed-on: https://dart-review.googlesource.com/55500
Commit-Queue: Emily Fortuna <efortuna@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2018-05-22 01:04:41 +00:00
Konstantin Shcheglov 9696c9dcd0 Change analysis_server tests to use /project/test.dart as the test file.
Correspondingly all files that were referenced using relative URI(s)
also put into /project, which is the contextRoot for the test
AnalysisDriver.

This will let us (in a following CL) start checking that the element
being renamed is defined inside the current workspace (the set of
analysis roots). Currently the context root is hardcoded as /project.

R=brianwilkerson@google.com

Change-Id: I9dca3509af1be13c9016bf03d4a4b95d71bc9374
Reviewed-on: https://dart-review.googlesource.com/56031
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-22 00:31:22 +00:00
Alexander Aprelev e71bd048e5 [vm, kernel] Fix async stack code traversal in dart2.
With this change debugger requests yield(await) positions from kernel builder so it can confirm which frame handles what exceptions.
This also renames ':completer' to ':async_completer' in constructed kernel, so it is compliant with what VM expects to see(and updates test expectations accordingly).
Further it fixes async stack navigation for sync-async that became default in dart vm since first version went for the review((uses `future` getter, rather than property).
It also makes `future` getter non-debuggable to allow stepping-out of async methods.

Make Handle zone-scoped. Clean up frame counter var name.

Bug: https://github.com/dart-lang/sdk/issues/29056

Change-Id: Ia71f3c851a6b313655b57dad28c296f5dd081eda
Reviewed-on: https://dart-review.googlesource.com/54640
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-05-22 00:27:01 +00:00
Alexander Markov 714697efbb [vm/kernel/bytecode] Write constant pool before bytecode and exceptions table
This simplifies reading, as exceptions table refers to constant pool.

Change-Id: Id20d2a315ad87aa4e5247fcd98d7e5996c188eec
Reviewed-on: https://dart-review.googlesource.com/56032
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-05-21 23:51:41 +00:00
Alexander Aprelev 80b48195b1 [frontend-server] Serialize compiled expression procedure into the file.
Improve comments and test, report errors.

Follow-up to https://dart-review.googlesource.com/c/sdk/+/49040.

Change-Id: Ie02dae1c0edfcb54e3cd7333641e2c5eface1412
Reviewed-on: https://dart-review.googlesource.com/56030
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2018-05-21 23:50:22 +00:00
Alexander Markov 68b19b4ff4 [vm/kernel/bytecode] Add invocation kind to StaticICData constant
VM will use the invocation kind to distinguish between getters,
setters and calls via field/getter.

Change-Id: I97cf36bc8778533e53f8251c25b373fddec3c2e8
Reviewed-on: https://dart-review.googlesource.com/55581
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-05-21 23:03:01 +00:00
Stephen Adams 929b79e865 [dart2js] Don't insert redundant checks
This is in preparation for detecting if a generator header has checks.

By not registering the redundant checks (which should really done in codegen) we remove a few $isXXX flags.

Change-Id: I30deb2bc498858540cd326243798248c51ce9375
Reviewed-on: https://dart-review.googlesource.com/56006
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-21 22:23:18 +00:00
Konstantin Shcheglov 4cf51e6c1a Give (the old) ContextRoot path.Context to work with paths.
R=brianwilkerson@google.com

Change-Id: I7699bb50ea4b6239c61c69de5e8e2ceeed64ea64
Reviewed-on: https://dart-review.googlesource.com/56024
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-21 22:04:24 +00:00
Vijay Menon bea580c3a4 Disallow ignore on any explicit cast failures
See #27223

Change-Id: I9689ce9a72597b3e5c945f9787f2de6c5e8c2074
Reviewed-on: https://dart-review.googlesource.com/54701
Commit-Queue: Vijay Menon <vsm@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2018-05-21 22:01:39 +00:00
danrubel 1cf871a4d2 Improve import/export combinator identifier recovery
Change-Id: I9f0a418d3b1fae001199c27850b1a85daf2d07a6
Reviewed-on: https://dart-review.googlesource.com/56040
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-05-21 21:12:19 +00:00
Konstantin Shcheglov 79a0ef60e0 Fix for 'Convert to final field' quick assist when no return type.
R=brianwilkerson@google.com

Change-Id: I9927c8f44fcab8ad812939680a1a082f85cc9b66
Reviewed-on: https://dart-review.googlesource.com/56020
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-21 20:51:10 +00:00