Commit graph

97276 commits

Author SHA1 Message Date
Mayank Patke 4a8b39ce3c [dart2js] Fix missing null case in MemorySourceFileProvider
Change-Id: I43956623b369fc1eb10a878ed67210ad02ddc6b6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326161
Reviewed-by: Nate Biggs <natebiggs@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2023-09-14 22:07:47 +00:00
Vyacheslav Egorov 98d9a31dbc [vm/testing] Improve il_matchers obfuscation support
Recognize "Instance of C" string and handle it in special way:
apply renaming to class name (C) only.

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

TEST=vm/dart/comparison_canonicalization_il_test in obfuscate configuration

Fixed: 53512
Cq-Include-Trybots: luci.dart.try:vm-aot-obfuscate-linux-release-x64-try
Change-Id: I3fa31ab52aef01417d523a075913a0971158be72
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326062
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Slava Egorov <vegorov@google.com>
2023-09-14 21:58:52 +00:00
pq 74bdcded45 @visibleForTesting validation for extension type members
See: https://github.com/dart-lang/sdk/issues/53434

Change-Id: I0cca5b38fc6e432a8eb5e1ab3381625203063cab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326180
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-09-14 20:46:48 +00:00
Vyacheslav Egorov c7f604bd3e [vm/compiler] In CP ignore constant Redefinitions
Only replace Redefinition with a constant if the
original definition is a constant.

It used to be the case that Redefinition could
be constant only if the origin definition was
however 5c320a108 changed that: we would augment
graph with additional redefinitions after branches
on equlity comparisons. This meant that constant
value would propagate to other already inserted
redefinitions and than these redefinitions started
to be replaced by their constant value. Something
that we wanted to prevent to begin with.

Also fix the comment for InsertRedefinitionsAfterEqualityComparisons
as pointed by @aam

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

R=alexmarkov@google.com
TEST=issue found by CI and so covered by existing tests

Fixed: 53514
Change-Id: I5e547d34de3aabc340329da1a43341689bfc58e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326120
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Auto-Submit: Slava Egorov <vegorov@google.com>
Commit-Queue: Slava Egorov <vegorov@google.com>
2023-09-14 20:28:39 +00:00
Parker Lougheed 9b34c52aef Update analyzer_utilties to Dart 3 and enable more lints
All the packages that depend on it now have constraints greater or equal to 3.0.0.

The added linter rules are taken from other analyzer packages.

Change-Id: If51f9209dab9c58525a1207534bccb6491a409c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325904
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2023-09-14 20:27:26 +00:00
pq 240ef465e6 fix unsafe cast
Change-Id: If2a2f72c62e8bda14c04de88cb37bf416e5b0c86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326181
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2023-09-14 19:27:58 +00:00
Devon Carew 9de782cecb [deps] rev ecosystem, http, native, shelf, tools, webdev
Revisions updated by `dart tools/rev_sdk_deps.dart`.

