Commit Graph

8489 Commits

Author SHA1 Message Date
Konstantin Shcheglov 3b2d7b0287 Add instantiateToBounds() to ClassElement and FunctionTypeAliasElement.
R=brianwilkerson@google.com

Change-Id: I6ed8fb311471407acbd9780b8f185f537bb1c648
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129420
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-22 23:55:27 +00:00
Konstantin Shcheglov 9921e20026 Stop using ErrorProcessor in CodeChecker.
Change-Id: Ia862fec7b9ed36b11509fcb6d4e5a30e946b89e0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129336
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-21 21:03:22 +00:00
Konstantin Shcheglov 265635ad03 Don't cache in PackageBuildPackageUriResolver.resolveAbsolute()
SourceFactory already does caching.

Change-Id: I7b5d2697d7b4c79ff4aa1e7376a76dc358b57f93
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129333
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-21 20:55:21 +00:00
Konstantin Shcheglov ffd3b423ae Extract getters for typeSystem / typeProvider / errorReporter in ElementResolver.
Change-Id: I03f2a02b5b318f0f617aea7043237a39b8f7f29b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129335
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-21 20:55:11 +00:00
Konstantin Shcheglov 06177cc35d Remove uncessary check for nullable deference in method invocation.
Change-Id: Ic9c004149ff8c98ff3b42cf097491f5328064105
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129332
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-21 20:47:18 +00:00
Konstantin Shcheglov e11077da83 Don't special case null literal, it has Null type.
Bug: https://github.com/dart-lang/sdk/issues/39880
Change-Id: Ic03da57425327b151d86ca1f2d3abf1bc85bf18c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129330
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-21 20:47:08 +00:00
Konstantin Shcheglov 6aa995d579 Issue 39880. Resolve extension method invocations on null literals.
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/39880
Change-Id: Ia37c31b03858c8b1d6bd4bcd6fcbc300bb20aead
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129340
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-21 01:46:15 +00:00
Konstantin Shcheglov 36ded5cdd9 Issue 39875. Don't report unchecked nullable when resovled to an extension with nullable extended type.
Bug: https://github.com/dart-lang/sdk/issues/39875
Change-Id: I8beff226da4b301b0d2903788b44705985c89823
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129323
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-12-20 23:39:44 +00:00
Konstantin Shcheglov 9555c0a7d8 GenericInferrer gets all information from TypeSystem.
Change-Id: I1d3a5626a7ffda33ea7708b6d9f3b9a3b4f1a4f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129308
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-20 20:25:04 +00:00
Konstantin Shcheglov 8299e0693f Fix PackageBuildPackageUriResolver.restoreAbsolute()
Bug: https://github.com/dart-lang/sdk/issues/39848
Change-Id: I0a8ee0e96e0035e33370dc6c5d65e499f639d8d9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129305
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-20 19:07:44 +00:00
Konstantin Shcheglov 912e0e4085 Issue 39849. Support for null-aware invocations and extensions.
Bug: https://github.com/dart-lang/sdk/issues/39849
Change-Id: I71a16699ccb28e0d06b83b32ddf927a24984f870
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129241
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-20 16:57:30 +00:00
Konstantin Shcheglov cf2a35f661 Use DartType.getDisplayString() in as many places as possible.
We fail to do this now in Element.toString(), which also should be
converted into something like getDisplayString(withNullability), so
that we used the appropriate presentation in DAS.

I noticed some duplication for type assertions in tests, and would
like to use more shared utilities for validating types.

Change-Id: I28af74a2c96916e868887df6422ccfb640a9c01b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129222
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-20 01:11:49 +00:00
Konstantin Shcheglov 21354dccc9 Remove SdkExtUriResolver.
Initial:  https://dart-review.googlesource.com/c/sdk/+/128770
Reverted: https://dart-review.googlesource.com/c/sdk/+/128820

R=brianwilkerson@google.com

