Commit Graph

7128 Commits

Author SHA1 Message Date
Sam Rawlins e9dcb9f45d fix typo in factory; add mixin text for protected
Change-Id: Idab2890de1f128105a02d94a7512e4a22eba7023
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116050
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Auto-Submit: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-09 14:11:47 +00:00
danrubel cb1efb8d27 update parser to allow "late var" in NNBD
Fix https://github.com/dart-lang/sdk/issues/38022
Fix https://github.com/dart-lang/sdk/issues/37857

Change-Id: I9ddfeddd424312e584b67bb1f42c73957ed7b05c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116243
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-09 05:26:16 +00:00
danrubel fb73cb19e6 update parser to report MixinDeclaresConstructor error
Change-Id: I4750ff522046cbcc6bab561d189f578a8e8fd8d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116241
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-09 05:26:16 +00:00
danrubel b6f6240013 fix extension factory declaration in AST
Constructor declarations within extensions are invalid and the parser
reports an error. This modifies AstBuilder to add the declaration
as a method declaration in order to get navigation, search, etc.

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

Change-Id: I6071a8d5a742d6598f18a831688ddc97e411f76f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116100
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-09 05:26:16 +00:00
danrubel 618b56d24d fix conditional expression parsing with NNBD enabled
Fix https://github.com/dart-lang/sdk/issues/38113

Change-Id: I06ebb5ee6260dfa97969a7d11b8c66c48d2ae766
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116054
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-09 05:26:16 +00:00
Konstantin Shcheglov 3d3bbc2dbf Remove 'strongMode' flag in StaticTypeAnalyzerTest.
R=brianwilkerson@google.com

Change-Id: I85c0a0a5fd9ea2f0814906f44ce922c70f0c842e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116088
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-07 15:01:23 +00:00
Konstantin Shcheglov 116cfbaa2d Issue 38198. Fix for isMoreSpecific() extension.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/38198
Change-Id: I734d2353b9064a1a0e007495a1df546873e15c8f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116142
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-07 14:53:20 +00:00
Konstantin Shcheglov 2c219ddb07 Replace AnalysisContextFactory with TestAnalysisContext.
R=brianwilkerson@google.com

Change-Id: I45ac78530061478e4835bd78355ab9f089f80879
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116047
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-06 22:47:36 +00:00
Sam Rawlins cf94c3a2fa Additional tests verifying interaction between mixins, static
extensions, and visiblity annotations (protected, visibleForTemplate,
visibleForTesting).

Change-Id: I7dc09aa0d12ea917c4c8c8235efc4554b8287379
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116048
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Auto-Submit: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-06 22:20:57 +00:00
Konstantin Shcheglov ffd50c0dc5 Report EXTENSION_AS_EXPRESSION, set type fo dynamic.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/38203
Change-Id: Iee270b7b3fecbeaba202c304f21ef703a8567674
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116055
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-06 22:14:34 +00:00
danrubel 152aa5a6ed fix calls following null-assertion operator
Fix https://github.com/dart-lang/sdk/issues/37708

Change-Id: I46ed01cef1eb426e7e28c481d98cb04ac0eed44c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116046
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-06 20:48:17 +00:00
danrubel 4e4047a52f fix extension abstract method error
This changes EXTENSION_DECLARES_ABSTRACT_MEMBER to be a parse error
and moves it into the parser so that it is generated for all of CFE.

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

Change-Id: Iba2876eb2db83e96ec49adc49a7b6a0e7aff200b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116002
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-09-06 19:50:17 +00:00
Konstantin Shcheglov 0d63ce1d0c Clean up MockSdkElements.
R=brianwilkerson@google.com

Change-Id: I378bc57d08119d4a82315f1e181b934e3d7e17e4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116045
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-06 19:14:39 +00:00
Konstantin Shcheglov 17c06c342e Unify to single TypeProviderImpl.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I93b0f9956cd9a138cdaa94a95a9d3eea4c0a6b62
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115776
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-06 16:01:00 +00:00
Konstantin Shcheglov 0a49ddef73 Remove previewDart2 related code in some tests.
PreviewDart2Test in element_resolver_test.dart was replaced with
AstRewriteMethodInvocationTest recently.

R=brianwilkerson@google.com

Change-Id: I8d8d9a6889f13f3ae5deb8d062d520338a50b43e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115903
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-06 14:40:40 +00:00
Konstantin Shcheglov 836039e9b6 Add MockSdkElements for creating dart:core and dart:async mocks.
Switch AnalysisContextFactory to using it.

TestTypeProvider will also use it, via TypeProviderImpl from another CL.
https://dart-review.googlesource.com/c/sdk/+/115776

R=brianwilkerson@google.com

Change-Id: Ib6a26c84e08d024b64146c0631ece35d8a4d32cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115960
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-06 14:25:59 +00:00
Konstantin Shcheglov 2246f0a8a3 Compute constant dependencies for constructor elements in canBeConst().
R=brianwilkerson@google.com, pquitslund@google.com

