Commit graph

100147 commits

Author SHA1 Message Date
Alexander Aprelev ce6bec3bc2 [vm/win] Remove 'explicit' modifier from copy constructor.
This is to fix msvc ide warning.

Fixes dartbug.com/55108
TEST=ci

Change-Id: I7430786b6abf255487e99fa878894647594a6a6f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356140
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2024-03-06 23:26:07 +00:00
Konstantin Shcheglov 000d8fdc8b Completion. Add 'distance' to FormalParameterSuggestion.
More tests, but all nodes yet, not full test coverage.

Change-Id: I66f2949ccba0e5d2c1e8bccffeca46d6ca6c1ca6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355888
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-03-06 22:08:39 +00:00
Ben Konyi 3786c5e5ee [ DDS ] Don't await getIsolate calls in DDS initialization
Fix an issue where DDS would fail to initialize when an isolate in the target process was unable to handle service requests (e.g., when executing FFI code or blocked on a system call).

Fixes b/323386606

Change-Id: I659ebaf750e2c800e9819809d1104e024cb059da
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354681
Reviewed-by: Derek Xu <derekx@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2024-03-06 21:15:36 +00:00
Konstantin Shcheglov 3775357116 Completion. Issue 55049. Fix for completion inside AsExpression expression.
Bug: https://github.com/dart-lang/sdk/issues/55049
Change-Id: I5ea3e2997218dcbbf0af8140387102c6ccf58d11
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355890
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
2024-03-06 20:14:09 +00:00
Sam Rawlins c2a9026ef2 analyzer: add Effective Dart to our style guide
I tidy up a few other bits.

In particular, I wasn't sure about the word "adjective" to describe the word "file" in the variable name `filePath`. I looked it up and found "noun adjunct." https://en.wikipedia.org/wiki/Noun_adjunct#:~:text=Noun%20adjuncts%20can%20also%20be,and%20%22chicken%20soup%22%20modifies%20%22. Never heard of it! It looks like "qualifying noun" is also a common term, and I think it's not too hard to figure out what that means. But, open to suggestions as always.

Change-Id: If204c67078532fb5130fda08f6777761c87ba8eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355891
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2024-03-06 19:29:58 +00:00
Keerti Parthasarathy 393286c11c Completion: Issue 55010: Add missing suggestions for invocation.
Fixes https://github.com/dart-lang/sdk/issues/55010

Change-Id: Id7054243a60b9a873a08e0e8a3e7a4a02779cf1e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355882
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
2024-03-06 19:20:48 +00:00
Sigmund Cherem 376f9dcf6b [ddc] increase timeout of steps in e2e suite.
The data shows a lot of variation by machine. The slowest test samples
bring the p90 above 4s, which explains that we often hit the limit.

I expect that we'll continue seeing flakes, but less often as a result
of this change. That said, some of the e2e test are taking close to 4
minutes, so we may need additional sharding or switch our approach if
that ocurrs more often.

Change-Id: I47c0dbce6f766edf7c2845d26f11ae7c6372a7bc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355980
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2024-03-06 18:07:03 +00:00
Srujan Gaddam 55df0ca4d6 [dart:js_interop] Fix operator precedence in determining constructor type
Fixes https://github.com/dart-lang/sdk/issues/55107

The lack of parentheses around the ternary operator made the check
invalid when there are members that aren't constructors in the
extension type.

Change-Id: I87ce918c478113f682d3df28f148b7f59d4fd075
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355883
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2024-03-06 17:39:29 +00:00
Nate Bosch b6957a94f4 Bump test to 7724aabe8cd40b376573330f5227a6ec0a47f28e
Changes:
```
> git log --format="%C(auto) %h %s" 525f77b..7724aab
 https://dart.googlesource.com/test.git/+/7724aabe Add failure only reporter (2190)

```

Diff: https://dart.googlesource.com/test.git/+/525f77b2e0459f76b088ae65b71b2e948dd04224..7724aabe8cd40b376573330f5227a6ec0a47f28e/
Change-Id: I7b02e4e9434bcf9e7911a52d5e57f3adf1434f64
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355887
Auto-Submit: Nate Bosch <nbosch@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2024-03-06 16:52:37 +00:00
David Morgan 1c3bd1d0f9 [macros] Increase timeout for test flakiness.
Example flake

https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket/8754695045701063905/+/u/test_results/ignored_flaky_test_failure_logs

R=nshahan@google.com

