Commit Graph

3034 Commits

Author SHA1 Message Date
danrubel 627e4c8cad Parse additional NNBD not-null assertions
Fix https://github.com/dart-lang/sdk/issues/37708

Change-Id: I2fc696663d2dd03c5af44fe204fe6058674b5134
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111987
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-06 01:17:47 +00:00
Konstantin Shcheglov 28a4717476 Don't overwrite synthetic field setter with duplicate setter.
R=brianwilkerson@google.com

Change-Id: I006b6e845b5359d02f0f60b48bf89544b2ed80c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111966
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 18:02:41 +00:00
Johnni Winther 6eb9f54683 [cfe] Add ClassKind to Listener.begin/endClassOrMixinBody
This allows for special-casing extension declarations bodies. This
is needed because the on-clause hold the type of the parameter holding
the `this` value inside an instance method in an extension declaration.

Change-Id: I7af9bf0a9842f7e6f42dddb54fb487c69a8fa519
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111729
Reviewed-by: Dan Rubel <danrubel@google.com>
2019-08-05 17:15:37 +00:00
Konstantin Shcheglov ae2a06171c Fix for enclosingElement for default parameter element initializer function.
This fixes another error found by Mike's fuzzer.

R=brianwilkerson@google.com

Change-Id: Id16a280949d14ce7589d47a88faf9a038c588e04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111961
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 16:45:17 +00:00
Brian Wilkerson ee6fa7c10d Move more diagnostic tests
Change-Id: I0b5ec1af7dd21298136788e3a7c1898f626acc22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111982
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 16:17:37 +00:00
Konstantin Shcheglov 919b5cd2d5 Fix for duplicate top-level declarations.
This fixes one of the errors which Mike found with fuzz tester.

R=brianwilkerson@google.com

Change-Id: I987f47746c8721d9a39de0c186cf4c3776f66611
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111960
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-05 14:29:55 +00:00
Konstantin Shcheglov 0e24437b81 Replace InterfaceType with Substitution in Member(s).
I ran it in google3:
https://test.corp.google.com/ui#id=OCL:261214112:BASE:261244079:1564722983792:f6286cfb

Change-Id: I820d2dbbaefe495c20b0d8fe3f7c54f1766d5689
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111383
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-02 19:34:18 +00:00
danrubel 86acffa440 fix prefixed type recovery crash
This fixes a crash when parsing an invalid prefixed type preceding a list literal.

Fix https://github.com/dart-lang/sdk/issues/37674

Change-Id: I43e84248c8addf6ed744fa0a836595a53a332d75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111441
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-01 02:52:11 +00:00
danrubel 3b1cb90146 allow void in extension declaration header
Fix https://github.com/dart-lang/co19/issues/449

Change-Id: I301c2472df3206c64462fc42936c736562c6d95a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-07-31 15:01:54 +00:00
Konstantin Shcheglov c12deff784 Test that AMBIGUOUS_EXPORT is reported for extensions.
R=brianwilkerson@google.com

Change-Id: I5b89b6216d7f6d679f176cc9492407ab4bbdf77b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111262
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-30 16:03:09 +00:00
Mike Fairhurst 2f96be9ee3 [analyzer] Allow references of 'this' in late field initializers
Change-Id: Ic464a1d8402404ca79f2281780bf3d408bbb948a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110550
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-07-29 20:23:03 +00:00
Konstantin Shcheglov 1a0fe21fb2 Add ExecutableElement(s) based InheritanceManager3, and switch analyzer to it.
This reverts commit b8614ca613.

Change-Id: Ic31ee323b21311d8a89f50bcb533316eb55f75e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110941
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-07-29 19:02:24 +00:00
Brian Wilkerson 8cde797a49 Move more diagnostic tests to separate files
Change-Id: I3d1084f41fde3f84024111b8e4f140e37400f227
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111000
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-29 16:17:08 +00:00
Konstantin Shcheglov d116c67192 Fix promoteToNonNull() for the case when the type parameter bound is null.
Maybe we should change TypeParameterElement so that 'bound' is never
null, and instead returns Object.

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

Change-Id: Id7ecbe40e5bed24f0e5b4cc041a2883f5264b4c0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110960
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 15:39:27 +00:00
Konstantin Shcheglov e5a6fca9a4 Use isDartCoreDouble/Int/Num in TypeSystem.
Update StaticTypeAnalyzer to no attempt to perform refinement on
extension overrides.

R=brianwilkerson@google.com

Change-Id: I314117b624b30af8857c899cdfa7f3eb36152b5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110942
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 13:27:32 +00:00
Konstantin Shcheglov 6d55c7745f Revert a test expectation difference.
R=brianwilkerson@google.com

Change-Id: I8f5250db292eb03bd4b3244caf9bb98f53562af2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110961
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-29 13:27:22 +00:00
Paul Berry b8614ca613 Revert InheritanceManager3 changes.
These changes were inadvertenly rolled out in a way that breaks
clients, so we need to stage them out more gradually.  See discussion
at
https://dart-review.googlesource.com/c/sdk/+/110552/2/pkg/analyzer/lib/src/generated/resolver.dart#3768