Change-Id: I92871e880e669aca5447f6fe7d7a8249421e7c44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115613
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-06 03:29:28 +00:00
Konstantin Shcheglov 35f45f0ee4 Do null-aware shorting for IndexExpression.
R=brianwilkerson@google.com

Change-Id: I72e6aabb4fd2f79201ee1146e6ea83aa54ceb7a6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115763
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-05 23:52:39 +00:00
Konstantin Shcheglov 592914fb8b Don't report HintCode.CAN_BE_NULL_AFTER_NULL_AWARE when NNBD.
With NNBD we do shorting, so `foo?.bar.baz` is OK, `baz` will never be
requested from `null`, unless `foo.bar` is nullable, in which case
it is UNCHECKED_USE_OF_NULLABLE_VALUE.

R=brianwilkerson@google.com

Change-Id: Ic9bbd0f6116dfca53b8dd9cf05b557919c025d2d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115762
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-05 20:26:12 +00:00
Konstantin Shcheglov ff8b43750a Move reporting INVALID_ASSIGNMENT for compound assignments into StaticTypeAnalyzer.
R=brianwilkerson@google.com

Change-Id: Ia5355023ff5873c7d10eb60b85c5fd8a41dea417
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-05 18:29:35 +00:00
Konstantin Shcheglov 68ba13e4e8 With NNBD null-shorting is performed.
So, the type of `a?.b.c` is nullable, but the type of `c` is not.
Everything after `a?` is just not executed if `a` is null.

R=brianwilkerson@google.com

Change-Id: I705051080b8cc2bb5014355688561b0f3dccc0d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-05 16:44:13 +00:00
Johnni Winther 06ae3402d7 [cfe] Support F-bounded extensions and type variable shadowing
Change-Id: I6fa5bf13ab8524e6262a67c6f9fe4d56c8ee5046
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115246
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-09-05 11:19:53 +00:00
Konstantin Shcheglov 6eed35b60d Analyze null-aware index expression reads.
R=brianwilkerson@google.com

Change-Id: Idcd787434eae070e87adf267a016bda2a4e5703e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115600
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-05 00:58:46 +00:00
Brian Wilkerson 57314a7e2f Add fixes to create getters in extensions
Change-Id: I9a78cdeac0fddfc23f919956723a884456c4e429
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115480
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-09-04 21:13:45 +00:00
Konstantin Shcheglov 9df2b2d25f Resolution tests for IndexExpression.
Change-Id: I6e0b6a6503860f7eb232f7544afa4c0a408e3c18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115422
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-04 19:22:31 +00:00
Konstantin Shcheglov 67ac9cf52c Don't report ASSIGNMENT_TO_FINAL or ASSIGNMENT_TO_FINAL_LOCAL for late variables.
R=brianwilkerson@google.com

Change-Id: I72feef1b1e78ab787fa538d7ff87e20c04a644fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115269
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-09-03 19:38:16 +00:00
Brian Wilkerson 233b4a71ca Deprecate some unnecessarily duplicated error codes
Originally the spec made a distinction between when some of these
conditions were errors and when they were warnings. That distinction has
been removed, so this just cleans up our code to reflect that fact.

Change-Id: I3a6fdae2896eb93c6b9cacfea790cd9b553feec5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115261
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-09-03 16:01:25 +00:00
Jens Johansen 9f57cf71d7 Add a blacklist to spelling tests; spell-check all packages and sdk with blacklist
Change-Id: I5bf3d5784d2ba48568a2699bb09ae39a85be17c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115214
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-09-03 12:39:24 +00:00
Konstantin Shcheglov fc3fb37b6e Fix for 'static late' fields.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/37858
Change-Id: I0065653c876932dd3aba01d485479fc64788ed8d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115076
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-30 22:45:08 +00:00
Brian Wilkerson b6ad76845e Extensions imported via a prefix are not in scope
Change-Id: Ie3d03d0cc9d2650fdf9a737bae090235af7ef866
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115100
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-30 20:34:02 +00:00
danrubel a873bc5db3 fix extension constructor error
This moves another usage of EXTENSION_DECLARES_CONSTRUCTOR into the parser
so that it can be shared by all of CFE.

Change-Id: I3b1502eaf83fdbcc663f4a18d638230e3c5ea925
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114981
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-30 00:33:43 +00:00
danrubel 6061906a77 split endMethod into 6 separate events
This updates the parser to detect constructors vs methods
in classes vs mixins vs extensions. Rather than generating a single
endMethod event and require listeners to determine the type of
declaration, the parser now generates different events for
different types of declarations so that listeners can process
each of these different types separately.

In addition, this lays the groundwork for fixing extension declaration
error messages and moving error generation that is duplicated
in the various listeners into the parser.