Change-Id: I78c3ef26bf635dd8bb9e0d7c28c05e68a5ce9a18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355700
Commit-Queue: Morgan :) <davidmorgan@google.com>
Auto-Submit: Morgan :) <davidmorgan@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
2024-03-06 16:14:19 +00:00
Martin Kustermann 8cdeafe647 [dart2wasm] Add --delete-tostring-package-uri option to dart2wasm
This is adding the same option and behavior that the frontend server
already has.

Closes https://github.com/dart-lang/sdk/issues/54280

Change-Id: I6d5c23baf171267eaf71eb9bf5993dcd9648c948
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356080
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ömer Ağacan <omersa@google.com>
2024-03-06 15:55:31 +00:00
Oleh Prypin fc5f82c244 [tool] Use new builder name syntax for tools/find_builders.dart
See mentions of migrating from legacy syntax from back when it was ongoing: https://g-issues.chromium.org/issues/40170614#comment36

Change-Id: If592c5bcf40b2e56f9b18fcf27f74d767f97375a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356041
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Oleh Prypin <oprypin@google.com>
2024-03-06 15:49:54 +00:00
Daco Harkes 86c41c9c77 [tool] tools/find_builders.dart cbuild opt in
Opt in to CBuild being green.

Remove denylisted bots now that issue is resolved.

Change-Id: I89c23720eaed78b317067bbdb065fe0cef8ecd75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356022
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2024-03-06 14:03:19 +00:00
David Morgan c2004efd47 [macros] Add macro build tests.
These are a new type of test that runs with the SDK under test against what
looks like an external package; they start by running "pub get" then run SDK
build commands to build the package, and check that macros applied correctly.

Add tests for various builds that already pass, plus one that doesn't:
cfe_sdk_cli_test fails because it was switched to run from an AOT snapshot
and that doesn't support macros yet.

