Commit Graph

35087 Commits

Author SHA1 Message Date
Sam Rawlins 9488ea4c7e dart migrate: support files-to-be-migrated initial state in google3
* Rename isPreviewServerRunnning to isPreviewServerRunning
* Fix top "Migrating" checkbox upon navigation.

This change does not completely solve google3-compatibility, just the
web preview UI portion.

Work to improve any opt-out `// @dart=2.9` comments will follow.

Change-Id: Iee38650ab732179d82060b14bc7b657e3c560543
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178160
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2021-01-12 05:54:50 +00:00
Sigmund Cherem 8b0fba90a6 [web] Make check_nnbd_sdk less noisy.
This change does a small fix to exclude line numbers from the golden
files produced by check_nnbd_sdk.dart. Doing so helps keep the golden
file more stable and less likely to require updates when developers make
unrelated changes to the core libraries.

There are very few failures that remain and now that the CFE is more
mature, we may be in a position to stop using the patch-sdk mechanism to
test the validity of the migrated sdk.

Change-Id: Id41448f23871d0a43257db5dbf5b0b062e2eaddd
Bug: https://github.com/dart-lang/sdk/issues/44491 https://github.com/dart-lang/sdk/issues/44618
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178726
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2021-01-12 02:10:30 +00:00
Ben Konyi d9ca0514bc [ Service ] Disconnect existing clients when DDS calls
_yieldControlToDDS

Instead of DDS failing to connect when there are existing clients
connected to the VM service, the VM service will now disconnect these
clients when _yieldControlToDDS is invoked.

If an existing DDS instance is already connected, existing clients will *not*
be disconnected and instead an error will be returned containing the URI of
the existing DDS instance.

TEST= runtime/observatory/tests/service/dds_disconnects_existing_clients_test.dart

Change-Id: I08e126d99f51ff14205f359a60ca802c27fd206d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178725
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2021-01-12 02:05:00 +00:00
Stephen Adams a4956e8f99 [dart2js/js_ast] cleanup: Simplify LiteralExpression
LiteralExpression used to be the mechanism for 'interpolating' the
`JS` pseudo-function, but that long ago was reimplemented via the
js_ast template feature.

There are a few vestigial uses of LiteralExpression, but as none of
them use the `inputs`, this field is removed.

Change-Id: I4cd7c64766a7d6d9dd2c196c134bbfcb536fd2f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178400
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2021-01-12 01:28:10 +00:00
Brian Wilkerson b25f6959a9 Do not ignore the class of the target when deciding whether a transform applies to a diagnostic site
Change-Id: I5b3f77557ebc86c6942a57bc082d9224ebcd2401
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178420
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2021-01-12 00:51:10 +00:00
Brian Wilkerson 11e7cdcfd1 Unify two error codes for documentation purposes
Change-Id: I730a0ee287e7d54bace9fdf84a02be5c3f4da017
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178520
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-11 23:12:20 +00:00
Brian Wilkerson 726d18b5f9 Add a test case for convert-to-on-type
Change-Id: If2dd4197dcd79ea311bec4d9aec6ed9da278aec6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178721
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-11 22:56:50 +00:00
Brian Wilkerson a4298ba418 Unify two error codes for documentation purposes
Change-Id: I31cb070e7dfcccfed042d1bf308f672e880b1d22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178440
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-11 22:52:20 +00:00
Ben Konyi c42c76f590 [ VM / CLI ] Run DartDev isolate from snapshot when possible
This change tries to run from dartdev.dart.snapshot and falls back to
running from dartdev.dill if incompatible VM flags are provided.

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

Performance results:

dart test.dart (no CLI isolate): 0.167s
dart run test (from snapshot):   0.208s
dart run test (from kernel):     0.326s

TEST=pkg/dartdev/test/load_from_dill_test.dart

Change-Id: I3195886b86676580ef2a0221f0284328964ef061
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178300
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2021-01-11 19:41:50 +00:00
Alexander Markov 9d1a307954 [vm] Add specialized factory constructors for small list literals
Flutter gallery in release mode:
AOT snapshot size arm64 -0.22%, arm -0.21%
instructions size arm64 -0.46%, arm -0.4%

