The `registerElement` APIs in `dart:html` are legacy APIs based on a
deprecated Web Components v0.5 specification. These methods don't work
on modern browsers and can only be used with a polyfill.
The latest Web Components specification is supported indirectly via
JSInterop and doesn't have an explicit API in the `dart:html` library.
This change marks these APIs as deprecated. We intend to remove them in
the future (see https://github.com/dart-lang/sdk/issues/49536)
Fixes https://github.com/dart-lang/sdk/issues/48973
Change-Id: I2e96d36e95c9971b59cde80bc4da49b63d12b17c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252840
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
With the decision to support non-nullable locals in WasmGC as per
https://github.com/WebAssembly/function-references/issues/44 the
support in dart2wasm for forcing all locals to be nullable is no
longer needed.
This CL removes that support and cleans up some related nullability
issues. Specifically:
- Remove the `--local-nullability` and `--parameter-nullability`
commandline options. These are now always enabled.
- Clean out special cases around forced nullable locals throughout the
compiler.
- Make `thisLocal` and `preciseThisLocal` always non-nullable.
- Make `returnValueLocal` (for storing the return value of `return`
statements inside `try` blocks with `finally`) always defaultable,
since its initialization flow crosses control constructs.
- Make type argument parameters non-nullable.
- Make non-nullable `FutureOr` translate to a non-nullable Wasm type.
- Implement the "initialized until end of block" validation scheme
in the Wasm instruction validator.
- Run tests with the `--experimental-wasm-nn-locals` option. This
is likely going away soon, but for now we need it.
Change-Id: I05873dd70510af5944d86d37cb5765c7bdef73a9
Cq-Include-Trybots: luci.dart.try:dart2wasm-linux-x64-d8-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252600
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Joshua Litt <joshualitt@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Because the compilation wasn't `await`ed properly, metrics reporting was
failing immediately rather than first waiting for the compilation to
occur. This fixes the issue and uses the `async`/`await` API instead of
`Future` methods, which should be easier to follow.
Change-Id: I2438a2de333a91c6918e5a286342448ff11f6823
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252843
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
I added one that didn't work, used the opportunity to correct an
error in a different one.
Change-Id: I1e92fc84bc1b80188baa541fcf2cb47fcecf18bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252863
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Auto-Submit: Janice Collins <jcollins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
This will pave the way to deprecate the old Google Doc as discussed.
Change-Id: I99b422735bb1336990bddae67aa07965b28b16b1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252860
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Janice Collins <jcollins@google.com>
* I manually edited the counts. They seemed to have drifted...
* I flipped 4 diagnostics to "noFix" with notes.
* I flipped 9 diagnostics to "needsFix" with notes.
I didn't use a _lot_ of rhyme or reason, or even method to my madness;
I more or less gut-checked each of these.
I also didn't have a lot of rhyme or reason to the ones I picked except
they are alphabetically near each other.
This is sort of an experiment in spending 10 minutes "evaluating"
possible fixes, to get down the huge "needsEvaluation" count.
Change-Id: I32c9f86058c54b97e68f5e9182e3ff827ec4eb48
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252783
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Janice Collins <jcollins@google.com>
This reverts commit 286326f834.
Reason for revert: Reverting for the regressions mentioned in https://github.com/flutter/flutter/issues/108378
Original change's description:
> [vm/compiler] Add symbols for read-only data when requested.
>
> Symbols for non-clustered objects in the read-only data section are
> now added to the static symbol tables for unstripped snapshots and
> separate debugging information.
>
> In DEBUG mode, the name for a non-String read-only data object also
> includes the name of the parent object.
>
> TEST=vm/dart{,_2}/readonly_data_symbols
>
> Change-Id: I623b023138aeca0580bc76392882eac5686f8f50
> Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-dwarf-linux-product-x64-try,vm-kernel-precomp-linux-product-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-nnbd-linux-release-x64-try,vm-kernel-precomp-nnbd-mac-release-arm64-try
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/251104
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
> Commit-Queue: Tess Strickland <sstrickl@google.com>
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I82bdabf07c137fbabe7b4c45bdf23011350c3d87
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-dwarf-linux-product-x64-try,vm-kernel-precomp-linux-product-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-nnbd-linux-release-x64-try,vm-kernel-precomp-nnbd-mac-release-arm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252801
Reviewed-by: Tess Strickland <sstrickl@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
In `use_flag_test_helper.dart`, there is code for SIMARM/SIMAR64,
but now we have SIMRISCV64.
For now, just look for `SIM` in the build directory to determine
whether or not we're running on a simulated architecture, and
disable the assembly part of `use_dwarf_stack_traces_flag_test.dart`
on all simulated architectures instead of just SIMARM/SIMARM64.
(They run fine locally for SIMARM/SIMARM64, but trybots don't
have the buildtools fetched currently as the configuration uses our
own ELF writer to generate snapshots, not an assembler.)
TEST=vm/dart{,2}/use_dwarf_stack_traces_flag
Closes: https://github.com/dart-lang/sdk/issues/49519
Change-Id: I710de16f29a24e6d64a8bce3469da9648ee25def
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-debug-simriscv64-try,vm-kernel-precomp-linux-release-simarm_x64-try,vm-kernel-precomp-linux-release-simarm64-try,vm-kernel-precomp-linux-release-simarm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252604
Commit-Queue: Tess Strickland <sstrickl@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
The primary focus of the new benchmarks is measuring the current
overhead of caching instantiated versions of the type arguments
in the uninstantiated type argument.
Change-Id: If611e72ac4f7a94c82f58d06cc34dcef2b8382df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/252423
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Tess Strickland <sstrickl@google.com>
This format is emitted by AngularInfo internally (for identifying providers/components) but conforms to Dart2JS's qualified naming scheme.
Change-Id: I1a38e41105f7fb92a30d3358c08b72e892ccf3c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/250344
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>