Change-Id: Ic801cb61bd414d4876566452e01dd8c8203e9013
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353100
Reviewed-by: Jake Macdonald <jakemac@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Morgan :) <davidmorgan@google.com>
2024-03-06 12:31:37 +00:00
Daco Harkes 20441060a6 [vm/ffi] Fix CBuild
https://dart-review.googlesource.com/c/sdk/+/353261 caused the CBuild
to fail. (And CBuild doesn't prevent landing CLs.)

new Name.byReference (package:kernel/ast.dart:10940:48)
new Name (package:kernel/ast.dart:10933:11)
_FfiDefinitionTransformer._createAddOffsetOfGetter (package:vm/modular/transformations/ffi/definitions.dart:975:22)

TEST=g3-cbuild-try

Change-Id: Ie7b148fb72f6fe862052b70da46b6c34fa693364
Cq-Include-Trybots: dart-internal/g3.dart-internal.try:g3-cbuild-try
Cq-Include-Trybots: luci.dart.try:vm-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356021
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Ivan Inozemtsev <iinozemtsev@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2024-03-06 12:10:37 +00:00
Daco Harkes 513aac0ce3 [vm/ffi] #offsetOf getters for struct fields
And use these new getters inside field reads/writes.
This outlines this currently inlined code into calls to a helper
methods. This may make the kernel a little smaller and easier to
read. Also, it removes the need to compute the (now outlined)
expression on arbitrary call sites in the FFI transformer

TEST=test/ffi
TEST=all the expect files

Bug: https://github.com/dart-lang/sdk/issues/44589
Bug: https://github.com/dart-lang/sdk/issues/41237
Change-Id: I53d69778ee50186944229550f89f10c22452e13f
Cq-Include-Trybots: luci.dart.try:vm-aot-android-release-arm64c-try,vm-aot-android-release-arm_x64-try,vm-aot-linux-debug-x64-try,vm-aot-linux-debug-x64c-try,vm-aot-mac-release-arm64-try,vm-aot-mac-release-x64-try,vm-aot-obfuscate-linux-release-x64-try,vm-aot-optimization-level-linux-release-x64-try,vm-appjit-linux-debug-x64-try,vm-asan-linux-release-x64-try,vm-checked-mac-release-arm64-try,vm-eager-optimization-linux-release-ia32-try,vm-eager-optimization-linux-release-x64-try,vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64c-try,vm-ffi-qemu-linux-release-arm-try,vm-ffi-qemu-linux-release-riscv64-try,vm-fuchsia-release-x64-try,vm-kernel-linux-debug-x64-try,vm-kernel-precomp-linux-release-x64-try,vm-linux-debug-ia32-try,vm-linux-debug-x64-try,vm-linux-debug-x64c-try,vm-mac-debug-arm64-try,vm-mac-debug-x64-try,vm-msan-linux-release-x64-try,vm-reload-linux-debug-x64-try,vm-reload-rollback-linux-debug-x64-try,vm-ubsan-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353261
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2024-03-06 10:10:55 +00:00
Sam Rawlins 59035021cf Bump dartdoc to cec45fbedf85b938670314e5bcdac3fbdde94f99
Fixes https://github.com/dart-lang/dartdoc/issues/3701

Change-Id: Ibcd7a17ada8a0ce9575a4d693bab090dc5675444
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355825
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Kallen Tu <kallentu@google.com>
2024-03-06 01:30:11 +00:00
Nicholas Shahan 5e03c497e9 [ddc] Cleanup dynamic calls in native_typed_data
Change-Id: I6a3b709addf59fbde09d829efed43028d71ef7d2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355620
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2024-03-06 00:51:15 +00:00
Konstantin Shcheglov be5a06874e Update flutter_elements.xml baseline.
Change-Id: I41135bfd747808da09073c99f065495297d91096
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355886
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-06 00:40:18 +00:00
Konstantin Shcheglov d042edfea0 Revert "Issue 54468. Use (int, int) as backing storage for EnumSet, up to 60 elements."
This reverts commit 492e40713d.

Reason for revert: too expensive

Original change's description:
> Issue 54468. Use (int, int) as backing storage for EnumSet, up to 60 elements.
>
> Bug: https://github.com/dart-lang/sdk/issues/54468
> Change-Id: I04a221526dcc7e380e7e9c84f8bb8b2fed52f4eb
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355823
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>

Bug: https://github.com/dart-lang/sdk/issues/54468
Change-Id: I9f8b6755c8f8fce4e23dcb8533ef680eb8516dba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355885
Auto-Submit: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2024-03-05 23:52:39 +00:00
Brian Wilkerson 3389dfe409 Add documentation for some of the recommended lints
Change-Id: Ia9d9bf169c1ffc62e8960e373453ae7da7f2ee4e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/345747
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Marya Belanger <mbelanger@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2024-03-05 23:50:37 +00:00
Konstantin Shcheglov 888941c499 Completion. When fail, ensure that actual is printed without indentation.
So, it can be easily copy / pasted, without shifting manually afterwards.

Change-Id: I7da463226e2c276d41b1eb01226ade620c59d77b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355826
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
2024-03-05 23:26:42 +00:00
Konstantin Shcheglov e29057a973 Completion. Issue 40616. Don't insert lambdas automatically.
Bug: https://github.com/dart-lang/sdk/issues/40616
Change-Id: Ib34d889f8615c43769d104c265d3f8ee183dc38e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355824
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2024-03-05 23:24:23 +00:00
Konstantin Shcheglov bb14da1287 Completion. Issue 44273. Give formal parameters higher relevance than non-locals.
Bug: https://github.com/dart-lang/sdk/issues/44273
Change-Id: I1c8d488d46f23e3e781dcefd05f6788f43e62654
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355821
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 22:54:38 +00:00
Konstantin Shcheglov 492e40713d Issue 54468. Use (int, int) as backing storage for EnumSet, up to 60 elements.
Bug: https://github.com/dart-lang/sdk/issues/54468
Change-Id: I04a221526dcc7e380e7e9c84f8bb8b2fed52f4eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355823
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 22:03:37 +00:00
Liam Appelbe 082fdca1c9 [vm] Remove special casing for late error throws
Since https://dart-review.googlesource.com/c/sdk/+/355000 landed, we
don't need to special case the coverage collector to ignore throws of
late initialization errors.

TEST=No behavior changes, so using CI

Change-Id: I3bce5409f32f48c53035181dbd4c27e3570fbf2b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355600
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
2024-03-05 21:48:00 +00:00
Konstantin Shcheglov d976ce5b13 Completion. Issue 54231. Fix suggesting through import prefix, when there is another identifier after it.
Bug: https://github.com/dart-lang/sdk/issues/54231
Change-Id: I06a5eb3763814fde99e2e2ba583679cc27c1a4b6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355546
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 21:24:32 +00:00
Nicholas Shahan 59ad7082cc [ddc] Cleanup dynamic calls in debugger helper lib
Change-Id: Ie31f398f8c438ebf64700b631dff25d6d01bb1e3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355545
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
2024-03-05 20:32:23 +00:00
Konstantin Shcheglov 8605d7e682 Macro. Issue 55101. Catch exceptions during macro instantiations.
Bug: https://github.com/dart-lang/sdk/issues/55101
Change-Id: I1c34d1ad55e0bb3a1b1bd10779c0f21d6b6a6aa1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355881
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 20:12:31 +00:00
Konstantin Shcheglov f262bab262 Completion. Issue 54896. Consider implicitly named fields when exclude duplicates.
Bug: https://github.com/dart-lang/sdk/issues/54896
Change-Id: Iffc2da440d53f08cecba363e5b2f629c4860ed1b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355622
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 19:48:05 +00:00
Konstantin Shcheglov 7de13d86b1 Completion. Issue 54657. Suggest not yet imported extension types.
Bug: https://github.com/dart-lang/sdk/issues/54657
Change-Id: Iba61452accb796624ecec4b77c933cb97b33768d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355544
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 19:47:49 +00:00
Konstantin Shcheglov 9ca60be237 Legacy. Remove support for legacy types from TypeSystemImpl.
Change-Id: I101ecafbb9c802e12d4f825c04213c35b9ac208b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355860
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-03-05 19:27:50 +00:00
Konstantin Shcheglov 74f8cd7305 Legacy. Remove support for legacy types from LeastUpperBoundHelper.
Change-Id: I295a99bac942d570f8f07a727fc6a9de576bdb32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355822
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2024-03-05 19:27:47 +00:00
Konstantin Shcheglov 323a15b6e4 Completion. Issue 54746. Don't suggest extension members in the body of class-like declarations.
Bug: https://github.com/dart-lang/sdk/issues/54746
Change-Id: Ia8e6a3a864caf75bebd13fe28e3419962b6f7a63
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355510
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
2024-03-05 17:10:36 +00:00
Konstantin Shcheglov e7865021fc Augment. Fix semantic highlighting for functions / getters / setters.
Change-Id: I2f42d10e0d4b6a994e11ef40120a7e7fac91a15b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355506
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-03-05 17:05:50 +00:00
Konstantin Shcheglov 18a3e8c366 Return ComputeStatus from RefactoringProducer.compute()
Change-Id: I6888087d7e529dda1882f586bdfcca16dc21137b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355505
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2024-03-05 17:02:32 +00:00
Kevin Moore 24ee108404 [dart2wasm] code cleanup
Upgrade to latest recommended lints (excluding a few)
Moved to switch expressions
Added a couple of lints about directives

Change-Id: Ibe84f97e84fb50132e61ac38903090447b058d84
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355547
Commit-Queue: Kevin Moore <kevmoo@google.com>
Reviewed-by: Ömer Ağacan <omersa@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2024-03-05 16:57:47 +00:00
Brian Wilkerson a1c65cd264 Convert the suggestion of closures to the new framework
Change-Id: I270037cf10010cc693eb4143820777c7e256e38e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355543
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2024-03-05 16:54:29 +00:00
Ömer Sinan Ağacan b6bc3e54d0 [dart2wasm] Refactor and optimize dart2wasm hash map/set types
This CL copies and modifies hash map and set base class `_HashBase`
currently shared with the VM, to improve types of the fields.

The Wasm struct for hash map and set objects was previously:

  (type $_HashBase (sub $Object (struct
    (field $field0 i32)
    (field $field1 (mut i32))
    (field $field2 (mut (ref null $Object)))      ;; _index
    (field $field3 (mut i64))
    (field $field4 (mut (ref $Object)))           ;; _data
    (field $field5 (mut i64))
    (field $field6 (mut i64)))))

Now:

  (type $_HashBase (sub $Object (struct
    (field $field0 i32)
    (field $field1 (mut i32))
    (field $field2 (mut (ref $Array<WasmI32>)))   ;; _index
    (field $field3 (mut i64))
    (field $field4 (mut (ref $Array<Object?>)))   ;; _data
    (field $field5 (mut i64))
    (field $field6 (mut i64)))))

_index and _data fields are now non-nullable Wasm arrays. This removes
downcasts and one layer of indirection when accessing the elements. In
addition, when accessing `_index` this eliminates unboxing the integers.

Fixes #54961.

Change-Id: I4e6bd5129c7c57f5716ccb23e46060d73ffca217
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/354843
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2024-03-05 16:00:39 +00:00
Kevin Moore e923a300dd [dart2wasm] sort exports in mjs file
Also eliminate some inconsistent whitespace

Change-Id: I4daea6d038c0c07e5bd777edc540a24fde49825a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355623
Reviewed-by: Ömer Ağacan <omersa@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2024-03-05 15:48:13 +00:00
Konstantin Shcheglov e9217c3b21 Legacy. Remove star types from shared FactorTypeTestMixin.
Change-Id: Ibb287b86aed21b296ddc646ce0db7f83c2c947d7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355580
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2024-03-05 15:19:07 +00:00
Zach Anderson bcb253faf9 [gn] Clean up some vestiges of building in the Fuchsia tree
Part of https://github.com/flutter/flutter/issues/144430

Change-Id: I6103f5a7fec76b82209845cb027c23bdb86da5ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355624
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2024-03-05 15:02:49 +00:00
Jonas Termansen 6d69d56307 [infra] Turn off Goma by Windows by default.
Fix the case where both Goma and RB is turned on together and conflicts.

Bug: b/296994239
Change-Id: If37fe35dc3d8f025c22a041545cfe0b50cea4be5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355761
Auto-Submit: Jonas Termansen <sortie@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2024-03-05 14:31:59 +00:00
Johnni Winther 2553a65425 [presubmit] Force read files as UTF-8
The avoids the Windows default of using ANSI.

Change-Id: I1a6177729bb4e2453522e763b490396b2f930a42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355741
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2024-03-05 14:25:09 +00:00
Jonas Termansen c0e089af45 [infra] Fix environment during RBE shutdown.
Bug: b/296994239
Change-Id: Id7545ef44a28ebb3c1439c1f980fa95978be1412
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355780
Reviewed-by: William Hesse <whesse@google.com>
2024-03-05 13:47:17 +00:00
Jonas Termansen a27993d7c9 [infra] Fix not initializing RBE before gn.
Bug: b/296994239
Change-Id: I344f07fa7f389fa5b0f5e65b24168f2d05daacbf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355683
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Jonas Termansen <sortie@google.com>
2024-03-05 13:22:39 +00:00
David Morgan a4e15669ec [macros] Fix _checkForKernelRuntime.
The previous implementation always returns "true", making the PR a
no-op as it only does something for AOT runtimes. e2e test coverage
will land in
https://dart-review.googlesource.com/c/sdk/+/353100 to prevent such
mistakes in future.

R=johnniwinther@google.com

Change-Id: I8481187070a0af12a3f3bd77baa471f1a7d3256d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355682
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Auto-Submit: Morgan :) <davidmorgan@google.com>
Commit-Queue: Morgan :) <davidmorgan@google.com>
2024-03-05 13:05:16 +00:00
Johnni Winther 823592363f [cfe] Support uri/offset for macro diagnostic targets
Change-Id: I3c5ba25b730e28dd679861e13aab940515a86332
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355402
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2024-03-05 13:02:39 +00:00
Ömer Sinan Ağacan a2b833ede4 [dart2wasm] New async* desugaring
See `_lowerAsyncStar` for the desugaring plan.

