Commit Graph

2965 Commits

Author SHA1 Message Date
Konstantin Shcheglov 6e9aa86d6f Stop using AnalysisOptions.signature and multiple paths in SdkDescription.
Basically reduce it to a single path.

R=brianwilkerson@google.com

Change-Id: Ia532a5c7f6ae1464b77c5e9d23b3aaa7e85a6bf0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152710
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-29 17:50:14 +00:00
Brian Wilkerson 30fe39b92d Do not report a missing implicit default super constructor when subclassing an non-subclassable class
Change-Id: I015ebb07ae341bcee615e032be460b3e59e149c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152726
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-06-28 14:51:24 +00:00
Konstantin Shcheglov f91547d6dd Separate signatures for linked elements from signatures for resolution.
So, lints and error filters don't affect cache keys for summaries, and
we can reuse them more often across analysis contexts.

This makes `dart flutter_tools/bin/flutter_tools.dart analyze --flutter-repo`
about 35% faster, from 153 seconds to 113 seconds.

Change-Id: I606acce7ef712450783c75d24bc52fd5877b3f1f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152725
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-27 19:14:41 +00:00
Sam Rawlins 6bf946bbfc analyzer: Always declare return types.
Change-Id: I23d89bb572310a1a8deef8e173630d9bb59c9a50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152708
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-06-26 23:54:28 +00:00
Paul Berry cf53aea310 Consolidate to a single implementation of refineBinaryExpressionType.
Previously, we had one implementation in TypeSystemImpl that did some
of the work, and then deferred to the superclass implementation in
TypeSystem to do the rest of the work.  But the separation between the
two didn't add any value, since all instances of TypeSystem are also
instances of TypeSystemImpl.  So we move all the logic into
TypeSystemImpl for clarity.

Change-Id: I2901ab854a1507d65545ab05e3662913f219ad56
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152704
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-06-26 19:42:25 +00:00
Sam Rawlins baa5717f78 Use ///-style doc comments in analyzer/lib/src/generated
Bug: https://github.com/dart-lang/sdk/issues/33892
Change-Id: I0cee47b71702a210c5ace9455ce9aaf914355d05
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152683
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-06-26 17:31:58 +00:00
Brian Wilkerson ff83b0fec9 Add support for navigating from the URI in import and export configurations to the referenced file
Change-Id: Ic6234d9a24dcb52228067b20d69277e47ff89a0a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152401
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-06-24 22:46:33 +00:00
Sam Rawlins 9239061138 Analyzer: Improve message of implicit_this_reference_in_initializer
Fixes https://github.com/dart-lang/sdk/issues/37293

Change-Id: I4b621171dcaf618e97c62acd110ce7c911e6c9e3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151425
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-06-19 13:40:43 +00:00
Konstantin Shcheglov 62cc07dbca Issue 42385. Fix for analyzing 'prefix?.foo'.
Bug: https://github.com/dart-lang/sdk/issues/42385
Change-Id: I4dabfbda01a37210c57cb5ba6b5a7d530752e029
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151628
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-18 21:22:42 +00:00
Konstantin Shcheglov 60bb0d3a41 Separate current and to restrict FeatureSet(s) in scanner.
Bug: https://buganizer.corp.google.com/issues/159207726
Change-Id: I41b4c79590dccd05d8b0fa42d296f00a3c3ee229
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151620
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-17 23:32:31 +00:00
Konstantin Shcheglov d279cb47b5 Enforce sorting in analyzer/.
Change-Id: If7e76e442e64cd4991b80c3993e3da10bb3a19ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151462
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-17 05:04:30 +00:00
Konstantin Shcheglov 7f6b0d82eb Issue 42337. Report BODY_MIGHT_COMPLETE_NORMALLY for factory constructors.
Bug: https://github.com/dart-lang/sdk/issues/42337
Change-Id: I9209d7bf519ec61026ffe22bb05145e776e8517d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151344
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-15 23:46:38 +00:00
Konstantin Shcheglov 18b753cbcd Support for null-aware ExtensionOverride.
Bug: https://github.com/dart-lang/sdk/issues/41780
Change-Id: Ib5d11000847434c679df1ec882ee6d9777670fe0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151097
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-15 23:45:08 +00:00
Konstantin Shcheglov f2fafcd440 Extract and reuse EnclosingExecutableContext.displayName
Change-Id: If411305b7484e59b234366b656d07d2235e6513d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151305
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-15 20:16:16 +00:00
Sam Rawlins 294a2cffd1 Analyzer: print constructor name when constructor returns invalid type
Fixes https://github.com/dart-lang/sdk/issues/27387