Change-Id: Ia86a4bf3e6f1442ca4926c754b66e7d6e86fb47d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-30 00:33:43 +00:00
Konstantin Shcheglov c5d108a623 Build new elements for GenericFunctionType in DeclarationResolver.
Change-Id: I555c6dacebbc3187aa94bf3ce4ff8b662ca3054c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114963
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-29 20:24:05 +00:00
pq a78e0c4af0 generate errors for extensions named w/ built-in ids
Fixes: https://github.com/dart-lang/sdk/issues/38095

Change-Id: I7e328668898e46ad2e37e0e57046b2ec1cc8ccc9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114755
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-29 20:11:15 +00:00
Mike Fairhurst 14bff68ca1 Remove another unused import
Change-Id: Ifbc1fe296afacc3a01b133461d304aeea34124c1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114967
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-08-29 19:57:25 +00:00
Konstantin Shcheglov 7835190cc9 Revert: Read default values fully.
This reverts https://dart-review.googlesource.com/c/sdk/+/114780,
because it causes other stack overflow while reading elements.

R=brianwilkerson@google.com

Change-Id: Id9e398bba984f364d4a1a8fcb76f71d7f39379af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114961
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-29 17:12:04 +00:00
Konstantin Shcheglov cd5bcd7ddc Fix for FieldFormalParameter with type parameters.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/38057
Change-Id: I7a24adbc4af9c2e1bc244f0ebca1a651f2c487d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114929
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-29 14:42:54 +00:00
Brian Wilkerson 6fa5b31fcc Report an error when extensions declare a static final field that is not initialized
Change-Id: I85e15ae0965ac905751b9877691cf20e9f615021
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114927
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-29 13:17:50 +00:00
Mike Fairhurst 402c3101a7 Remove unused imports
Change-Id: Ieceb2f150a8f579231bda40c92215e61adc69f7a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114922
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-08-29 06:32:05 +00:00
Konstantin Shcheglov b565c8c20f Don't serialize not serializable constant variable initializers.
R=brianwilkerson@google.com

Change-Id: If5287b11293391d8620b9843880b95f725efc5fa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114800
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-28 22:28:56 +00:00
Dan Rubel e9a44ba6a8 fix extension instance field error
This changes EXTENSION_DECLARES_INSTANCE_FIELD to be a parser error
and moves it into the parser so that it is generated for all of CFE.

See https://github.com/dart-lang/sdk/issues/37945

Change-Id: Ib49d49a20d670e0dd7d9a4cd870237d2cf87dd00
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114882
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-28 21:26:31 +00:00
Dan Rubel 15a7b57d8e split endFields into endClass/Mixin/ExtensionFields events
Change-Id: I538d21a595f957ef6080bf3bfe6f0b7299b4bc8d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114881
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-28 21:26:31 +00:00
Brian Wilkerson ed1b4ffba1 Add tests of extensions of mixins
Also refactor the minimally tests. The new tests are in the new class.

Change-Id: I59ba4fd94ce868d001098deee257d9dd5caf440c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114747
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-28 20:52:41 +00:00
Konstantin Shcheglov cb934a0402 Build types for function type type parameter bounds.
R=brianwilkerson@google.com

Change-Id: Ied38fda4d1671a9e706bffe8bcf16d953c8c973e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114760
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-28 15:57:23 +00:00
Konstantin Shcheglov 0c06fbd88f Read default values fully.
R=brianwilkerson@google.com

Change-Id: I336fa6a9d92687ebcb67eb672dabab64f75fcb43
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114780
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-28 15:15:23 +00:00
Konstantin Shcheglov 97561f78d9 Make sure that summary1 test suites run at least one test when summary2 is enabled.
This is necessary in google3, to don't fail because "No tests ran."

R=brianwilkerson@google.com

Change-Id: I8a91220c1f60dfb32a7a6f708342f4fc328ac8b6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114820
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-28 15:09:03 +00:00
danrubel 7b37cddbe8 rename ClassKind to DeclarationKind
... and add DeclarationKind.TopLevel

Change-Id: I631c0173a056e856845f02d4415c11336a796e3c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114629
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-28 00:57:42 +00:00
danrubel 52e732b786 fix constructor in extension error
This changes EXTENSION_DECLARES_CONSTRUCTOR to be a parser error
and moves it into the parser so that it is generated for all of CFE.

See https://github.com/dart-lang/sdk/issues/37945

Change-Id: Iecaf277c63d7791a4b7ac9e6583b5018821d2c18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114626
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-28 00:57:42 +00:00
Konstantin Shcheglov 3604f75cd4 Gracefully degrade if annotation uses (non-serializable) FunctionExpression.
R=brianwilkerson@google.com

Change-Id: Id0e18d14252a4140f085e1c609e59ef9ae40fb5f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114624
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-27 20:47:57 +00:00
danrubel 0328e8a7b6 sort ForwardingListener and ForwardingTestListener
Change-Id: Ib94c0c57acb8e3e4271e51205511aee4f087f3fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114641
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-27 17:54:52 +00:00