Change-Id: I446d0ddf130712e94aab756e04c91ab4b5e83aeb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-20 01:08:49 +00:00
Konstantin Shcheglov d321f6e452 Issue 39773. Don't report MISSING_DEFAULT_VALUE_FOR_PARAMETER when no default value is allowed.
This partially reverts https://dart-review.googlesource.com/c/sdk/+/126801

Bug: https://github.com/dart-lang/sdk/issues/39773
Change-Id: Ib147ed770d9bf328dd7792a37a72291070411964
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129142
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-19 23:35:13 +00:00
Kallen Tu d0049dd7f3 [analyzer] Fix inference for variant parameters leaking UnknownTypes.
Equivalent CFE fix: https://dart-review.googlesource.com/c/sdk/+/128771
Allows variance_unconstrained_inference_test to pass in analyzer and
fixes issue with the inference leaking UnknownTypes.

Change-Id: Iac00505c06f4a0691cd5a5f5421b9cd102e0636c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129144
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Kallen Tu <kallentu@google.com>
2019-12-19 21:28:53 +00:00
Konstantin Shcheglov 5c6d95d067 Implement NNBD_TOP_MERGE.
https://github.com/dart-lang/language/blob/master/accepted/future-releases/nnbd/feature-specification.md#classes-defined-in-opted-in-libraries

Change-Id: I48a67410d0e065349348f2590b2d69546054aec3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128621
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-12-18 22:04:11 +00:00
Konstantin Shcheglov 82f1f2f1b0 Remove AnalysisOptionsImpl.strongModeHints
Change-Id: I61b8aefb4935160bec20e52fb9c9482079387c74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128848
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-18 20:11:16 +00:00
Konstantin Shcheglov 78c2a6a101 Remove StrongModeCode.DYNAMIC_INVOKE
Change-Id: I99c158823bf9c30e6950619548f09eb7070607ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128844
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-18 17:37:31 +00:00
Konstantin Shcheglov a3ea61c3d0 Remove StrongModeCode.IMPLICIT_DYNAMIC codes.
Internal presubmit is green.
https://test.corp.google.com/ui#id=OCL:286100469:BASE:286100526:1576636805426:a3f44b2a

Change-Id: I6a239a39c5b71418d5bdd4f152b60fea9322099b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128821
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-18 07:02:15 +00:00
Konstantin Shcheglov b6e051e2c8 Use StaticWarningCode.DEAD_NULL_COALESCE instead of hint, use isStrictlyNonNullable().
Change-Id: I626745a7114b9403419d62307b79282f46fff985
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128803
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-18 01:55:05 +00:00
Konstantin Shcheglov becb0c0b85 Revert "Remove SdkExtUriResolver."
This reverts commit 7ef8822c2a.

Reason for revert: breaks Flutter build because dartdoc is not updated there yet.

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

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

Change-Id: I0c9a26662a6fe6abac558313c14949886364d28e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128820
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-18 01:07:34 +00:00
Konstantin Shcheglov 7ef8822c2a Remove SdkExtUriResolver.
R=brianwilkerson@google.com

Change-Id: If0d7bb91e9b1c42e15935b315288fa8e3a000c6d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128770
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-18 00:22:15 +00:00
Konstantin Shcheglov 8b204d477d Remove StringUtilities.startsWithChar()
R=brianwilkerson@google.com

Change-Id: If05d2fcf0f60c3bd2b2319cf38cf463dcdc0e336
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128768
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 23:14:00 +00:00
Konstantin Shcheglov 2655f82326 Report UNNECESSARY_NULL_AWARE_CALL for IndexExpression and cascades.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Iea413e69fd9f92f99bb8a3f9f1f9c399fa61e719
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128802
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 23:05:54 +00:00
Konstantin Shcheglov f3ffe7d3fd Use isStrictlyNonNullable() to report UNNECESSARY_NULL_AWARE.
R=brianwilkerson@google.com

Change-Id: I993b18135c12187708c26dc10d3d2fd6ba61077c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128764
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 20:58:55 +00:00
Konstantin Shcheglov 59db147781 Remove Scope.getSource()
R=brianwilkerson@google.com