Change-Id: I8ce81bab4c4601c5157977d3f43f73903dae7f8b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151200
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-15 13:52:56 +00:00
Sam Rawlins 32a93e2147 Analyzer: Remove error on class-used-as-mixin referencing super
Fixes https://github.com/dart-lang/sdk/issues/34806

Change-Id: I1cfd0b9c0699734b172aa62f7a04ab533a6cd03f
Fixed: 34806
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151099
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-06-13 15:11:25 +00:00
Sam Rawlins 56dbe294f2 Analyzer: Do not report const constructors with mixed in synthetic fields
Fixes https://github.com/dart-lang/sdk/issues/37810

Also report the offending fields in the error.

Change-Id: I8328bf5f16f56f1b70bbe4bdb7623ade6f11943c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151027
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-12 16:24:35 +00:00
Daco Harkes 6544c69e23 [vm/ffi] Convert Objects to Dart_Handles in FFI calls
This includes support for calling Dart_PropagateError in native code
when doing FFI calls, and catching uncaught exceptions with Dart_IsError
when doing FFI callbacks.

The support for Dart_PropagateError adds a catch entry to the FFI
trampoline, which prevents inlining these trampolines in AOT. This
regresses the FfiCall benchmarks by 1-2% in AOT.

In addition, Dart_PropagateError requires maintaining a bit whether we
entered native/VM code from generated code through FFI or not. That way
we can do the proper transition on the exception path. When entering
generated code, we store this bit on the stack, right after the entry
frame.

Design: http://go/dart-ffi-handles

Issue: https://github.com/dart-lang/sdk/issues/36858
Issue: https://github.com/dart-lang/sdk/issues/41319

Change-Id: Idfd7ff69132fb29cc730931a4113d914d4437396
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try,vm-kernel-asan-linux-release-x64-try,vm-kernel-linux-release-simarm-try,vm-kernel-linux-release-simarm64-try,vm-kernel-precomp-android-release-arm_x64-try,vm-kernel-precomp-obfuscate-linux-release-x64-try,dart-sdk-linux-try,analyzer-analysis-server-linux-try,analyzer-linux-release-try,front-end-linux-release-x64-try,vm-kernel-precomp-win-release-x64-try,vm-kernel-mac-debug-x64-try,vm-precomp-ffi-qemu-linux-release-arm-try,vm-kernel-nnbd-linux-debug-x64-try,analyzer-nnbd-linux-release-try,front-end-nnbd-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145591
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2020-06-12 11:14:22 +00:00
Konstantin Shcheglov c6ca3180df Support null shorting for FunctionExpressionInvocation.
Change-Id: I470c85574662d70517aa880e5c094d54226efa11
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150668
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-06-10 16:25:57 +00:00
Konstantin Shcheglov 3137a91d3c Enable type inference for local variables with initializers of type Never.
Bug: https://github.com/dart-lang/sdk/issues/42205
Change-Id: I7b032734b18fdb86e48270118b4dd91184594e12
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150474
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-09 17:27:35 +00:00
Sam Rawlins 1b0d293059 Analyzer: check for conflicting members on classes, mixins w/o inheritance clauses
_checkMixinInheritance and _checkClassInheritance check various errors
with the literal structure of inheritance nodes on class and mixin
declarations. But members can conflict with the implicit super-class,
Object.

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

Change-Id: If1bb47a439e9f09e4b1b1c55e24322d6d76c904d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150476
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-06-09 14:39:25 +00:00
Konstantin Shcheglov e3c3d4df32 Issue 42178. Fix for crash when 'Class?.method()' resolution.
Bug: https://github.com/dart-lang/sdk/issues/42178
Change-Id: I86312a35aed7342492bff9aae22121a05e7906ad
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150184
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-06-08 18:05:04 +00:00
Paul Berry 96c2cc2589 Migration: fix class hierarchy handling in FixBuilder.
When running the FixBuilder we need to override the behavior of
ClassElement.interfaces so that it returns the post-migration
interface types.  We also need to override the behavior of
LibraryElement.isNonNullableByDefault so that the library being
migrated is considered opted in during FixBuilder analysis.  This
required adding hooks to the analyzer to allow those overrides.

