A NullableType can be a precise AbstactValue if the base type can be
precise.
The main effect is more lowering of field setters to HFieldSet,
(i.e. for fields with nullable types.
Change-Id: If1f92e1a79da87a73df02da3b9fc8fc3542f7b40
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139326
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
The isolate implementation will not be included in analysis_server_client
(as that is a public package), but to allow sharing of code this
refactors Server with a base class for common code between the
implementations. This is intended to be a non-breaking change for
the interface of analysis_server_client.
Bug: https://github.com/dart-lang/sdk/issues/41056
Change-Id: I60fc5233193527f19cbc4b937a784150a53e86b3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140140
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Janice Collins <jcollins@google.com>
Some Android ARM emulators claim support for idiv features in /proc/cpuinfo
but trigger a SIGILL when executing these instructions.
See https://github.com/flutter/flutter/issues/37193
Change-Id: Ie2a93df7a286a933190164bb31d6210c1658a260
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140248
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
The json.decode function returns a _JsonMap, which is a Map<String, dynamic>
and could include nulls. Without converting to a Map<String, Object>,
the migrated map_entry_test for the nnbd sdk causes a runtime error.
Change-Id: I8b66e693a5f91c1e14f7a89d887ac4c4549442a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139753
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Riley Porter <rileyporter@google.com>
The documentation on [findPrevious] reads: "Return the token before [target] or `null` if it cannot be found."
Bug: https://github.com/dart-lang/sdk/issues/38681
Change-Id: I3f9d0418e7ea4efa5190da895a3932bf91f160d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140245
Commit-Queue: Jaime Wren <jwren@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Auto-Submit: Jaime Wren <jwren@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Swarm is one of the few things ostensibility using it, but I don't
think we run the Swarm tests at all anymore. So let's just kill them.
Change-Id: Ibfe55069159e05532128fe3aa7dd86019d702cd3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140246
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
This change is required because said tests may throw an ArgumentError
until we have soundness.
Change-Id: I09f569bf4ade6936e672490ab6b539f1d15b7708
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140289
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Auto-Submit: Erik Ernst <eernst@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
We were accidentally dropping FutureOr on the `FutureOr<NullableR>*?` case. That is we had:
FutureOr<NullableR>*? => NullableR
instead of:
FutureOr<NullableR>*? => FutureOr<NullableR>
Change-Id: Idfe2748ccb03a9d4ee18b57022f9bdb7fbb55d42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140243
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Since constant evaluation moved out to the CFE we should no longer hit
thise code path.
Change-Id: Ifeec982f7c09b089e7bfd442f84ee32667b31ab6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140281
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
Without this, this class might get tree-shaken by the AOT compiler
despite being in the object store (linked_hash_set_class).
Fixes https://github.com/dart-lang/sdk/issues/40083
Change-Id: I8b3025283182280428d482999f2e6598419ee07c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139816
Commit-Queue: Teagan Strickland <sstrickl@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Now when -v/--verbose is used, we will also print call information
when those calls appear in stubs that do not correspond to Dart code.
The returned information contains the name of the stub (the name of
the static symbol in the ELF file generated for the stub) as well as
the offset of the frame PC within the stub payload.
This change also adds a flag --dump-debug-file-contents that
outputs the parsed information from the file passed via -d/--debug.
Change-Id: Ic52dd6825f2f3564efa3c2c12b46a8bef23d56bc
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-linux-release-simarm_x64-try,vm-kernel-precomp-mac-release-simarm64-try,vm-kernel-precomp-win-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139280
Commit-Queue: Teagan Strickland <sstrickl@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
The test runner has logic to merge experiments from shared-options, but not from dart2js-options.
Change-Id: I73fd0f4440edb11750b2d9ee78746bd13d260869
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140200
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Update language version in `package_config.json` since the prior version had a
very low SDK lower bound.
Change-Id: I7eca1f5c53c61b0a1af0c702236867237a489e3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140141
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
This reverts commit a4c6356df3.
Reason for revert: external_service_notification_invocation_test failing on at least AOT
Original change's description:
> [ VM / Service ] Migrated Observatory service tests from package:unittest to package:test and package:expect.
>
> Tests which previously used 'expect' in the target process have been
> changed to use 'Expect.*' as 'package:test' throws an exception when
> using 'expect' outside of a 'test(...)' scope.
>
> Change-Id: I4e031cafd19f294bfcb1deb6a253b42b4122e653
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140160
> Commit-Queue: Ben Konyi <bkonyi@google.com>
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
TBR=bkonyi@google.com,rmacnak@google.com,asiva@google.com
Change-Id: I242156e0868d6bd0a3b6d7f7db94c22001d5dbc4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140221
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Tests which previously used 'expect' in the target process have been
changed to use 'Expect.*' as 'package:test' throws an exception when
using 'expect' outside of a 'test(...)' scope.
Change-Id: I4e031cafd19f294bfcb1deb6a253b42b4122e653
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140160
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
- Defined initial interface
- Currently can spawn an HTTP server and forward websocket and HTTP
requests to the VM service
- Simple smoke tests
- Initial documentation in dds_protocol.md and other book keeping
- Enabled analysis on bots
Change-Id: Ia11e9e33fd10b0b4700b704a29e2977341441cec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139542
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>