TEST=existing tests

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

Change-Id: I4733e91ecf4601c0bcde725cf9e97f5db0b8bc13
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175821
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2021-01-11 19:32:30 +00:00
Danny Tuppeny c818059287 [Analyzer] Report EXTRA_POSITIONAL_ARGUMENTS and EXTRA_POSITIONAL_ARGUMENTS_COULD_BE_NAMED against first unmatched argument
Fixes #44598.

Change-Id: I6bccf4f5448de024f27d0ed1ba51c730e22b6fe9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178020
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-11 18:46:26 +00:00
Johnni Winther 63373b9e9c [cfe,analyzer] Pass message arguments directly to AnalysisError
This allows for supporting customized message for scanner/parser
errors.

Change-Id: Ib9470c3d8231de69611bc672570ae8902e9c0e6e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177940
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2021-01-11 16:45:26 +00:00
Jens Johansen f7052cfbbc [parser] Better handling of eof when parsing 'Stream<List<>>'
This CL avoids the infinite loop created by allowing the parser
to parse it as a complex type (despite no actual name after it) and
adds a few asserts in an attempt to catch rewriting on eof (setting a
token after eof).

Fixes #42229
Fixes #44477

Change-Id: Ie2da0957894067a3d4748cb6384bc9d6cf32c215
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150521
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-01-11 09:55:06 +00:00
Brian Wilkerson 2efc8bf9e3 Unify two error codes for documentation purposes
Change-Id: I30c7bafdb0cde73a984c0d75a82cb324cded18b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178500
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-10 22:52:25 +00:00
Parker Lougheed f9c3c09a9e Create a quick fix and bulk fix for unnecessary_string_interpolations
Change-Id: I8cdf98ef8e23ac6a0e5fd10d4c0605a1b0d38a85
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178340
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-10 16:24:25 +00:00
pq b29d36c559 bulk fix for use_function_type_syntax_for_parameters
Change-Id: I3a28cea584cc98dd0dcc9b750887485a7950b7ba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178264
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-09 20:45:24 +00:00
Ben Konyi cf41a580eb [ package:vm_service ] Fix analysis error from https://dart.googlesource.com/sdk/+/fb5ffc827580ae49cd4611d3ddf0ad3c7c592c54
TEST=N/A

Change-Id: Iaa70b98d4918c9cfd38c32e197411318bb2cf7ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178301
Reviewed-by: Ben Konyi <bkonyi@google.com>
2021-01-09 01:16:22 +00:00
Ben Konyi fb5ffc8275 [ package:vm_service] Output null-safe code from package:vm_service code generator
TEST=Existing VM service tests

Change-Id: Ia3877927f8c761c8f37a37f1efe87221cc1ac2aa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156980
Reviewed-by: Gary Roumanis <grouma@google.com>
2021-01-08 21:19:38 +00:00
Sam Rawlins 897235204e Split use_of_nullable_value into separate codes with more friendly
messages.

* UNCHECKED_INVOCATION_OF_NULLABLE_VALUE
* UNCHECKED_METHOD_INVOCATION_OF_NULLABLE_VALUE
* UNCHECKED_OPERATOR_INVOCATION_OF_NULLABLE_VALUE
* UNCHECKED_PROPERTY_ACCESS_OF_NULLABLE_VALUE
* UNCHECKED_USE_OF_NULLABLE_VALUE_AS_CONDITION
* UNCHECKED_USE_OF_NULLABLE_VALUE_AS_ITERATOR
* UNCHECKED_USE_OF_NULLABLE_VALUE_IN_SPREAD
* UNCHECKED_USE_OF_NULLABLE_VALUE_IN_YIELD_EACH

Additionally, improve the ADD_NULL_CHECK quick fix by supporting
expressions which need to be null-checked in a for-each, a yield-each,
and a spread.

Bug: https://github.com/dart-lang/sdk/issues/44603
Change-Id: Ie493a2dc1c05b64a16fd17c77d3468e8d562c497
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178080
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-08 21:07:02 +00:00
Paul Berry 88cd4739b8 Flow analysis: switch on inference based on local boolean variables.
The implementation was completed in previous CLs, but hidden behind a
flag.  This CL switches on the feature and adds integration tests.