This reverts commit 5b5ddeda92.
This reverts commit e76879acc4.
This reverts commit 27bec56744.

Change-Id: Ic80a577b1cdc4a6c89ca06afceae01af6621d3e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110841
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-07-28 13:54:09 +00:00
Konstantin Shcheglov c5da55311a Fix promoteToNonNull() to support type parameters.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I89202210ee458a2a74f98d5dc09f8c2f00c98c09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110746
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-26 23:03:45 +00:00
Konstantin Shcheglov d742779f04 Fix LeastUpperBoundTest tests for mixins.
When https://dart-review.googlesource.com/c/sdk/+/107444 landed,
it uncovered an issue in the mixin tests added in
https://dart-review.googlesource.com/c/sdk/+/110684

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

Change-Id: If67d926f9762494693220ef39c8c8d5833d1c45e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110744
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-26 17:23:38 +00:00
Konstantin Shcheglov c49eeadd2a Remove workarounds for http://dartbug.com/37587
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/37587
Change-Id: Ic97738593996bbd1a77b1d62a967fa703ecb6e32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110700
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:37:21 +00:00
Konstantin Shcheglov a42f5a668f Include mixin superclass constraints into superinterfaces.
https://dart-review.googlesource.com/c/sdk/+/110348 uncovered an
issue that would have failed with assert() and returned null as LUB.

Found 3 failing tests while running presubmit in google3.

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

Change-Id: I7da3ad77f71262f68c5e16ab3d27e4ff43ab438f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110684
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:24:16 +00:00
Konstantin Shcheglov 27bec56744 Add ExecutableElement(s) based InheritanceManager3, and switch analyzer to it.
Initial: 5d6bab4ed2.
Reverted: 39afa4e555
Change-Id: If611f96e6b0156ec218831dd64305e6ccf02e312
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110552
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-26 16:16:11 +00:00
Konstantin Shcheglov b9ab8efca6 Implement LUB for interface types with nullability.
Using InstantiatedClass is a necessary step for fixing DartType.==
https://github.com/dart-lang/sdk/issues/37587

Change-Id: Ia959d841778b3894f50f47b7490b59b9d7ab6ba6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110348
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-25 17:48:24 +00:00
Konstantin Shcheglov 48662bdb94 Report not initialized potentially non-nullable instance fields.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Id762e0cf651b2f2d7199f3447b5bf305b1a584c8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107567
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-07-23 23:17:32 +00:00
Dan Rubel 9c148623c5 prepend missing hex digits error token
This prepends (rather than append) another error token to the token stream
similar to https://dart-review.googlesource.com/c/sdk/+/110100

In addition, this addresses a comment in
https://dart-review.googlesource.com/c/sdk/+/110140

Change-Id: I27c739b0ee3213cdbce92c3ff18c31fde862251c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110141
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-07-23 18:08:37 +00:00
Dan Rubel 76128480ae fix bug in invalid constructor initializer recovery
Fix https://github.com/dart-lang/sdk/issues/37600
Fix https://github.com/dart-lang/sdk/issues/37029
Fix https://github.com/dart-lang/sdk/issues/37049
Fix https://github.com/dart-lang/sdk/issues/37110
Fix https://github.com/dart-lang/sdk/issues/37147

Change-Id: I9bc94991e71550410c02332bfd80faef50c229a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110140
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-07-23 16:42:54 +00:00
Dan Rubel d7cb52b863 capture more info to debug 37528
This updates the exception message to capture more information
about where the exception is occurring. Hopefully that information
can be used to fix https://github.com/dart-lang/sdk/issues/37528

Change-Id: Iaf10395091f8bd8b540dddc59001f23b6dc6a073
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-07-22 20:18:17 +00:00
Johnni Winther b3b6533c3d [cfe] Create ClassBuilder for extension declarations
Change-Id: Ic372b89588ed9ec3afc43f7db7e3d38a81846ad5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109264
Reviewed-by: Dan Rubel <danrubel@google.com>
2019-07-22 16:00:28 +00:00
Konstantin Shcheglov 8dc4148516 Add await to all assertErrors/assertNoErrorsInCode tests.
R=brianwilkerson@google.com

Change-Id: I5bf1b77ba5224ae5b250a3aa849c1e6da057ac3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109480
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-17 20:59:14 +00:00
Brian Wilkerson e80f779914 Add context messages for equal map keys and set elements
Change-Id: If1a2af91f35f869f7a9df89d0729949d5098c3b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109181
Auto-Submit: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-07-16 13:14:02 +00:00
pq 8e094cd94f extension element factory helper
Change-Id: I98f92dfe72537fa03db9bb5ce5c80b79e032836a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108940
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-12 17:03:43 +00:00
pq 5d7bdc3cae extension method tests (and fix for duplicate entries)
Change-Id: Ib8b5f80106cf05bf72c705266146e0705cacd771
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108881
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-12 14:04:53 +00:00
Brian Wilkerson 3ee54f8305 Move more diagnostic tests
Change-Id: Ic5de1d807926c5aeeb8c5ee882ee3cbe8f9f2cf9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108904
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-12 12:39:54 +00:00
Konstantin Shcheglov 4a56e6169e Update test expectation for enabled constant-update-2018
R=brianwilkerson@google.com

