Commit Graph

3345 Commits

Author SHA1 Message Date
Brian Wilkerson a0b058b398 Remove BodyBuilder.deprecated_addCompileTimeError
Change-Id: I7dfc8824fcff244cbc4b845420ca57e46c074940
Reviewed-on: https://dart-review.googlesource.com/67200
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-27 17:18:10 +00:00
Aske Simon Christensen 911672e204 Avoid crash on duplicated field with initializer
Fixes https://github.com/dart-lang/sdk/issues/31191

Change-Id: I14995dfff04f4ea08014ab20716cc208012b3c82
Reviewed-on: https://dart-review.googlesource.com/66568
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-07-27 11:02:05 +00:00
Paul Berry 1a5f94a0a4 Fix analyzer-CFE integration of illegal references to instance members from static contexts.
In particular, we want to make sure the element is resolved, in case
the user wants to navigate to it to make it static.

Change-Id: I0707145281858fbf084c6b2af32bb48bfed457f9
Reviewed-on: https://dart-review.googlesource.com/66820
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-26 22:59:56 +00:00
Konstantin Shcheglov 372a24cb7c Store resolution for catch with invalid parameters.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I7137eca832b83a352e130d6f3041679611c7c117
Reviewed-on: https://dart-review.googlesource.com/66721
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-25 21:25:55 +00:00
Konstantin Shcheglov 54d46b801a Fix for unresolved redirecting constructor.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: If1f37ccad174c44b6b23d1dccdeefec88f888abc
Reviewed-on: https://dart-review.googlesource.com/66802
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-25 21:20:35 +00:00
Paul Berry 0b778d0697 Change IncompleteErrorGenerator to make use of NonLValueGenerator.
This allows the special-case assignment handler methods to be removed
from ErroneousExpressionGenerator.

Change-Id: Iaf957f756dca56298c9ed49c6093fabe5ffd4149
Reviewed-on: https://dart-review.googlesource.com/66720
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-07-25 20:34:28 +00:00
Paul Berry 98fd0f3b6d Remove propertySet from TypeInferenceListener.
We never use this method; we use propertyAssign instead.

Change-Id: I179c48369b5317574975dd3b847af5f3f7753914
Reviewed-on: https://dart-review.googlesource.com/66780
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-07-25 20:33:58 +00:00
Paul Berry 232bed3d11 Change UnresolvedNameGenerator to use NonLvalueGenerator.
This avoids the need for custom assignment-handling logic in
KernelUnresolvedNameGenerator, and ensures that assignments to
unresloved names work properly with analyzer integration.

Change-Id: I802270987c90043d021f8560b56f47babf72fb1e
Reviewed-on: https://dart-review.googlesource.com/66701
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-07-25 18:22:45 +00:00
Konstantin Shcheglov e4446d3d0d Support for synthetic variable declarations.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I45592ac10c628fbf5a36c1cf27bf863aabe439f2
Reviewed-on: https://dart-review.googlesource.com/66700
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-25 18:10:55 +00:00
Konstantin Shcheglov 7fc6bf307f Resolve rethrow.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ifb93dc66e80575bb3145d835b3e6e3195e4299be
Reviewed-on: https://dart-review.googlesource.com/66661
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-25 17:22:35 +00:00
danrubel 41018ae11e Report error on async/sync method with no method body
Change-Id: I567fd26dd2c50f0f522020409dc41dac86b6466c
Reviewed-on: https://dart-review.googlesource.com/66601
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-25 16:57:45 +00:00
danrubel ff89b55c8d Improve class member recovery
This improves recovery when an incomplete field or method
is followed by an annotation.

Change-Id: I18ed4174923b67098732fbe9b823884f6196e620
Reviewed-on: https://dart-review.googlesource.com/66600
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-25 16:25:46 +00:00
Paul Berry 432e59e589 Fix error reporting if a for-in statement attempts to assign to a prefix.
This was regressed by https://dart-review.googlesource.com/c/sdk/+/66402.

Change-Id: Icad3d2d33cb4db0321534a6246c8cc5f50444edf
Reviewed-on: https://dart-review.googlesource.com/66416
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-25 14:12:13 +00:00
Dmitry Stefantsov c353d02a3c [fasta] Fix override checks for generic methods
Fixes #33971.