Bug: https://github.com/dart-lang/language/issues/1274
Change-Id: I0e2d7ac96d3a6d68d33d49f1eab5c341c9167f6f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175500
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-01-08 18:57:02 +00:00
Srujan Gaddam 825f56c6aa Revert "[pkg:js] Add errors for JS interop using @Native classes"
This reverts commit bc43d06479.

Reason for revert: Breakage in https://github.com/flutter/flutter/issues/73176

Original change's description:
> [pkg:js] Add errors for JS interop using @Native classes
>
> Closes https://github.com/dart-lang/sdk/issues/44211
>
> - Preprocesses and hashes Native classes defined in the sdk.
> - Adds an error if you use a JS class with the same underlying name
> as a Native class.
> - Adds tests with different namespaces to test for the error.
>
> Change-Id: I649e8b2346de8cc6d11205941a37152ce42104b9
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175423
> Reviewed-by: Sigmund Cherem <sigmund@google.com>

TBR=sigmund@google.com,srujzs@google.com,rileyporter@google.com

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

Change-Id: I4b492015468d41335fc5c9d4952560d303841695
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178260
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2021-01-08 18:55:02 +00:00
pq daac91856b bulk fix for always_require_non_null_named_parameters
Change-Id: Ib91171f2f892b3a7db5e674b9b7dc884cba28d5d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2021-01-08 15:22:42 +00:00
Daco Harkes 78ca1452dc [cfe/test/ffi] Move ffi_sample.dart to nnbd folder
Bumps `package:ffi` to a version using `?`.

Moves `ffi_sample.dart` from `general` to `nnbd` to prevent errors on
the usage of `?` in `package:ffi`.

Change-Id: I8bce1850ce4d144174a2e3705b0ae00523b45c73
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178201
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2021-01-08 14:15:12 +00:00
Dmitry Stefantsov cf8887bd7e [cfe] Update the conversion algorithm for checking super-bounded types
The update is specified in the following:
https://github.com/dart-lang/language/pull/1133

Change-Id: I2850b1acf7c94b8174c21cf899c9b926a03d9cc8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175726
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2021-01-08 11:58:32 +00:00
Johnni Winther 35e23fbb88 [cfe] Add tests in preparation for refactoring of class hierarchy builder
Change-Id: Ic8df1dabe3ed53c41e0660315f87c313759585e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177707
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2021-01-08 11:25:51 +00:00
Anna Gringauze b1b0a6ce14 Do not add variables to scope that appear after the breakpoint
During expression evaluation, we are collecting  all variables in
all scopes that contain the current breakpoint line, and adding them
as available in current scope, which makes variables declared below
the current breakpoint line declared but undefined in JavaScript.

There is one exception to this seen so far - a variable
declared on the current breakpoint line might appear as not declared
in JavaScript and cause expression evaluation not to work due to
JS compilation errors.

This change fixes the issue by not collecting variables that are
declared on or after the current breakpoint line, making them undeclared
in dart (which also is correct according to dart scoping rules).

Closes: https://github.com/flutter/flutter/issues/72094
Change-Id: I113b69531171e0348d44edb8db6dd08a599c9db3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177760
Commit-Queue: Anna Gringauze <annagrin@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2021-01-07 23:55:59 +00:00
Brian Wilkerson 5c174c8d8c Remove unused data from AssistKind
Change-Id: I71c21e4d8138fa7f92d1a3e5a919b9fff3b2098f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177980
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-07 23:16:48 +00:00
Mark Zhou 5ee1ee3c04 [dartdevc] Adding support for deferred library checks in DDC.
Fixes #42491

Change-Id: I6afc084bb7b1ccf6c667cb241ab2ac20aa881af1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177620
Commit-Queue: Mark Zhou <markzipan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2021-01-07 21:43:08 +00:00
pq 63795a73e6 bulk fix for unnecessary_null_in_if_null_operators
Change-Id: I13b9ad4ad9ecaefd41eb211ac0a0aa0ee70557a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178040
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-07 20:24:38 +00:00
Ben Konyi 800ec511f5 [ DDS ] Add extension methods and getters for streams including event history
Also fixes issue where `StreamHistory` events were not being parsed
correctly.

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

