Commit graph

64402 commits

Author SHA1 Message Date
Robert Nystrom c1b56a9ea0 Catch the test_runner codebase up to somewhat modern practices.
- Run dartfmt --fix. This converts JavaDoc comments to "///", removes
  "new" and extraneous "const", and a couple of other things.
- Fix SCREAMING_CAPS constants to lowerCamelCase.
- Use collection literals where possible.
- Use UI-as-code in a couple of places where it seemed obvious.
- Use "var" for more local variables.
- Use "const" instead of "final" when possible.
- Make members private when possible. Deleted a few that then became
  obviously unused.
- ".length > 0" -> ".isNotEmpty".

There are no meaningful changes.

Change-Id: Ic6c5a74b2af9b3ebcbe881dbed69f65488bdef09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105880
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2019-06-15 01:02:50 +00:00
Robert Nystrom 99e8a9fba5 Move the test runner (i.e. "test.dart"/"test.py") to pkg/.
This makes it an actual Pub package like most other code inside the SDK
repo. The main goal is to make it easier to write tests for the test
runner itself.

This change:

- Moves all of the code from tools/testing/dart/ over to
  pkg/test_runner. Most of it ends up under test_runner/lib/src.

- Move tools/testing/dart/main.dart to
  pkg/test_runner/bin/test_runner.dart.

- Move standalone_2/io/test_runner_test.dart to
  pkg/test_runner/test/test_runner_test.dart. I don't think it currently
  works, but it wasn't being run in its old location either.

- Add test_runner to the analysis-server bot. This ensures the
  test_runner package is static error clean.

- Remove standalone_2/io/test_runner_analyze_test.dart which used to
  attempt to do the above and is no longer needed.

- Update test.py to look for the test runner at its new location.