Change-Id: I059e7aa29a58c78fde9b8c62e6bd295ed841e297
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108684
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-10 21:56:01 +00:00
pq 016061d159 libray imported extensions
Change-Id: Ibe2f772886b42cf0ccc577a55106dc33cf690b7c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108662
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-07-10 19:17:58 +00:00
Brian Wilkerson de2ff7eebb Split out the remaining HintCode tests
Change-Id: Ief95dda424d458d9ad1739df99c5533738559508
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108620
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-10 14:58:14 +00:00
pq 8f90265176 de-lint collection size checks
Change-Id: Id8e7ce2ec59ad7cd2b0b9c961594a37d4fef621a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108522
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-07-10 13:46:43 +00:00
pq f939ad3964 library scope extensions
Change-Id: I060ddd02145d949b0becf7d2fb20f2ca01401766
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108461
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-09 19:27:43 +00:00
Vyacheslav Egorov a86db84e0a [fasta] Preserve information about const constructors in outline.
- for classes with const constructors parse field initializers;
- for const constructions parse initializer lists and default parameter
values;

Fixes issue https://github.com/dart-lang/sdk/issues/37357
Fixes issue https://github.com/dart-lang/sdk/issues/36635

Change-Id: Iff0e47f8bd2925cee9f42a2b309de4de84e99cad
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108279
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-07-09 14:02:01 +00:00
Brian Wilkerson 588ab11ecc Unify two error codes that are essentially identical
The original reason for the difference is that one was used for run-time
exceptions that become static errors in constant evaluation, but that
distinction does not seem to be necessary any more.

Change-Id: Ie16ad623e292f9755cbe316755210097870a1515
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108301
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-07-06 15:19:18 +00:00
Johnni Winther b8a8cfdcda [cfe] Use InvalidExpression for await on non-async context.
CFE failed to replace an invalid AwaitExpression in a non-async context
with an InvalidExpression. The lead to untransformed (and thus unexpected)
await expressions crashing the hot reload.

Closes #37108

Change-Id: I4457925b20749d231cbf9dac80203ee9b381a312
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107501
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-07-04 08:30:45 +00:00
Vyacheslav Egorov 9f32f9b87e [cfe] Store the initializer tokens in constructor builders
For const constructors, we need to compile the initializer expressions
and write them into the outline so that we can perform modular
constant evaluation.  As a first step, preserve the tokens for the
initializer expressions in const constructor builders when building
the outline.

Currently they are discarded later during outline building at the
point when we should compile them instead.

Change-Id: Ief8d94ceb752b2315982d720836496b7d597e55c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107509
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-07-03 10:52:35 +00:00
Paul Berry a2e1434603 Breaking changes for analyzer version 0.37
Change-Id: I65a16ab2d2ca05de701c27f08300de85a6316b41
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99880
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-07-02 03:59:49 +00:00
Konstantin Shcheglov 0baf81e7d6 Tests for Never and potential nullable / non-nullable.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Iad0f455f67a9593ebca20b97a91369fc59023c87
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107701
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-07-01 00:10:58 +00:00
Brian Wilkerson 6941d04a6e Add support for testing the context messages for diagnostics
Change-Id: I33d4abc0dcc969f3beecfdc7cbc814e8a486ad1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107142
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-24 18:15:38 +00:00
Konstantin Shcheglov c13752442c Fix isNullable / isNonNullable, expand tests.
This addresses the issue in a previous CL.
https://dart-review.googlesource.com/c/sdk/+/106620/3/tests/language_2/nnbd/static_errors/equals_parameter_made_nullable_at_invoke_test.dart#30

Change-Id: Ib510ddbfe42c8e6d7cb0c4793a30e050b7e56bd0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106962
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
2019-06-24 16:53:36 +00:00
Mike Fairhurst 9b5ddec382 Better FutureOr support, failing test.
Change-Id: Ib662286a58fb9389ce1065d87835613f3b899be4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106968
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-06-21 20:09:38 +00:00
Konstantin Shcheglov bd1ffcb2bd Support for type formals in function LUB.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I5576db2279810bf1e4fc4a73870f60ca50166ee7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106924
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-21 14:35:27 +00:00
Konstantin Shcheglov 5469d61e18 Tests for isNullable() and isNonNullable() and type parameters.
R=brianwilkerson@google.com

Change-Id: I120363de7067be8665995bbe2353f29240c9b961
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106601
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-19 16:38:45 +00:00
Dan Rubel 99acf35ede fix indexed super constructor
This fixes a bug where the AstBuilder fails
given a constructor of the form:

class C {
  C() : super()[];
}

In the process, 2 buildInitializer methods were extracted from
the AstBuilder.endInitializers method.

Fix https://github.com/dart-lang/sdk/issues/37285

Change-Id: Icacf28b2ed0eff9b7168c97ee0c03d78e5fcd68b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106500
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-06-18 17:59:35 +00:00