Bug: http://dartbug.com/33971
Change-Id: I66ee51ccfa0b8109602593f04961b58bf589d0be
Reviewed-on: https://dart-review.googlesource.com/66560
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2018-07-25 12:44:42 +00:00
danrubel f0f81d211a Report syntax error on external top level method with body
Change-Id: I87ec15a7f05792e1192d036fe42284f721b09aa4
Reviewed-on: https://dart-review.googlesource.com/66440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-24 23:40:11 +00:00
Paul Berry 55c0857037 Create a common generator class to handle non-lvalues.
This allows all non-lvalue cases to be integrated with the analyzer
using a common code path.

Change-Id: I15cd2bc07a2d3609e78886609f3e29ee6aa807fc
Reviewed-on: https://dart-review.googlesource.com/66402
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-07-24 21:34:50 +00:00
Konstantin Shcheglov 1fe0518d3b Resolve values of duplicate named arguments.
Change-Id: I3a84db8e7c7e29f730ec0687aee4ed0a62b84f94
Reviewed-on: https://dart-review.googlesource.com/66280
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-24 21:30:50 +00:00
danrubel c738ae06b5 Revise recovery of ".as" and ".is" in fasta parser
Change-Id: Id7524d61682ac8ceac419e388ae02bb23cc63e63
Reviewed-on: https://dart-review.googlesource.com/66420
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-24 18:52:08 +00:00
Konstantin Shcheglov ca947ffc1c Store resolution for invalid elements used as types.
Change-Id: I4824d629ad75f6a10d26af69817140b721cc8a78
Reviewed-on: https://dart-review.googlesource.com/65982
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-23 22:05:19 +00:00
Paul Berry cdeda8ecb1 Map NotAnLvalue to an analyzer error code.
Change-Id: Id10ad0a7281dfe6a02e0e2393a5c1f36ab1fd998
Reviewed-on: https://dart-review.googlesource.com/66226
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-07-23 20:25:39 +00:00
danrubel ca1cb5e817 Allow type before "this." in constructor
Fix https://github.com/dart-lang/sdk/issues/33945

Change-Id: Iaa080ff311a6ba306c42e2667a7897fdb87b406a
Reviewed-on: https://dart-review.googlesource.com/66201
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-23 18:34:39 +00:00
Peter von der Ahé 9eac90d2a2 Check void usage and invalid returns
Second take on 11001793a2,
but we treat all the problems as warnings.

This reverts commit 5c9c90f7e1.

Change-Id: Id9fdeabf5d49fefb48cfe4a0ca1b6da2be7dff59
Reviewed-on: https://dart-review.googlesource.com/66160
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-07-23 16:41:03 +00:00
Konstantin Shcheglov 6da9058a73 Cast result of jsonDecode to Map<String, String>.
This was causing an exception.

Unhandled exception:
type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'Map<String, String>'
#0      DillLibraryBuilder.addMember (package:front_end/src/fasta/dill/dill_library_builder.dart:102:31)
#1      List.forEach (dart:core/runtime/libgrowable_array.dart:274:8)
#2      DillLoader.buildOutline (package:front_end/src/fasta/dill/dill_loader.dart:61:28)
<asynchronous suspension>
#3      Loader.buildOutlines (package:front_end/src/fasta/loader.dart:176:13)
<asynchronous suspension>
#4      DillTarget.buildOutlines (package:front_end/src/fasta/dill/dill_target.dart:53:20)
<asynchronous suspension>
#5      FrontEndCompiler.compile.<anonymous closure>.<anonymous closure> (package:analyzer/src/dart/analysis/frontend_resolution.dart:226:29)
<asynchronous suspension>
#6      PerformanceLog.runAsync (package:front_end/src/base/performance_logger.dart:52:21)
<asynchronous suspension>
#7      FrontEndCompiler.compile.<anonymous closure> (package:analyzer/src/dart/analysis/frontend_resolution.dart:223:23)
<asynchronous suspension>
#8      FrontEndCompiler._runWithFrontEndContext.<anonymous closure>.<anonymous closure> (package:analyzer/src/dart/analysis/frontend_resolution.dart:356:43)
#9      PerformanceLog.runAsync (package:front_end/src/base/performance_logger.dart:52:21)

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

Change-Id: I49cd8f68af62d73978932dc8c9cc84b08710289b
Reviewed-on: https://dart-review.googlesource.com/65983
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-23 16:28:41 +00:00
Mike Fairhurst 5c9c90f7e1 Revert "Check void usage and invalid returns"
This reverts commit 11001793a2.

Reason for revert: Doesn't allow void to void assignment. This is breaks a lot of packages.