- Add test_runner to the repo .packages file and remove the weird
  test_dart pseudo-package. (I think this fixes #35279.)

- Remove status file entries for the removed standalone_2 tests.

There are no code changes to the test runner itself aside from fixing
up import paths.

Change-Id: I3d05d50d222b291848fa5a30de2846e803bc81e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105821
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
2019-06-14 23:35:10 +00:00
Stephen Adams 3bacc84c1e [js_runtime] Install general stubs
These stubs always throw so test should not pass for the wrong reason.

Change-Id: Ie9d00046d3c7e34b8b53798f1c20eb14807e8632
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106183
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2019-06-14 22:56:00 +00:00
Nicholas Shahan 177f425012 [dartdevc] Fix violations of library_prefix lint
Rename the library prefix used in imports from `JS` to `js_ast`. Create more of
a distinction between:
* `JS` the library.  Now named `js_ast`.
* `js` the const instance of a JSBuilder.
* `JS` the helper to inline javascript in the SDK patches
  and runtime libraries.

Ignore the lint in the js_ast directory to avoid additional diffs for the
eventual un-forking of the package.

Cleanup a few unused imports.

Issue #37218

Change-Id: I039c1048876d9d9ad424fbec3ad555d300845a3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106160
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-06-14 22:48:40 +00:00
Brian Wilkerson 047bacc94c Add support for symbol literals
Change-Id: I273b2290b8d4d2e0948fac1962d02efc70e7813e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106163
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 22:13:40 +00:00
Stephen Adams 11cc292383 [dart2j] Add TypeEnvironmentStructure and TypeRecipe
These will be tracked through SSA to generate correct recipe strings.

Change-Id: Ifebeead0f39d87be3208c673e34793145c64cf23
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106181
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2019-06-14 22:10:19 +00:00
Konstantin Shcheglov d342402c80 Always ensure TypeProvider, even with external summaries include the target library.
There is at least one case (but not many) when this happens internally.

R=brianwilkerson@google.com

Change-Id: Ic940cb836f58467d40ed7b31cb8bb43cf12eee50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106165
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 21:57:34 +00:00
Konstantin Shcheglov d4cad0fff1 Restore element and typeArguments for typedef-based _FunctionTypeImplStrict.
R=brianwilkerson@google.com

Change-Id: Ibc7fc53aba10661236f0d3f3361bf7f05882cc5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106162
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-14 21:55:20 +00:00
Mike Fairhurst 2eebc1024c Refactor non-bool expression checks
Change-Id: I4da7abe3293c4dbf7218f3a276cf9418b3d14f19
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106000
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 21:50:30 +00:00
Brian Wilkerson 9bb678f88b Add support for is expressions
Change-Id: I3be70d83b03a4d00a68070fb03ba2ab989880a9e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106161
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-14 21:43:50 +00:00
Mike Fairhurst c246fa1f2b Fix #36956, report undefined getter for uses on Null.
Bug: 36956
Change-Id: I5b8f40f5c1f7fd9304b02054e3d8d7d607c12af1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106021
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-14 21:29:29 +00:00
Brian Wilkerson f56df4a251 Add support for double literals
Change-Id: I08ea12bb0213272b192d063fd3699b2495912077
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106140
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 19:57:26 +00:00
Mike Fairhurst fa885b3eae report undefined operator instead of method for bad +=.
Change-Id: Ia28fdb47c80768b011b05edc1e3e7b832f9335e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105971
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-06-14 18:56:07 +00:00
Paul Berry fc5eb09cb9 Migration: remove getUpstreamNodes
This method was unnecessary--the same functionality can be provided
more efficiently by getUpstreamEdges.

Also fixed a doc comment error in getUpstreamEdges.

Change-Id: I44560eced353b57e00b06e57c8c628de79d689e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106121
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-14 18:31:57 +00:00
Brian Wilkerson 1e454a1c1b Add some missing visit methods from the visitors
I'll start implementing them and adding tests in future CLs.

Change-Id: Ic8cb5ed9bd00f05232869d7f4c585daa5d5ab4c6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106122
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 18:03:37 +00:00
Brian Wilkerson dcc85a6594 Fix exception thrown in ConditionalModification
Change-Id: I6e60bd74bc55cafca86a64a721455e0ed465a357
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106101
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-14 17:13:37 +00:00
Brian Wilkerson a02d6de474 Update documentation based on addition feedback from the documentation team
Change-Id: If028f6f3a81a827537642da9f261001588f67bf3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106120
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 17:09:37 +00:00
Samir Jindel d0447ee0da [vm/ffi] Fix ADR usage in FfiCallInstr::EmitNativeCode.
Props to Daco for identifying the stackmap issue!

Change-Id: I9a54b9db864c86e069e2fcf84b6ba71719d76a09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106086
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2019-06-14 16:54:23 +00:00
Brian Wilkerson fb85d41c08 Catch another exception earlier in the code
Change-Id: Ia9fdca760c4c0838cdb6bb31c00f296fbf21cbac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106102
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
Auto-Submit: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-14 16:02:37 +00:00
Paul Berry e3004dae0d Fix hint override_on_non_overriding_setter
Change-Id: Id0b9cf7fcfb972b77181356f0d70275ce1e3be1d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106100
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-14 14:58:27 +00:00
danrubel a2f32ebe87 finish cleanup ErrorToken parsing
Change-Id: I876c4805561d29b289184ce696fe4db2038bc362
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106005
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-06-14 13:40:17 +00:00
danrubel 6bd64ff8b2 cleanup StringScanner references
Change-Id: Ic75305c7a76860c5b96032d4f8c8fff695006f22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106004
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-06-14 13:39:47 +00:00
Samir Jindel 0460503057 [vm/ffi] Fix safepoint implementation in ARM64 assembler.
Fixes #37180

Change-Id: I4be04fbd98be2c724218da89fbd2bea78cda0c26
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106081
Auto-Submit: Samir Jindel <sjindel@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2019-06-14 13:25:27 +00:00
Stephen Adams 8cc00f8f18 [dart2js] Move embedded globals earlier
In anticipation of adding type metadata for --experiment-new-rti, move the embedded
globals earlier so they are available for generating constants.

The metadata for custom elements is split out since it depends on constants.

Change-Id: Ic99895bd1a1f7bf42a1f41948733ea001df8a8e2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106007
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2019-06-14 04:13:41 +00:00
mnordine 070c7558ff Remove duplicate line
Closes #37261
https://github.com/dart-lang/sdk/pull/37261

GitOrigin-RevId: 1d62ffb5095b0268d3115863b81963ffeb39ad3e
Change-Id: I47d304c3e3e635a7087e363ad97288b94fa85c99
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106060
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2019-06-14 02:28:13 +00:00
Ryan Macnak d47bb87a51 [vm, compiler] Disable unopt megamorphic call specialization.
Bug: https://github.com/dart-lang/sdk/issues/37260
Change-Id: I66a1661da9483529dc96be804863224d9afb9c48
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106006
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-06-14 01:17:30 +00:00
Ben Konyi 74af4a00b2 [ VM / Service ] Created public implementation of getAllocationProfile RPC
Change-Id: I8c8cb4d47466ae6a298961652eeded762c769568
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105730
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-06-13 23:45:52 +00:00
Brian Wilkerson 25292abc1d Add support for boolean negation
Change-Id: Idae8d8dbedacdd0004dff3afad2d736b3a652466
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105972
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 23:02:57 +00:00
Nicholas Shahan 35519bb13a Add DDC CHANGELOG entry intended for D24 release
Change-Id: I4420abd857b17f0135e7e879e9188843bb54f2b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106022
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-06-13 22:48:57 +00:00
Brian Wilkerson a19611b079 Improve test coverage for constructor parameters
Change-Id: Ia1a803bd52e94e15696c60c77938fd2f5c08bdaf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105981
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-13 22:20:26 +00:00
Nicholas Shahan 611ed823f0 [dartdevc] Add packages arg for creating the DDC SDK from kernel
Copied from a change by keertip@ from internal repo.
Original change ID: 253076358

Change-Id: I997ffe7c4fa0588689a2562b7b1dcd5c01837919
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106002
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-06-13 21:58:16 +00:00
danrubel 1a9801e9fa mark ExperimentalFeature bogus_enabled and bogus_disabled as deprecated
... and update comment and test output to indicate how files should be
regenerated from tools/experimental_features.yaml

Change-Id: I369b93c35b91f7a93c915f0abf9cebdd00c13f8e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106003
Commit-Queue: Paul Berry <paulberry@google.com>
Auto-Submit: Dan Rubel <danrubel@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-13 21:30:05 +00:00
Stephen Adams fa0fe94b57 [dart2js] Generate new-rti SSA instructions for checks
There is no codegen yet so almost all code compiled with
--experiment-new-rti will crash the compiler.

Change-Id: Idf542646ac3629cb02a50d44c2a98abd156047ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106001
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2019-06-13 21:21:20 +00:00
Mark Zhou 60c04b8f44 [dartdevc] DDK now outputs relative paths in source maps
Bug: https://buganizer.corp.google.com/issues/133784498
Change-Id: Ifbaae661ac401d0a935a100fbbb7fa2e42325abc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105703
Commit-Queue: Mark Zhou <markzipan@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
2019-06-13 21:16:45 +00:00
Ryan Macnak 112dbabc10 [vm] Update Megamorphic::filled_entry_count_ under the megamorphic lock.
Otherwise the background compiler may see 0 when the mutator grows the megamorphic cache.

Bug: https://github.com/dart-lang/sdk/issues/37257
Change-Id: I64a31937391ad6c0f086f8f175501ca4ef06c305
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105969
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-06-13 21:13:15 +00:00
Liam Appelbe 0f91731f98 Add Thread::optimize_(stub|entry) to runtime_api.h
Bug: https://github.com/dart-lang/sdk/issues/36839
Change-Id: Iab35c6bb322492872577545aaacc5147a76f2708
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105920
Auto-Submit: Liam Appelbe <liama@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-06-13 19:57:35 +00:00
Ryan Macnak d6eac664ee [vm] Hoist zone access in function name printing.
Change-Id: I97166486514044d0a8396cbc6bf92ae391ac4437
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97276
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-06-13 19:24:16 +00:00
Aart Bik fa7fc5fb25 [dart/fuzzer] added another ignored parameter
Rationale:
Avoids rejecting extra parameter when running
on cluster for nightly testing.
Change-Id: I34a5e02638ec93f602609e32f5e460e774656f35
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105968
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2019-06-13 19:05:04 +00:00
Brian Wilkerson e9f17ae8e8 Convert some NPEs into explicit throws and add the missing visit methods discovered by doing so
Change-Id: I0613614168a7373a460d05cf8470f9b59264de0b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105970
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 18:51:44 +00:00
Aadil Maan 9b55e3027a Update CHANGELOG.md for Dart 2.4.0 stable
Closes #37239
https://github.com/dart-lang/sdk/pull/37239

GitOrigin-RevId: 534651bc9dcf23672d829b92b07f985a3ccd529d
Change-Id: I7d53f304ebbb73ac09d3cb0157ffc2aa4e66471e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105727
Commit-Queue: Aadil Maan <aadilmaan@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2019-06-13 18:31:05 +00:00
Brian Wilkerson 9676ca0ff9 Support constructor invocations with arguments
Change-Id: I2d537121efd29f051d8f533c6f58e0ad10835301
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105964
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 18:29:10 +00:00
Régis Crelier 24c6c6f996 [vm/fuchsia] Make use of the new alignment flags when allocating memory.
Change-Id: I05994746156b35ad29d311461933359922de9959
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105545
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-06-13 18:25:40 +00:00
Konstantin Shcheglov 41a23711d9 Support for LinkedElementFactory in getLibraryElement().
R=brianwilkerson@google.com

Change-Id: I82d613d33beaaa8c46a718996993fd4c8e584d3a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105966
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 17:50:30 +00:00
Konstantin Shcheglov f9c2e3856b Store exactly GenericTypeAliasElement with FunctionType(s).
R=brianwilkerson@google.com

Change-Id: I128eaf7852eb23031d843e1d970cf62b6c975fc8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105967
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 17:50:17 +00:00
Nicholas Shahan 1e92103181 [dartdevc] Fix violations of avoid_relative_lib_imports lint
Issue: #37218
Change-Id: Id248e378d6fbe832952b8e61102da7f68536f81b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105861
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
2019-06-13 17:30:17 +00:00
Paul Berry 9d3afa537e Compute parameters before calling DecoratedType constructors.
This will allow me to put stronger assertions in the DecoratedType
constructor in a follow-up CL.

Change-Id: I375ae2b33c2f14948d9fedbdfbc000b8a1057b00
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105963
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-13 17:06:16 +00:00
Mike Fairhurst 8a5495700a Clean up null aware access test
Change-Id: I893b4cea44278d114160331b69d06d92d0e56cf1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105735
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-06-13 17:04:06 +00:00
Dan Rubel c530c333bb Update null-aware nnbd "?.[" operator recovery
This sets the "?.[" endGroup to "]" for proper token stream structure
and parser recovery.

Change-Id: Ie4147ac5dedcc273ea6cfda6dafc5d91e892b1a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-06-13 16:53:26 +00:00
Dan Rubel 45f39fe70d update scanner/parser to handle null-aware index operator
This adds support for the nnbd `?.[` operator as specified in
https://github.com/dart-lang/language/pull/293/files#diff-dbeaf678924df9f8a2ca9f5d12e26d3eR11513

Change-Id: I11547cf875439fef9fe22d4f4ac5ab912b3759d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105902
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 16:53:26 +00:00
Brian Wilkerson 90b55959a4 The name of an extension is optional
Change-Id: I6d73538e2ae2d90b0347c4ee03df4422a442ab75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105965
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-13 16:28:21 +00:00