Additionally, since the analyzer caches the InheritanceManager, we
need to clear that cache out just prior to running the FixBuilder, so
that no pre-migration interface types leak into the FixBuilder.

Fixes #40475.
Fixes #42139.

Change-Id: I45e2c30ebe8c12e4a599e2458d77a3731bad0f98
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150260
Reviewed-by: Janice Collins <jcollins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-06-08 17:26:41 +00:00
Sam Rawlins 66e2b22d14 Analyzer: report conflicting extension type variables
Fixes https://github.com/dart-lang/sdk/issues/42216

Report when an extension declares a type parameter with the same name as the
extension.

Report when an extension declares a member with the same basename as the name
of any of the extension's type parameters.

Move tests into diagnostics/.

Move tests for RECURSIVE_INTERFANCE_INHERITANCE.

Change-Id: If19041571008b9b14122d9ff458d1d30ea0ff034
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150270
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-06-08 05:44:12 +00:00
Jens Johansen cbbbc09b3e [parser] Better recovery of typedefs with bad name
Note that this leaves differences in errors issued between
"typedef void void();" and "typedef void = void Function();" though.

Fixes #42158

Change-Id: I0785f99234c87bdeadbb2865e089b1389851333e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149599
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2020-06-04 14:21:11 +00:00
Paul Berry 930cae0f13 Revert "Remove DartSdk.useSummary."
This reverts commit a2c3ecabce.

Reason for revert: Breaking change to de facto API

Original change's description:
> Remove DartSdk.useSummary.
> 
> R=​brianwilkerson@google.com
> 
> Change-Id: Ifa851f4af47a973d65c528c6d07fcac0a515134b
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149495
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>

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

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

Change-Id: I9998bedb74ea940371f18ac7dce42b2f5dcc3b98
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149687
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-06-02 15:20:32 +00:00
Konstantin Shcheglov 24c50fb8b2 Issue 35710. Test switch exhaustiveness, improve for null.
Bug: https://github.com/dart-lang/sdk/issues/35710
Change-Id: I6f17db1a9b2c01ec4b97538e224146fd3cec9002
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149606
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-31 18:58:53 +00:00
Konstantin Shcheglov a2c3ecabce Remove DartSdk.useSummary.
R=brianwilkerson@google.com

Change-Id: Ifa851f4af47a973d65c528c6d07fcac0a515134b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149495
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-30 19:07:32 +00:00
Konstantin Shcheglov 439e99483f Remove DartSdk.getLinkedBundle().
R=brianwilkerson@google.com

Change-Id: I2335ad03856b73e6d864d939a90839ef85dcab78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149487
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-05-30 03:16:51 +00:00
Konstantin Shcheglov 89782c96d9 Implement changes to return type verification.
https://github.com/dart-lang/sdk/issues/41803
https://dart-review.googlesource.com/c/sdk/+/149163
https://github.com/dart-lang/language/pull/989

Change-Id: I13caf53a3e96c7b266dd3b3bf511002addcf83b6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149373
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-05-29 23:09:37 +00:00
Konstantin Shcheglov 6a551f8d54 Use allowed_experiments.json when building SDK summary (reland).
Landed: https://dart-review.googlesource.com/c/sdk/+/149052
Reverted: https://dart-review.googlesource.com/c/sdk/+/149201
Change-Id: Ief9430c58254fe8cbdcedc8d3678c61d4c086f67
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149364
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-29 16:31:35 +00:00
Paul Berry 2e261f9386 Migration: add locations to trace entries that refer to elements.
Bug: https://github.com/dart-lang/sdk/issues/41402
Change-Id: I0dc59ae9d64c6e8ab470b2ddcb5fd42557ba5704
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148742
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2020-05-27 21:52:14 +00:00
Konstantin Shcheglov 279024d823 Deprecate InstanceCreationExpression.staticElement
Change-Id: I3c2de8ce22944963418d543b887720db15badd0d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148981
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-05-26 22:56:42 +00:00
Konstantin Shcheglov fc1a782168 Remove support for '--package-root'.
Bug: https://github.com/dart-lang/sdk/issues/41197
Change-Id: Ia10946b4db2204cc11e78a1d114578ba79904e78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149045
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-26 21:33:32 +00:00
Parker Lougheed 2e89bcfc7d Fix prefer_conditional_assignment lint suggestions
This is a step towards moving towards the 1.9.0 version of pedantic which includes this lint.