Original change's description:
> Check void usage and invalid returns
> 
> Closes https://github.com/dart-lang/sdk/issues/30470
> 
> Change-Id: I2ed5b54c74e0bba2771036774bbe2197ce29109d
> Reviewed-on: https://dart-review.googlesource.com/65141
> Commit-Queue: Peter von der Ahé <ahe@google.com>
> Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>

TBR=ahe@google.com,dmitryas@google.com

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

Change-Id: I78f479cf8b0824dd338ae43a5514f320fd112a3f
Reviewed-on: https://dart-review.googlesource.com/66040
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-07-20 22:29:45 +00:00
Peter von der Ahé 1d46b4728c Handle non-regular files in _IoFileSystemEntity.exists.
Also call validateOptions.

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

Change-Id: I7038d93ccbb4a0a2fd1f95817c53bbf30f130477
Reviewed-on: https://dart-review.googlesource.com/65082
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-07-20 14:10:48 +00:00
Konstantin Shcheglov ed30ba2a82 Resolve import prefix method invocation.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I1c4c8a7c3d92bf6074fcca87b0257436db55db43
Reviewed-on: https://dart-review.googlesource.com/65790
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-20 00:07:08 +00:00
Konstantin Shcheglov b83c2985c2 Use single CollectedResolution per file.
We now delay translation of elements and types until requested, so we
can now create single applier consuming single set of collected
resolutions, and given it the correct contexts as we iterate over AST.

This will be useful when we get to recording references and types
during outlines building, to support invalid types, as we do for bodies.

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

Change-Id: Ida786f28cd6d08a232c200a4d5f5a50a99ba862b
Reviewed-on: https://dart-review.googlesource.com/65786
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-19 21:20:48 +00:00
Brian Wilkerson 75deedf3f4 Fix more error code mappings
Change-Id: I01a340d9a6abac7c10c0a6431251694b04658e9d
Reviewed-on: https://dart-review.googlesource.com/65785
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-19 20:45:48 +00:00
Konstantin Shcheglov 4a0d4456bc Store type use only if it is qualified, don't store twice for improt prefixes.
Change-Id: Ia643df5251f607f72189d556fa71af877d9966d3
Reviewed-on: https://dart-review.googlesource.com/65621
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-19 18:44:28 +00:00
Brian Wilkerson b04ab993d0 Map ExtendingEnum, InvalidVoid and MetadataTypeArguments to analyzer codes
Change-Id: I9fb622c74e06cbad22158b823292b08632699dfe
Reviewed-on: https://dart-review.googlesource.com/65741
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-07-19 18:39:13 +00:00
Brian Wilkerson d6726cae36 Map AbstractRedirectedClassInstantiation and ConflictsWithMemberWarning to analyzer codes
Change-Id: I052dcb9154f29e1ce7e472c6104464fbd8e5cb3d
Reviewed-on: https://dart-review.googlesource.com/65742
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-19 18:26:27 +00:00
Paul Berry b4824b0dea Fix analyzer/FE integration when a const constructor calls a non-const super.
Change-Id: I362ce18e1cf3c6fe926b7d9ed9007c1ae33238c5
Reviewed-on: https://dart-review.googlesource.com/65622
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-07-19 16:56:28 +00:00
Brian Wilkerson df0785372a Map CyclicClassHierarchy and MixinInferenceNoMatchingClass to analyzer codes
Change-Id: I28832fddf5d5f6a470460747db8cea16de695e64
Reviewed-on: https://dart-review.googlesource.com/65740
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-19 15:50:57 +00:00
Dmitry Stefantsov fdd0494a02 [fasta] Don't skip metadata on redirecting factories and their formals
Fixes #33800.