Change-Id: I36c3bccf229a02ea78168041a112a30046773d59
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177720
Reviewed-by: Kenzie Schmoll <kenzieschmoll@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2021-01-07 17:04:38 +00:00
Johnni Winther dd5b455a0c [dart2js] Handle super access in mixin declarations
This crashed because the canonical name for the replace procedure
was unbound before all references to it had been loaded, causing
subsequent reads of the canonical name to create reference without
a target.

This broke the flutter web smoke tests.

Change-Id: I6249cfda85ff76b5e2dd31bb0cf8d6312ad50c1d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177861
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2021-01-07 13:45:18 +00:00
Jens Johansen 5fac8d3d71 [CFE] Reproduction and fix of duplicate string-named 'abstract member-signature'
Before this CL, the map we use to "reuse" references when doing
experimental invalidation mapped from String to Reference.
In bug #44523 two abstract member-signatures have the same textual
(String) name meaning that via the lookup one would get the correct
one, one would get the wrong one, they would get the same one
which eventually causes a crash when trying to serialize.

This CL fixes the issue by mapping via the Name instead, which
basically - for private names - wraps the name and the library
which disambiguates it.

This CL also includes the reproduction of #44523.

Fixes #44523.

TEST=Mostly relying on existing test coverage.

Change-Id: Ib62ebca0b7f5092f0b8410d3c458663c3032eca1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177704
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-01-07 13:11:18 +00:00
Devon Carew cabe1e995e [pkg/analyzer] widen the dep on package:crypto
Bug: https://github.com/dart-lang/sdk/issues/44577
Change-Id: Idcabaf66ad93b8d749e081fed57a1f4b5d9dc9c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177800
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2021-01-07 01:33:41 +00:00
Stephen Adams b4ca18015c [dart2js] Canonicalize empty list to const in FunctionType
This one was somehow missed with the others.

Change-Id: I5d06cedc4d00c3fa5f2390d211389382f64e2fc2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177761
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2021-01-06 23:21:51 +00:00
Daco Harkes 28a228b64b [analyzer/ffi] Add tests for #44584
Add tests for analyzer and CFE covering `Pointer<void>` and
`Pointer<NativeFunction>` when used in `lookupFunction`.
Both were missing in test suites.

Added TODOs for the things that need to be addressed.

Issue: https://github.com/dart-lang/sdk/issues/44584
Issue: https://github.com/dart-lang/sdk/issues/44593
Issue: https://github.com/dart-lang/sdk/issues/44594

Change-Id: I24ce7caa1a20af51e14e75a7fa83578e00a2b440
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177700
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2021-01-06 19:26:30 +00:00
Brian Wilkerson 9453c76e22 Remove a hint code that is not being generated
Change-Id: Ifdc94c2d8dbcdeaf24ee938532c9f3a93c497e3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177540
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-06 18:20:56 +00:00
Devon Carew ad3c3644a4 Add an initial version of a 'dart language-server' command.
Change-Id: Iffb8dedf7419a421e5282e09b4584e768c47e53f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176485
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-06 18:14:51 +00:00
Alexander Markov 3bef6cf639 [vm/aot] Attach unboxing info to unreachable members
Unreachable members could be used as interface targets of dispatch
table calls, so they should have correct unboxing metadata.
This change fixes attaching unboxing info to such members.

TEST=runtime/tests/vm/dart/regress_44563_test.dart

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