Fixes tests:

co19/Language/Expressions/Function_Invocation/async_generator_invokation_t04
co19/Language/Expressions/Function_Invocation/async_generator_invokation_t08
co19/Language/Statements/Yield_and_Yield_Each/Yield/execution_async_A01_t07
co19/Language/Statements/Yield_and_Yield_Each/Yield/execution_async_A03_t04
co19/Language/Statements/Yield_and_Yield_Each/Yield/execution_async_A03_t05
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t03
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t07
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t08
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t09
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t11
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t12
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t14
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t15
co19/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_async_A03_t16
language/async_star/async_star_await_for_test
language/async_star/async_star_cancel_test
language/async_star/async_star_test
language/async_star/throw_in_catch_test
language/async_star/yield_test
language/async_star/yieldstar_test
lib/async/async_await_zones_test

Fixes #55025.
Fixes #55018.
Fixes #52464.

Change-Id: I9d51564698710993cb7d2cc64b3bb8c26d6d4c77
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/355360
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2024-03-05 11:56:00 +00:00
Chloe Stefantsova 88403d9c3e [cfe] Show nullability formula for extension types in textual output
This is a follow-up to
https://dart-review.googlesource.com/c/sdk/+/350323 and
https://dart-review.googlesource.com/c/sdk/+/351141. It clarifies the
nullability markers shown in the .expect files.

TEST=existing

Change-Id: I248531dd892ea676935d5479c86e43ce8a87628a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/350823
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2024-03-05 09:49:31 +00:00