Bug: http://dartbug.com/33800
Change-Id: I36c3404c5abd0ebd72205a56d5e90bad174e6d60
Reviewed-on: https://dart-review.googlesource.com/65540
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-19 10:19:35 +00:00
Konstantin Shcheglov 9c13c9dafc Resolve invalid return statements in async/sync generators.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ic0aa6ffbffc23b10814ab369ce041bde32da1388
Reviewed-on: https://dart-review.googlesource.com/65602
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-07-18 22:06:52 +00:00
Paul Berry 863c79a5fa Fix analyzer/FE integration of unresolved method invocations with no targets.
Change-Id: I0429801429082a39601f588308774aed1c26a240
Reviewed-on: https://dart-review.googlesource.com/65572
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 22:04:40 +00:00
Brian Wilkerson 1f6c3cfc8a Map three front end codes to analyzer codes
Change-Id: Ied10c089b69807fe34d85fe998fe112cab3fa2da
Reviewed-on: https://dart-review.googlesource.com/65579
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 21:42:10 +00:00
Brian Wilkerson 6baca4c154 Map PlatformPrivateLibraryAccess to an analyzer code
Change-Id: Ib1ad6666c812639214d37b72696bb69f3f7932dd
Reviewed-on: https://dart-review.googlesource.com/65577
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 21:18:00 +00:00
Konstantin Shcheglov 47a3032211 Store resolution for method invocation when arguments don't match parameters.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ied790b061ce9cdfc6f5a1912f6638bb21cdad862
Reviewed-on: https://dart-review.googlesource.com/65570
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-07-18 20:57:00 +00:00
Brian Wilkerson 5a1d4c95eb Replace more uses of Unspecified
Change-Id: I78aadfa055e2be90805e193abc1e3a23b5955caf
Reviewed-on: https://dart-review.googlesource.com/65574
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 19:59:03 +00:00
Konstantin Shcheglov 23c81964d9 Store resolution for invalid assignment to a parenthesized expression.
Change-Id: Ife2d750b91ed29bfbeedfc445c99fbf1d63a2c5c
Reviewed-on: https://dart-review.googlesource.com/65566
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-07-18 19:18:20 +00:00
Paul Berry d44451c5c7 Distinguish synthetic and non-synthetic tokens in ResolutionStorer/ResolutionApplier.
Fixes #33896.

Change-Id: I21f2272034c623f41478aec7dc91542d845f73b7
Reviewed-on: https://dart-review.googlesource.com/65568
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-07-18 19:06:30 +00:00
Brian Wilkerson b9a73c1fc6 Use ExternalConstructorWithFieldInitializers instead of Unspecified
Change-Id: Icb38e610c6bb88d307975dca59c3ec40befef4a6
Reviewed-on: https://dart-review.googlesource.com/65567
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 18:25:02 +00:00
Brian Wilkerson e22cab8514 Use LabelNotFound instead of Unspecified
Change-Id: Iaecd79ca9982473bf659948496d698514d4ea5cb
Reviewed-on: https://dart-review.googlesource.com/65565
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 17:41:20 +00:00
Brian Wilkerson 3657ee33eb Use ForInLoopWithConstVariable instead of Unspecified
Change-Id: I721f70fc4bfd4a723ac64917f39771b6e815702b
Reviewed-on: https://dart-review.googlesource.com/65564
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 17:23:20 +00:00
Brian Wilkerson 14b359fdb9 Map VoidExpression to an analyzer code
Change-Id: I18274a543b486ad874dd95d5dc7a16ecadb801d7
Reviewed-on: https://dart-review.googlesource.com/65563
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 16:30:20 +00:00
Peter von der Ahé e7c6416f80 Run bootstrap test in strong mode
Fixes https://github.com/dart-lang/sdk/issues/33811

Change-Id: Ie4863d5a1e8932bbf5d16a3a84236f7a66d27534
Reviewed-on: https://dart-review.googlesource.com/65084
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-07-18 11:21:23 +00:00
Peter von der Ahé 11001793a2 Check void usage and invalid returns
Closes https://github.com/dart-lang/sdk/issues/30470

Change-Id: I2ed5b54c74e0bba2771036774bbe2197ce29109d
Reviewed-on: https://dart-review.googlesource.com/65141
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-07-18 10:18:52 +00:00
Devon Carew c49cfa690d Replace crc32 with fletcher16 for a faster checksum algorithm.
Change-Id: I200e8450eb4a27e1c8093f400f8fe5f864f4c026
Reviewed-on: https://dart-review.googlesource.com/65444
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-18 03:30:44 +00:00
Paul Berry 54e98e7c15 Stop tracking ResolutionData.literalType in analyzer/FE integration.
In all but one case, the types that had previously been stored in
ResolutionData.literalType have become redundant; we now communicate
the necessary information in a higher fidelity way using
typeReference(), voidType(), and functionType().

There is one case that isn't redundant: variables declared in a catch
clause.  In this case the type in question really isn't a literal type
at all, it's an inferred type, so it makes more sense to store it in
ResolutionData.inferredType.

Change-Id: Ic03f6e5ba4bd91b561b3ee46b02324758763bc83
Reviewed-on: https://dart-review.googlesource.com/65482
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 02:58:31 +00:00