Change-Id: I5da6a8d07048904eb94b05bfba11bdf72d655e12
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177621
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2021-01-06 18:12:51 +00:00
Danny Tuppeny e5ed69d04d [Analyzer] Add support for LSP semanticTokens/range
Change-Id: Iebd0a5bfca29b51fe6bb309f71c1ee476d4ed9f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177702
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-06 17:50:11 +00:00
Danny Tuppeny ee2899ed17 [Analyzer] Update DartUnitHighlightsComputer to allow generating LSP semantic tokens directly
This allows additional types/modifiers that cannot be mapped from highlights region (for example where the existing `keyword` region type needs to be mapped into both `keyword` and `keyword.control` to support different colours as the original textmate grammar did.

Change-Id: Ie71b165fa6e4d902c068854cbbba4039ddefe185
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177605
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-06 17:50:11 +00:00
Danny Tuppeny 28523a5e31 [Analyzer] Fix race condition in LSP semantic tokens + re-enable
Change-Id: I52c4eb18dd09e3334f21bbf5fac9ce4e716ea234
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-06 17:50:11 +00:00
Johnni Winther 80c307feb8 [cfe] Handle FutureOr<int> as context type for +
Closes #44595

Change-Id: I0631deb9d23b5e4a7618268b5e1f0f850bfd5ad9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177703
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2021-01-06 14:57:30 +00:00
Johnni Winther 061d714971 [cfe] Add test for issue 40945
This has been fixed for some time. Adding a test to verify.

Closes #40945

Change-Id: I7ce93c7c1b8cd054bb57a1923aa8a3f98a9ad7db
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177606
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2021-01-06 09:07:00 +00:00
Konstantin Shcheglov abe144c30f Fix AvailableSuggestionSetsTest on Windows.
R=brianwilkerson@google.com

Change-Id: Ief007dd6ca0431cc69181603e19f88717910e9ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177681
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-06 03:49:50 +00:00
Sigmund Cherem 72cdf5beb8 [test_runner] support testing dartdevk with d8
Change-Id: If38d3013a4ac60b6ef552f004451556898838445
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177001
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2021-01-06 01:53:30 +00:00
Sigmund Cherem 1a98374702 [dartdevc] Make dart_library.js compatible with d8.
This change makes dart_library.js more resilient so it can run in a
browser or in d8.

This is a necessary step to later enable test.py dartdevk tests in d8.

Change-Id: Ic8e5bbc9f1bbc6707a876208605f4fcaad41cee7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177000
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
2021-01-06 01:53:30 +00:00
Mark Zhou bd30532d82 [dartdevc] Creating container entrypoints for expression eval.
The expression evaluator should now index/read object containers (types and symbols right now) via accessors like 'A$Eval'.

Fixes #44494

Change-Id: I31d203cfe59a6e2c03eeb22e8c86270c28b5e2fa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176923
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>
2021-01-06 00:20:29 +00:00
Nicholas Shahan daba9f3626 [ddc] Fix equals operator on native types
Emit `===` instead of `[$equals]` when the LHS is represented as a
primitive type.

The calculation of the left type was resulting in Object instead of a
more precise type. This caused the check for primitives types to always
fail.

Provides 20%+ performance improvements on the Wordsolver and
CollectionSieves-removeWhere benchmarks.
https://golem.corp.goog/Comparison?repository=dart&team=dartdevc#targetA%3Ddartdevc%3BmachineTypeA%3Dlinux-x64%3BrevisionA%3D89773%3BpatchA%3Dnshahan-fix-primative-equals%3BtargetB%3Ddartdevc%3BmachineTypeB%3Dlinux-x64%3BrevisionB%3D89771%3BpatchB%3DNone

Change-Id: Ica980f28bf8df627571b9aa53e77478e2b1de17f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176069
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2021-01-05 23:47:34 +00:00
Ben Konyi 67a4bbb60b [ package:vm_service ] Ensure VmService.onDone doesn't complete until the provided dispose handler has finished
Fixes https://github.com/dart-lang/sdk/issues/43940
TEST=regress_43940_test.dart

Fixed: 43940
Change-Id: I7ad57e0c35a91bf1e1e3dada6662b33b59e2d7bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176922
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Jacob Richman <jacobr@google.com>
2021-01-05 23:39:29 +00:00
Konstantin Shcheglov 17b43ca846 Issue 44353. Fix adding duplicate relavance tags for available declarations in parts.
Bug: https://github.com/dart-lang/sdk/issues/44353
Bug: https://github.com/flutter/flutter-intellij/issues/5108
Change-Id: I6a5f04a7f44d12466799c10bac720189bd4b0612
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177640
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-05 22:43:38 +00:00