If hashcode is null it gets set on line 128 to dart.hashcode which
is a top level method in the dart:_runtime library.
Change-Id: Ib26a70dc84305dfa11eb15206abd36f003adcd9b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137401
Auto-Submit: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
This reverts commit 099aa18654.
Reason for revert: Modifying a legacy test to make it run means it is pointing to a breaking change behaviour which we should note, considering that this test works in JIT mode I would think it is an issue in the AOT pipeline.
Original change's description:
> [ VM / NNBD ] Fixed standalone_2/io/file_test
>
> Change-Id: I28dbe124125425bfa2460f30be974e165c6bdf7c
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137360
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
TBR=bkonyi@google.com,rmacnak@google.com,asiva@google.com
Change-Id: I56ea1d96f8bbac5d77e9dce417515b2f21f662cf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137500
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
This changes how we used String.fromEnvironment to enable tracing.
With null-safety http://dartbug.com/40678 means that these constants are
never null, so we were accidentally enabling tracing by default.
I was only able to see this when running dart2js from source
(which affects the hostasserts configuration), but I wasn't seeing this
when running from snapshot. We need to investigate that separately.
Change-Id: Ic362967d2f0daf5f9c0e1659c6a024ca9a44358f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137286
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Normalize FutureOr<T> and Never? after instantiation.
Use mutual subtyping of bounds in generic function type parameters instead of structural equality.
Change-Id: I78b836d8bd2f091bd56e5a0f9c2089a411fa6f6a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135787
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Liam Appelbe <liama@google.com>
- Move sanitizer down since it's less relevant than compiler, etc.
- Update the compiler docs to match the current set of compilers.
Change-Id: I2f44eaad0f38186c942c74d1bfdc13caf20708c6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137324
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
I think this also includes the necessary changes to the summary format.
Change-Id: I12bb28d5579f05d7026d0778e847380425e90b3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137252
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
This reverts commit bc4893a3b3.
The previous attempt failed because when we check if something is a
conditional expression we used a rewriter that didn't actually rewrite.
This further down the line (still checking if we can parse the expression)
results in errors occurring (that wouldn't have occurred if the rewrite
had happened) and the conclusion was thus that it wasn't a conditional
expression and we parsed it as a null-aware index operator (which gave
errors because it wasn't).
This 2nd try solves it by having a rewriter that actually rewrites,
but then allows to undo the rewrites after we're done parsing.
Change-Id: Ide3c0d6a870d4dc18b6d9475b0227d93c733dc7f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136624
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
This all worked previously, but there probably was a weird merge mistake
or something that deleted it.
Here the lost fixes are added again, with more testing.
Change-Id: I8941cb6c88c44e22b70c12c93f7256fb371177f6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136976
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
This reverts commit c7d7552697.
Reason for revert: https://github.com/dart-lang/sdk/issues/40780
Original change's description:
> [vm] Re-land aggressive write-barrier elimination.
>
> It incorrectly assumed that all stores in Dart code write to Instances.
> There is actually one exception, Contexts, which do not inherit from Instance.
>
> I've added asserts to ensure this kind of bug cannot resurface.
>
> The original change is in patchset 4.
>
> Change-Id: Ic2d8d05e70a4de738eb9fb5980487b4f27111b8c
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136221
> Commit-Queue: Samir Jindel <sjindel@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
TBR=kustermann@google.com,rmacnak@google.com,sjindel@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I1891677b21560c7fc5a54a8eb800ef5850654402
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137290
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
This test was actually totally broken. It called
useHtmlIndividualConfiguration(), which tells the test runner to treat
each group() as a separate test. But it had no group() calls at all, so
the test runner didn't enqueue *anything* for it. It was completely
skipped. :-O
Change-Id: Ib7b030c94d286f467601ec490308c32fb500c7a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137291
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Remove sections describing differences between dart2js and ddc that
have since been resolved.
Both ddc and dart2js will require use of `allowInterop` in all but
unlikely edge cases. Both will be strict about argument types and count
as long as `allowInterop` is used.
Other fixes:
- Fix spelling of "supersedes".
- Use `List.from` over `list.cast().toList()` in example.
Change-Id: If4ce0926a4460ed41ddea2714ee3324c60770d62
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136844
Commit-Queue: Nate Bosch <nbosch@google.com>
Auto-Submit: Nate Bosch <nbosch@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>