ecosystem (e96fbdb..babf5d1):
  babf5d1  2023-09-13  Devon Carew  add additional lints to dart_flutter_team_lints (#167)
  7740bef  2023-09-13  Moritz  Write comments on forks for `firehose` (#165)

http (de19214..e19094a):
  e19094a  2023-09-14  Brian Quinlan  Use efficient operations when copying bytes between Dart and Java (#1019)
  d7e4375  2023-09-13  Parker Lougheed  Cleanup `package:http` utils (#1011)
  eafbbb0  2023-09-12  Brian Quinlan  Separate the cronet callbacks from the `send` method (#1017)
  2cbb703  2023-09-12  Brian Quinlan  Switch `cronet_http` to use jnigen (#1016)

native (bbcbc1f..7faf62c):
  7faf62c  2023-09-14  Gabriel Terwesten  Add `includes`, `flags`, `std`, `language`, `cppLinkStdLib` options (#125)

shelf (2926f76..e2a02b7):
  e2a02b7  2023-09-13  Kevin Moore  Move to latest pkg:dart_flutter_team_lints, bump min sdk to Dart 3 (#378)

tools (fa01f9b..1512f3d):
  1512f3d  2023-09-13  Elias Yishak  Add Fake Analytics instance that uses list to save events sent (#149)

webdev (6b21ecf..501ccc2):
  501ccc28  2023-09-12  Elliott Brooks  Update DCM triggers to match Dart DevTools (#2230)

Change-Id: Ic3dc1924da48454a28e4c0d8705244ac1565e74a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325967
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2023-09-14 18:36:33 +00:00
Martin Kustermann 8637cbe26c [dart2wasm] Allow package:ui/* to import dart:_wasm
Change-Id: I4fc17b992db272d6154a7c58fc1f4229c5368ee4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325620
Reviewed-by: Jackson Gardner <jacksongardner@google.com>
Auto-Submit: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
Commit-Queue: Jackson Gardner <jacksongardner@google.com>
2023-09-14 18:10:27 +00:00
Kevin Chisholm 07c5092444 [docs][release] Merge stable Changelog to main and update broken links.
Change-Id: Iba25e89e98332ccd8b0f4e18213cebc39bbe7f0b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326141
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Kevin Chisholm <kevinjchisholm@google.com>
2023-09-14 17:56:08 +00:00
Sam Rawlins 66b58414eb Move diagnostic_describe_all_properties tests
Change-Id: I541f7e9a39b3b0f3de60cf68117e643ba5b661b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325966
Auto-Submit: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2023-09-14 17:33:34 +00:00
pq 04ad6c22f9 test tidying
Follow-up from: https://dart-review.googlesource.com/c/sdk/+/325980

Change-Id: Ie6e8b2ca8d686c9a5c77cb3c2b5964afc581c679
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326142
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-09-14 17:25:38 +00:00
Martin Kustermann f340a23cde [gardening] Exclude standalone{,_2}/io/issue_32052_test from iso-stres
This test uses `dart:cli`s `waitFor` which only works under a flag now.

TEST=ci

Change-Id: I9efe139c868d12c6fa2af1c0d7bfa64a5af5b2a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326100
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2023-09-14 13:11:44 +00:00
Johnni Winther 01f582df78 [cfe] Make (Tree)Visitor(1) pure interfaces
This splits visitors for (Tree)Visitor(1) into pure interfaces, mixins,
and a base class with the base implementation. This is a step towards
avoid having an accidental default implementation where a static error
would have been preferable.

This extract a ConstantReferenceVisitor(1) and its corresponding
DefaultMixin from the Visitor(1) interface.

TEST=existing

Change-Id: Ibc55bed9cff76581deaade91a10600c17fafc6dd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325704
Reviewed-by: Mayank Patke <fishythefish@google.com>
Reviewed-by: Ömer Ağacan <omersa@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2023-09-14 10:59:26 +00:00
Vyacheslav Egorov 9900af07d4 Add CHANGELOG.md for waitFor
R=kustermann@google.com

Change-Id: I64d09f62790790bc1f35a565a5ecf6ebbc109377
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326061
Reviewed-by: Martin Kustermann <kustermann@google.com>
2023-09-14 10:58:14 +00:00
Daco Harkes f016dbb007 [deps] Roll dart-lang/native packages
Bug: https://github.com/dart-lang/native/issues/130
Change-Id: I6ec9f934c227b7eb9f8ee724598d9d557e42dab6
Cq-Include-Trybots: luci.dart.try:pkg-linux-debug-try,pkg-linux-release-try,pkg-mac-release-arm64-try,pkg-mac-release-try,pkg-win-release-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326020
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Hossein Yousefi <yousefi@google.com>
2023-09-14 10:45:22 +00:00
rmasarovic 1cd720afe9 web_audio is not part sky_engine
Closes https://github.com/dart-lang/sdk/pull/53242

GitOrigin-RevId: 74b22f59aed05bce89b0d17d5e0aba5477c1060a
Change-Id: Iedb79fc297009cb4b046ebd57ff61b26939c1bbe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/321340
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Slava Egorov <vegorov@google.com>
2023-09-14 10:33:17 +00:00
Vyacheslav Egorov 61b03b49b1 [vm] Disable dart:cli waitFor by default
Per breaking change request we are now disabling
waitFor by default.

Users can still enable it by passing the flag:

     --enabled-deprecated-wait-for

Issue https://github.com/dart-lang/sdk/issues/52121

TEST=standalone/io/wait_for_deprecation_test

CoreLibraryReviewExempt: standalone VM only change
Change-Id: Ied78f91344d15cb77e932514e2b752bb6ac5dc5d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326021
Commit-Queue: Slava Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Michael Thomsen <mit@google.com>
2023-09-14 10:08:29 +00:00
Johnni Winther 8d7198661e [cfe] Make more visitor pure interfaces
This splits visitors for Initializer, Expression, Statement, Member,
and MemberReference into pure interfaces and mixins with the base
implementation. This is a step towards avoid having an accidental
default implementation where a static error would have been preferable.

TEST=existing

Change-Id: I4aa243ce3b3436e05d6164c934df3c44119cd1fa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325521
Reviewed-by: Ömer Ağacan <omersa@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2023-09-14 08:16:49 +00:00
Nate Biggs 8cc1b544e0 [dart2js] Write source maps via a buffered output sink rather than creating the entire source map in memory.
Rather than build the entire source map as a string in memory, we can use buffered writes to efficiently emit the string as we build it.

In local testing this brought memory consumption down from ~6480MB to ~6330MB (-160MB).

Change-Id: Ic40f819a849f933d8662011647d4775eaa1462e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325941
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2023-09-14 02:19:32 +00:00
Nate Biggs 090db5a5ba [dart2js] Clear source location mappings after they've been processed.
The data within this maps is apparently hanging around in memory longer than it needs to. We only read from each map in a short window and once it's been read we don't use that data again. By clearing the maps ater we use them we end up saving ~700MB (out of ~7.1GB) for phase 3b on a large program.

References to all these maps are being retained by this higher level map:
https://github.com/dart-lang/sdk/blob/main/pkg/compiler/lib/src/io/code_output.dart#L143

This change clears the internal maps while that larger map is being iterated over.

Change-Id: I132dbf469391f257685b05fa69c302f1f1c44e31
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325940
Reviewed-by: Mayank Patke <fishythefish@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2023-09-14 02:19:32 +00:00
Jackson Gardner 986770f744 Revert "[dart2wasm] Fix nullable JS type and int parameters in J..."
Revert submission 323446

Reason for revert: This breaks flutter web engine unit tests. See https://github.com/dart-lang/sdk/issues/53521

Reverted changes: /q/submissionid:323446

Change-Id: I9095f0791a556d4bc912e29fde274f3cb8824317
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325964
Commit-Queue: Jackson Gardner <jacksongardner@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2023-09-14 01:00:59 +00:00
Sam Rawlins 30c98b7c36 linter: Migrate fixnum-related tests to be reflective
Change-Id: I2dbe12c2d2c66d08a2439a37c112cd08e5414204
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325902
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Auto-Submit: Samuel Rawlins <srawlins@google.com>
2023-09-13 23:34:59 +00:00
pq e50867bc2f report unused ExtensionType elements
Fixes: https://github.com/dart-lang/sdk/issues/53520

Change-Id: I2373dec8048fda9746bec6c62b3c37a8be4c44db
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325980
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-09-13 23:29:48 +00:00
Sam Rawlins 8586ef00f2 analyzer: Support category, subCategory, and canonicalFor doc directives
Work towards https://github.com/dart-lang/sdk/issues/52705

Change-Id: I3a7719fdf299d85c16b7ecfe0dc9d1e386289baf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325901
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-09-13 22:57:58 +00:00
pq a2c4c88902 validate @internal extension type member uses
See: https://github.com/dart-lang/sdk/issues/53434

Change-Id: Ie5e8398dd8c0378c3fd9a5571f3fdabdbc36a194
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325962
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-09-13 22:19:14 +00:00
Ryan Macnak b888c55033 [build] Honor dart_lib_export_symbols GN variable in the ELF loader.
Cf. 3a5a7106ee

TEST=flutter
Change-Id: Ib331b1a7b84ef530d62302b6cfbf1ab7fb025ec1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325960
Reviewed-by: Jason Simmons <jsimmons@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-09-13 21:04:28 +00:00
Derek Xu 01653dc009 [VM] Add protoc_gen_dart_wrapper
TEST=Tried running
./tools/build.py -mdebug -ax64 runtime/vm:perfetto_protos_dart on both
Linux and Windows

Fixes: https://github.com/dart-lang/sdk/issues/53496
Change-Id: I73c9bd5218dbaacb2096cf48bf7583485bdf0506
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325880
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Derek Xu <derekx@google.com>
2023-09-13 20:26:30 +00:00
Konstantin Shcheglov 47bf677824 Remove unused parameters from buildLibrary()
Change-Id: I4e48001f8de80050bc011aca0c2aa8d05fb01746
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325804
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2023-09-13 19:38:40 +00:00
pq 0cb8294574 validate @protected extension type members
See: https://github.com/dart-lang/sdk/issues/53434

Change-Id: I4bd62ec9c4791e9046e285c782bb6e9adfced9eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2023-09-13 19:24:18 +00:00
Konstantin Shcheglov 6a3551ce62 Augmentation. Resolve field references.
Change-Id: Ia73a7229470b66d313e2101bb8d85d1c4e576190
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325841
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-09-13 18:27:28 +00:00
Sam Rawlins 339d9f2dc5 analyzer: add doc directive support for example and macro
Work towards https://github.com/dart-lang/sdk/issues/52705

Change-Id: I9c3dc18546345905f179eef01c94bac2277e6bfb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325581
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2023-09-13 18:03:42 +00:00
Paul Berry 7c38351cbb Improve explanation of noSuchMethod / field promotion interaction in CHANGELOG.
Fixes #53510.

Bug: https://github.com/dart-lang/sdk/issues/53510
Change-Id: I25b9bb4c59a4c438c7d4f48cf955e388c22378f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325740
Reviewed-by: Erik Ernst <eernst@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2023-09-13 17:56:25 +00:00
William Hesse 8f556fcb8f [test] Disable Chrome event throttling in background tabs while testing
Timer events and perhaps other events are throttled when a Chrome tab
is in the background or not visible. This may be causing flaky timeouts
in Dart web tests that rely on many timers. In local testing, these
flags completely eliminated the problem.

IntensiveWakeUpThrottling is a web standard feature, and
TimerThrottlingForBackgroundTabs is a Blink-specific feature.

Bug: https://dart-review.googlesource.com/c/sdk/+/324203
Change-Id: I38904015b043768689be3a05bea5a50ad32df434
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325780
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2023-09-13 17:55:38 +00:00
Sam Rawlins 283dad4ddc analysis_server: Enforce single quotes preference
Change-Id: I553befc2c45e66bfc569004d810b4e0a958d4baa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325544
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-09-13 17:48:22 +00:00
Danny Tuppeny ec0dc8fe55 [analysis_server] Handle annotations + default to new protocol for completion metrics tool
Change-Id: I57c8f077ccc853ae7ece44c776e16e0f30401a66
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325820
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2023-09-13 17:47:35 +00:00
pq 2f13f043d5 disallow literal extension type declarations
As per the discussion in https://github.com/dart-lang/sdk/issues/53508, this way of annotating primary constructors is ambiguous. Removing.

Change-Id: I1425b95185ee05cfed953fd8b0b845a2ddd8b8f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325802
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-09-13 17:06:48 +00:00
Sigmund Cherem 38f62d2159 [cfe,analyzer] tweak to generated files to reduce chance of conflict.
This updates the generator of experimental flags to only refer to one
location for the current default language version.

Semantically the change does nothing, but it could make CLs that bump a
version smaller and easier to revert/patch.

Change-Id: I1c18c8e8105dfb33a302949ad2cfa159dae2addf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325660
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2023-09-13 16:23:44 +00:00
Konstantin Shcheglov 83fc1c2af8 Augmentation. Adding constructors.
Change-Id: I6c93c00e469dad4799eb9c662d924160fa2d338a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325452
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-09-13 15:51:19 +00:00
Alexander Aprelev bc5008a023 [benchmark] Add uimatrix benchmark.
https://github.com/yjbanov/uimatrix is WIP, but already proved useful to highlight areas for some performance improvement.

Change-Id: I8f86163e91e276ee4195b7d5c635ffbf3dbaa075
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325320
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
2023-09-13 15:27:37 +00:00
Ryan Macnak 578f95ad2e Roll double-conversion to 032fa6a7d2c319b20d3928f5d762648fa4029acf.
Bug: https://github.com/dart-lang/sdk/issues/47835
Change-Id: I5c2a278071f3c8e704754cc27fdd33a108eaf7dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325543
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2023-09-13 14:54:27 +00:00
Johnni Winther 36b93f6b08 [cfe] Make ConstantVisitor(1) a pure interface
This splits ConstantVisitor(1) into a pure interface and a
ConstantVisitor(1)DefaultMixin with the base implementation. This is
a step towards avoid having an accidental default implementation where
a static error would have been preferable.

Also removes BodyVisitor1 which was unused.

TEST=existing

Change-Id: I265754e13e0ebcce5c154b16c7ee36854f4ce9fe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325400
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
Reviewed-by: Ömer Ağacan <omersa@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2023-09-13 14:02:28 +00:00
Johnni Winther 79ad624ef0 [cfe] Handle extension type constructors and instance methods with the same name
These are supported but there synthesized names conflicted.

TEST=pkg/front_end/testcases/constructor_tearoffs/lowering/constructor_member_conflict.dart

Change-Id: I952907eb83d7e496eb7d53f5c6b67d8f1e87308b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/324680
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2023-09-13 13:15:20 +00:00
Alexander Thomas b555e71ecd [infra] Bump checked-in SDKs to 3.2.0-150.0.dev
Fixes: https://github.com/dart-lang/sdk/issues/53505
Change-Id: I8c3b83919ad2cbc97e92f1d626c6f9105802d2a7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325700
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2023-09-13 11:42:51 +00:00
Ryan Macnak ea9656ba38 [test] XCode's nm not available on shards that haven't yet run main task.
Change-Id: Ib438cac3acf1842afb4d55a203d1f7a0c91f5918
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325451
Commit-Queue: Tess Strickland <sstrickl@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2023-09-13 10:27:59 +00:00
Martin Kustermann 781a8ef9c0 [vm] Mark external methods used in Pointer.asTypedList() with resulting type
It allows the compiler to propagate this information in TFA - which
may be beneficial for cases when those methods aren't inlined.

TEST=ci

Change-Id: I55711806800e2a56e83a42cd51be705b68c3a4f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/324701
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Tess Strickland <sstrickl@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2023-09-13 09:48:56 +00:00
Nate Biggs 655687db77 [dart2js] Cache deferred JS AST bodies during printing and source map generation.
There was a bug in source map generation introduced by this deferring. A map from JS Nodes to source map info is being shared between these two operations and in order to look up nodes in the map, the Node objects must be the same.

This gives up some but not all of the gains from deferring these function bodies. I'm working on a more long term fix that combines these two passes of the AST.

Bugs: https://github.com/dart-lang/sdk/issues/53466
Change-Id: If25d1b24dd32456155e8802725d480454c71d2b6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325600
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
2023-09-13 02:35:01 +00:00
Robert Nystrom b35c645302 Roll the latest dart_style into the SDK.
There are a couple of small format changes, but they are minimal
enough that we might not need to land a pre-built SDK with this.

Change-Id: I1d258c8a782e5db24c2048f407a8b7cf7b948eef
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325580
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2023-09-13 01:44:57 +00:00
pq 293848fd52 fix literal checks for extension type primary constructors
Change-Id: I6d2406b23bdca0639408166129eefacc4fad30a9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325640
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2023-09-13 00:18:51 +00:00
Srujan Gaddam 4efb33e128 [dart:js_interop_unsafe] Rename extensions and make []/[]= take String properties
Strings are the most likely use case of getting and setting
properties, and therefore we should make that easier to use.
This CL also renames the extensions in dart:js_interop_unsafe
to a more relevant name and to avoid conflicts in dart:js_interop.

CoreLibraryReviewExempt: Backend-specific library.
Change-Id: Ia8ce6593167c648f9710b47cfe27f80c854be407
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/324572
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2023-09-12 23:11:55 +00:00
Ryan Macnak 3a5a7106ee [build] Define DART_SHARED_LIB for elf_loader.cc.
This makes elf_loader.cc consistent with the other compilation units containing Dart_* functions. Addresses a Mac linker warning that these functions match the export glob but have hidden visibility.

TEST=build
Change-Id: I868c9940a7027c466c1173aa2db2fbeff6fe8999
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325362
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2023-09-12 22:42:38 +00:00