Change-Id: I43b14ca75a63c394df9f69f6c6a36825619ef3f2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128763
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 20:35:24 +00:00
Konstantin Shcheglov d940075e6c When building interfaces in legacy libraries, convert signatures from superinterfaces to legacy.
Change-Id: Ibcaea82b2825d37a5dc98ca1757af99e70e5b8d2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128578
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 18:42:26 +00:00
Konstantin Shcheglov 88c34941bc Use getExecutableReturnType() where returnType is accessed.
R=paulberry@google.com

Change-Id: I08ef085b8bd70c8aec163ec9704a2aec0e6fbb04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128567
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 17:54:41 +00:00
Konstantin Shcheglov f25368bd82 Implement strictly non-nullable predicate.
Change-Id: I4b3e20b76b582d04ef206fce37351358c33b02f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128722
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 17:53:36 +00:00
Konstantin Shcheglov b89eb6cf16 Stop reporting INFERRED_TYPE codes.
Internal presubmit is green.
https://test.corp.google.com/ui#id=OCL:285886840:BASE:285910812:1576561195953:c64215aa

Change-Id: I6616a8ce0fd5188ae9405cdc4b82a2006fee675d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128571
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 17:01:56 +00:00
Sam Rawlins 2d332ee1d3 Make private fields final where possible
Change-Id: I16ee52f1b23e8d708e40cb482c5150f1e04d2417
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128524
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-17 06:12:39 +00:00
Konstantin Shcheglov fe36f5db02 Remove reporting NON_GROUND_TYPE_CHECK_INFO.
Change-Id: If7303fd2f24a233122cc354ad11eeedd1225c800
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128568
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-17 00:32:40 +00:00
Sam Rawlins 5dfa750393 Convert all function parameters and typedefs to generic syntax
Change-Id: I18f8644ecbe61555b2929ed09d446733d33ec2a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128521
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 23:36:38 +00:00
Paul Berry 5e474f2dce Rename TypeProviderImpl._isNonNullableByDefault.
The migration engine needs access to this boolean, so rename it to a
non-private name.  It still isn't exposed via the analyzer public API.

Change-Id: I249d152b38833d061cbe43d27e37a91b1a9fa738
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128485
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 14:11:41 +00:00
Paul Berry fba2419ed6 Create an interface for the migration engine to communicate with the resolver.
The new interface (MigrationResolutionHooks) extends the
ElementTypeProvider interface introduced in previous CLs.

This CL also contains plumbing to allow the resolver to be created
using the new interface.  In a follow-up CL I will add code to the
migration engine that implements the new interface and passes it into
the resolver.

Change-Id: I717d71e3c6dc65f136d89ca1c2a10b3f89f2f356
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128483
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 14:11:41 +00:00
Paul Berry 8fdfce7cfd Make use of ElementTypeProvider in _LocalVariableTypeProvider
Currently _LocalVariableTypeProvider has a field of type
ElementTypeProvider that is always initialized to `const
ElementTypeProvider`.  In a follow-up CL, I will introduce a code path
that supplies a different implementation of ElementTypeProvider during
migration.

Change-Id: I6929b20727a2c9502127e7e539f58340db98335e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128482
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 14:11:41 +00:00
Paul Berry 41f2655292 Make use of ElementTypeProvider in StaticTypeAnalyzer
Currently StaticTypeAnalyzer has a field of type ElementTypeProvider
that is always initialized to `const ElementTypeProvider`.  In a
follow-up CL, I will introduce a code path that supplies a different
implementation of ElementTypeProvider during migration.

Change-Id: I8ce28ffdad9f14336d79e71f9e28047e82303fe0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128365
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 14:11:41 +00:00
Johnni Winther 904a822432 [cfe+analyzer] Use TryStatement for try/catch and try/finally in CFE
This includes an alignment of assigned variables info collection between
analyzer and cfe by always collecting assigned variables info for both
the try statement and the try block.