Change-Id: I59a8d8d7a2c377a007cc08fdf7eef8c60203466d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148986
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-05-26 17:46:08 +00:00
Konstantin Shcheglov df695b84d1 Rename element model modifier setters to isXyz.
Change-Id: Icdcedff8d5af0777851200bacf54428a229d359e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148510
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-19 04:02:09 +00:00
Konstantin Shcheglov 0324ce28bc Use hasLegalReturnType flag instead of a type check.
Change-Id: If2caa49aad6e3300e0ffe5de23095d2e824fb3ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148467
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-18 20:49:06 +00:00
Konstantin Shcheglov 3ebcc10acd Issue 41938. Report INSTANCE_MEMBER_ACCESS_FROM_STATIC for extension members.
Bug: https://github.com/dart-lang/sdk/issues/41938
Change-Id: I95364cb460eacf8076de9a12f4975eb7b1963916
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148501
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-18 19:36:17 +00:00
Konstantin Shcheglov 08bad91aa3 Fix for crash 'C?.foo'.
Change-Id: I9e03b056c9df6c476de7fa29f412c1704d6c3185
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148183
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-05-18 02:43:47 +00:00
Konstantin Shcheglov 80bd1d5970 Change the unknown type presentation to '_'.
...to align with the changes to the inference spec.

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

Change-Id: I31132f1df53924970a987d936bc3a90e9c824f90
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148232
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-15 20:03:14 +00:00
Konstantin Shcheglov 085e3d8464 Remove deprecated 'enableSuperMixins' from ErrorVerifier.
Change-Id: Ib4d74cf8f9d36d4e2917a171e8ea2dfceff7a603
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148142
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-14 19:02:01 +00:00
Kevin Moore 0acc564104 Fix a number of URIs referring to dartlang.org
Change-Id: Ie1373e93092023caf5e0bcfd6bb88bfb422d5daf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147921
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2020-05-13 18:24:12 +00:00
Konstantin Shcheglov 251933ca62 Implement futureValueType() operation.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I34cca0aa0ee8ca8237a5bfb3c123bc732a279c4d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147824
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-13 15:36:16 +00:00
Konstantin Shcheglov 0861470197 Update ReturnTypeVerifier to be what the spec says.
See also https://github.com/dart-lang/language/issues/960

Change-Id: I5cfc672e7902fba15ec940afb07f324cd21da686
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147680
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-12 23:54:06 +00:00
Konstantin Shcheglov 29c340fb94 Perform return type inference using BodyInferenceContext.
Change-Id: I713a01add6da45aa03d6e15d1374297182d39116
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147420
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-11 17:20:57 +00:00
Konstantin Shcheglov 4e520824f5 Deprecated DartType.isObject
R=brianwilkerson@google.com

Change-Id: If588b23668764b07c99e327281bfeb11c8e31367
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147423
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-11 16:14:37 +00:00
Konstantin Shcheglov 81780821e8 Extract FunctionExpressionResolver.
R=brianwilkerson@google.com

Change-Id: I363f0bfe91328c2729fe268d2dcb79f61d51b91c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147338
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-09 18:19:09 +00:00
Konstantin Shcheglov b8b9f89b69 Extract ReturnTypeVerifier.
Change-Id: I1dc7333faf40f227b8be0b8fbfc4b2bd7e8e84eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147382
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-08 20:31:27 +00:00
Konstantin Shcheglov 7161036eb7 Fix avoid_unused_constructor_parameters in analyzer.
Bug: https://github.com/dart-lang/sdk/issues/41797
Change-Id: I6fb201b549a599b12d022abd6108d3418966c4f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147221
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2020-05-08 04:44:58 +00:00
Konstantin Shcheglov e6a3125492 Fix for crash when reporting ABSTRACT_SUPER_MEMBER_REFERENCE for PropertyAccess in mixin.
Change-Id: I3270ac34b837fc5940e6f4938627bb7479eff851
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/146920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-05-06 19:27:58 +00:00