Change-Id: I789527adc24da025a85e73cdd98392efe7fc97bd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128407
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-12-16 13:55:50 +00:00
Konstantin Shcheglov c5c4690886 Stop reporting several StrongModeCode(s).
Change-Id: I8d2f165a6fb570f82b8d2506dfa5602f8e89bba1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128342
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 00:58:06 +00:00
Konstantin Shcheglov 6ea97cd853 AnalysisSession is required for LinkedElementFactory.
We now use sessions during linking, so during build mode, so we have
to provide it.

R=paulberry@google.com

Change-Id: Ia683a19e89d4fc0d74cdb802e8a81c7b934ca611
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128464
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 00:50:36 +00:00
Konstantin Shcheglov 99ba43c413 Look up concrete members when checking for PRIVATE_COLLISION_IN_MIXIN_APPLICATION.
Originally specified in https://github.com/dart-lang/sdk/issues/28809
There was a couple of holes in our unit tests, so we missed a
rare situation when the issue should not be reported.

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

Change-Id: Iaf35a7755c4ac4fc69bd86c56f18dc0a952bf7fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128523
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-16 00:36:36 +00:00
Paul Berry b55cdfc2aa Make further use of InheritanceManager3 in ElementResolver.
Change-Id: I7f0e29baf78eaf7861864646e7282d51b60cdca6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128311
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-12-15 22:06:26 +00:00
Paul Berry 24b99838f4 Make use of ElementTypeProvider in MethodInvocationResolver
Currently MethodInvocationResolver has a field of type
ElementTypeProvider that is always initialized to `const
ElementTypeProvider`.  In a follow-up CL, I will introduce a code path
that supplies a different implementation of ElementTypeProvider during
migration.

Change-Id: I205558266baacc83cf6e20d37fd6cf7cf489680e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128364
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-12-14 22:54:15 +00:00
Paul Berry 3ff5053546 Make use of ElementTypeProvider in ElementResolver.
Currently ElementResolver has a field of type ElementTypeProvider that
is always initialized to `const ElementTypeProvider`.  In a follow-up
CL, I will introduce a code path that supplies a different
implementation of ElementTypeProvider during migration.

Change-Id: I9fa0d28c8edeb11a34ca80ee55e32bbf018f6d8d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128303
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-14 22:54:15 +00:00
Paul Berry 441db01e28 Make use of ElementTypeProvider in ResolverVisitor.
Currently ResolverVisitor has a field of type ElementTypeProvider that
is always initialized to `const ElementTypeProvider`.  In a follow-up
CL, I will introduce a code path that supplies a different
implementation of ElementTypeProvider during migration.

Change-Id: Ifd79334243382046f3d19607ab40218410d22270
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128281
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-14 22:54:15 +00:00
Konstantin Shcheglov ae3973da40 Use FeatureSetProvider in AnalysisDriver.
So that package_config.json can be used to opt-out from context
specified features / experiments.

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

Change-Id: I5e62d733eda6939d66d942eb3d690583f6091a57
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128369
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-14 21:06:04 +00:00
Paul Berry 09a0b040dd Deprecate InterfaceType.lookupXyz, add new InheritanceManager based implementations.
With proposed changes to nullability suffixes and inheritance, we
better consolidate lookups in one place.

Change-Id: Id02fd9a470ea83e83af061b1d92fdbc90092a1a9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127721
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-12-14 14:22:26 +00:00
Konstantin Shcheglov 6c99171686 Report CompileTimeErrorCode.EXPORT_LEGACY_SYMBOL
Change-Id: Icd43121a4d7f20fdecc1bff8ced6b9378ce94149
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128377
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-14 01:14:55 +00:00
Sam Rawlins 40718899fe Fix pedantic 0.9 lints around collection literals and spreads
Change-Id: I64277c36fbeb4ea7a1bb429a8e0a40203520c883
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128380
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-12-14 00:15:41 +00:00
Konstantin Shcheglov 0fbce8238d Remove NameFilter.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I684bda477d35b40fc812113e126d1f4ad70302b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128371
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-12-13 20:33:11 +00:00