Commit graph

90380 commits

Author SHA1 Message Date
Janice Collins
a899b17908 Update dartdoc to 6.2.0.
Change-Id: I10e37442904eb9161a98fb257696854be2412001
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286867
Commit-Queue: Janice Collins <jcollins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2023-03-06 18:59:10 +00:00
Brian Wilkerson
a4a255e1a9 Reland: Convert the AnalyticsManager to use the analytics package
Change-Id: Id3fd3fa172a77fe081ad3f718ba2c893dfd550e4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286600
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
2023-03-06 17:24:17 +00:00
Johnni Winther
12ea77b96e [_fe_analyzer_shared] Remove old Space model
This remove the [Space] class from the old algorithm and instead
encodes the patterns into the new model. The [Pattern] and
[Patterns] classes of the new model have been renamed to
[SingleSpace] and [Space], respectively, and a [Path] class is
added to track the path property used in the model of the new
algorithm.

Change-Id: I0c86c738807030be2f9b59f3aefb5bfcf5bbaeee
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286501
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2023-03-06 16:57:16 +00:00
Danny Tuppeny
21bf9f4ba6 [analysis_server] Syntax highlight the "inline" keyword
Change-Id: I1b4acaea9e0f74fda8a844bcd4d56d746a7e3bf4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286928
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2023-03-06 16:09:43 +00:00
Robert Nystrom
872422fa22 [flip-patterns] Update switch tests now that break is no longer required.
Change-Id: If32a8133f89a0ee5e0961657b8fc461b30561226
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286869
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Commit-Queue: Jake Macdonald <jakemac@google.com>
2023-03-06 15:48:25 +00:00
William Hesse
9aa70fbdf7 Fix test_runner package unit tests
Fix test_runner's handling of tests passed as
relative native file paths to the test runner command.
Fix failing use of a special executable to test a crashing process.

Change-Id: I0837a0c2c4461883a604aa85083c3098dfbaae2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286821
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2023-03-06 13:57:49 +00:00
Ömer Sinan Ağacan
6a0857952c [dart2wasm] Update type names list type
Change from `List<_StringBase>` to `List<String>`, as that's what
`_getTypeNames` returns.

Change-Id: Ib216796eb0a105e81e45d6217c2a6ddb015129c1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286923
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Ömer Ağacan <omersa@google.com>
2023-03-06 10:40:48 +00:00
Daco Harkes
b1e59721d4 Revert "[vm] Remove tcmalloc and malloc profiler."
This reverts commit c67fac9cb4.

Reason for revert: Regresses `dart:io` performance and causes
failures.
https://github.com/dart-lang/sdk/issues/51639

Original change's description:
> [vm] Remove tcmalloc and malloc profiler.
>
> The standalone VM originally began statically linking tcmalloc to work around bugs in the system malloc for Fiber. Later it used tcmalloc's hooks to implement a profiler, but this is rarely used since it is only available in debug mode, misses early allocations, and often misses late allocations from an exhausted sample buffer. Removing it altogether avoids build complexity around which combinations of compiler/architecture/sysroot support tcmalloc, and reduces binary size.
>
> TEST=ci
> Change-Id: I4b259e18b82b2d12a2a60962aabf83bd8d997d19
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286120
> Reviewed-by: Ben Konyi <bkonyi@google.com>
> Commit-Queue: Ryan Macnak <rmacnak@google.com>

Change-Id: I4395edd6f5bd7e26b4e38f4d931ad2ea67afba18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286925
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2023-03-06 10:28:33 +00:00
Johnni Winther
6f752165ea [cfe] Handle continue to default case
Closes #51553

Change-Id: I1a1174e786eeb79db42e6da940a03cf05c2dabe5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286823
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2023-03-06 10:13:31 +00:00
Chloe Stefantsova
874e7ee056 [cfe] Implement matchMapType for the shared analysis of patterns
Part of https://github.com/dart-lang/sdk/issues/49749

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

Change-Id: I4875020510246761878e71b969698cbd1baa0de0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286822
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2023-03-06 08:47:38 +00:00
Brian Wilkerson
cb7366482c Move some tests from keyword contributor
This proved to be quite a bit more time consuming than I'd realized,
and it was a lot harder to verify the results than I would have
guessed.

But I think it made it easier to see holes in our location coverage
to have the tests split up this way. I decided not to fill those
holes in this CL in the hope that it's easier to see the
correspondence between the old tests and the new tests.

Change-Id: Ia73ce4367fc11ae78310f7ae182bf16591246597
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286871
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-03-04 18:03:58 +00:00
Ömer Sinan Ağacan
22c45b2e0c [dart2wasm] Implement instantiation closure equality
Changes:

- Instantiation context structs now have a common supertype:
  `#InstantiationClosureContextBase`. This supertype is used to check if
  a closure is an instantiation.

- Generic closure vtables now have one more entry for comparing types in
  instantiation contexts.

- All instantiations with same number of types use the same context
  struct type and the vtable entry for comparing types in contexts.

- `_Closure._equals` checks if closures are instantiations (with a type
  test against `#InstantiationClosureContextBase`), and if they are,
  gets the contexts and calls the function in the vtable for comparing
  the types in the contexts.

Fixes #51030

Change-Id: I680041480963381337dcfa1fbf6c3a77ca564205
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/285902
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2023-03-04 11:55:37 +00:00
Brian Wilkerson
262acf7c90 Allow completion tests to include suggestions of private identifiers
Change-Id: I4b735b75d0ab67598624bab3d340ef2e6ca25f37
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286868
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2023-03-04 05:45:19 +00:00
Konstantin Shcheglov
25554cb6e6 Issue 51561. Update SuperContext to check late instance fields of extensions.
Bug: https://github.com/dart-lang/sdk/issues/51561
Change-Id: I6d953cbea3fae8792fecdeb5df3d44b292127c89
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286864
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-03-04 01:59:18 +00:00
Robert Nystrom
e8d44461ce [flip-patterns] Update language/constants_2018/equals_test.dart for primitive equality.
We've changed const `==` to be based on primitive equality. It used to
just be an allowed list of concrete types, but now `==` is a valid
constant expression on any type that has primitive equality.

This change isn't directly part of patterns, but is enabled under the
same flag.

Update this test to the new semantics.

Change-Id: I484bd09f5775319dc49038d70a244c3c1564fe93
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286865
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
2023-03-03 23:39:37 +00:00
Ryan Macnak
c67fac9cb4 [vm] Remove tcmalloc and malloc profiler.
The standalone VM originally began statically linking tcmalloc to work around bugs in the system malloc for Fiber. Later it used tcmalloc's hooks to implement a profiler, but this is rarely used since it is only available in debug mode, misses early allocations, and often misses late allocations from an exhausted sample buffer. Removing it altogether avoids build complexity around which combinations of compiler/architecture/sysroot support tcmalloc, and reduces binary size.

TEST=ci
Change-Id: I4b259e18b82b2d12a2a60962aabf83bd8d997d19
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286120
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-03-03 23:32:12 +00:00
Konstantin Shcheglov
08d9d8586a Don't report UNUSED_LOCAL_VARIABLE for already DUPLICATE_VARIABLE_PATTERN.
Change-Id: I14dd9bdd76d006f230653fa74c1410af63d84fd1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286866
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-03-03 20:30:14 +00:00
Ryan Macnak
08634ec4ee [vm] Remove thread time from the VM-internal recorders.
Querying the thread clock takes the overwhelming majority of time when using the VM-internal recorders (ring, startup, endless, file). Including the thread clocks in the timeline allowed visualizing roughly how much an event got scheduled out, but not when. This is a high price to pay for such fuzzy information. Precise scheduling information is available from Fuchsia tracing, systrace or Signposts.

```
import "dart:developer";
main() {
  var n = 1000000;
  var watch = new Stopwatch()..start();
  for (var i = 0; i < n; i++) {
    Timeline.timeSync("EventName", () {});
  }
  print("${watch.elapsedMicroseconds.toDouble() / n} us/event");
}
```

--timeline_recorder=ring      2.751822 -> 0.487936 us/event (5.64x)
--timeline_recorder=systrace  0.440439 -> 0.435997 us/event

TEST=ci
Bug: https://github.com/flutter/flutter/issues/121372
Change-Id: Ib6d625f28384a4e87df2a3305483f0f6facd08ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286661
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2023-03-03 19:05:28 +00:00
Ryan Macnak
cbb4881f0d [test_runner] Make AppJIT testing work with QEMU.
Change-Id: I784e24c1fbb04fefc09497cbc6006f5d330afec1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/285344
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
2023-03-03 18:59:16 +00:00
Robert Nystrom
c33ece3515 Roll dart_style into the SDK.
This contains support for all of the 3.0 language features. It also
contains a couple of very minor style changes. Unlike the previous
reverted roll (https://dart-review.googlesource.com/c/sdk/+/285460),
this does *not* contain the style change to support compact switch
statements. This should eliminate most of the style churn.

Change-Id: I95dd73a3a921b4a0cd278a7abb86daf8eea21397
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286701
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2023-03-03 18:53:20 +00:00
Ryan Macnak
3633ff4e71 Roll Clang from 20d06c833d83 to 28ee6040710f.
Address overflow warnings in ffi test library.

TEST=ci
Change-Id: I80e54d367532cbc392d6176dae97e9b545968de3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286660
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-03-03 18:22:32 +00:00
Ryan Macnak
c7569492aa [infra] Add configurations to rename JIT NNBD.
Change-Id: I139200ddbec0da456c38d495141b0122ed034a08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286222
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2023-03-03 18:21:01 +00:00
Devon Carew
008c7bc60c Bump cli_util to 91747f7dd9bdf2457f081d3cf035de5672dd4a02
Changes:
```
> git log --format="%C(auto) %h %s" 3851652..91747f7
 https://dart.googlesource.com/cli_util.git/+/91747f7 Update README.md (79)
 https://dart.googlesource.com/cli_util.git/+/525f2a8 remove getSdkDir; prep to publish 0.4.0 (78)

```

Diff: https://dart.googlesource.com/cli_util.git/+/3851652a72ee572ec7371942a658788c61847dea..91747f7dd9bdf2457f081d3cf035de5672dd4a02/
Change-Id: Ibc2330337b72023f8b0ae39fda6512a01532fc0f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286702
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2023-03-03 17:53:17 +00:00
Derek Xu
db556df468 [VM/Service] Start testing mixins in get_object_rpc_test.dart
Change-Id: I1a2f83c197398abc7a568840ba73f63c55f9e9f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286024
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Derek Xu <derekx@google.com>
2023-03-03 17:48:21 +00:00
Alexander Markov
f578ca179a [gardening] Exclude lib/async/multiple_timer_test from isolate stress testing
This test runs multiple timers with fixed timeouts and expects certain
order for timer handlers. Timers may not fire in order if the system is
under heavy load, which happens during isolate stress testing.

Change-Id: I5fc7f23f44496b2df57797463493a89b6c64f763
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286840
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Auto-Submit: Alexander Markov <alexmarkov@google.com>
2023-03-03 16:52:28 +00:00
Konstantin Shcheglov
f67f7d11d7 Track a reason for a pattern variable inconsistency.
This allows us report more specific errors.

Bug: https://github.com/dart-lang/sdk/issues/51505
Change-Id: I6e40af1fedce55886a58b954721154db933ede17
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286605
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-03-03 16:14:48 +00:00
Daco Harkes
8b33eb6114 [vm] RISC-V fix build
Prevent build error with `gcc-riscv64-linux-gnu (4:12.2.0-4)`.

TEST=build on RISC-V bot + tested locally.

Change-Id: If349cccc49ed5ce9c76da8fdd1c48704cb57d9de
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286820
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2023-03-03 14:07:47 +00:00
Johnni Winther
2a746cb51f [_fe_analyzer_shared] Improve exhaustiveness for null-assert
This improves the exhaustiveness handling for null assert patterns
by extending the space of the subpattern with the null space. This
reflects the fact that null assert will throw on `null` and can
therefore be considered to cover that case.

Change-Id: If344eaaa55dcc70474f45519b53586e7d36e6e80
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286400
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-03-03 12:31:26 +00:00
Ömer Sinan Ağacan
8dbf923e89 Remove invalid inequal tear-off hash code test
`hashCode` requires that equal objects have the same hash code.

However it doesn't (and cannot) require that inequal objects have
different hash codes. Remove the invalid check.

This makes the test pass on dart2wasm, which currently implements
closure hash code as:

    // Simple hash code for now, we can optimize later
    @override
    int get hashCode => runtimeType.hashCode;

Note: this change alone does not make the whole file pass with
dart2wasm, there's another (unrelated) issue which will be fixed
separately.

Change-Id: Ibc83aee13fdbe48d1b2f7d8e720766b455c6b930
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286783
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
2023-03-03 11:07:50 +00:00
Lasse R.H. Nielsen
cc736dfb65 [flip-modifiers]: Reapply "Enforce current library restrictions."
This reapplies commit 0c05e33836
and reverts the revert 029e0cec71.

Tested: Added few new tests, updated existing. Mainly regression testing.
CoreLibraryReviewExempt: Reviewed in original CL.
Change-Id: Ifcc79ce2f9375f607722643a04957b0961e6c295
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284304
Reviewed-by: Ömer Ağacan <omersa@google.com>
Commit-Queue: Lasse Nielsen <lrn@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-03-03 09:37:38 +00:00
Greg Price
8e600908b6 Drop impossible case in negative int.toString
This fast path is never taken, because it's subsumed by the
even-faster path at the top of toString.  When this function
is called, negSmi is always <= -100.

Tested: ci
Change-Id: I687fada0222b7815c41151b84c1ce4b1d312d6e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284260
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Ömer Ağacan <omersa@google.com>
2023-03-03 08:18:44 +00:00
Konstantin Shcheglov
a3038980d5 Update the list of patterns in DartPatternImpl.
Change-Id: Ieb10c848536d087a7cefb6e537d3e3c33321f644
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286607
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-03-03 02:02:38 +00:00
Nate Biggs
2ba8a4cd2a [dart2js] Use JS '==' operator when one side of an identical operation is typed as definitely null.
Change-Id: I4519684a9750cb47b478dc0c83da836c8cd2dfde
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286680
Commit-Queue: Nate Biggs <natebiggs@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2023-03-03 01:07:40 +00:00
Nate Biggs
00effc3689 [dart2js] Improve linearized inferrer's type results.
- Only add type as input if the info doesn't have one. This was causing nulls to be added into implementations of `==` where they weren't being added before.
- Add a mechanism to avoid virtual targets for dynamic calls with specified selectors. Inference results suffer when virtual targets are used for the 3 specified selectors as these lead to intercepted calls that cannot be optimized out.

After this change in a big program there are 42 member type differences between the linearized and current algorithms in a program with ~84.5k member types. Some of those 42 are actually improvements on the current algorithm that we get since the new algorithm no longer imposes a refinement limit (except to catch non-converging types).

Change-Id: Ic15d95345e1e2fdc25aa74df00f72e1920fbd3a7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284860
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
2023-03-03 01:03:44 +00:00
Ryan Macnak
e31c3713bf Reland "[build, vm] Access TLS with less code."
- Avoid TLS initialization checks by using inline initialization.
 - Avoid global offset table indirection by reducing -fPIC to -fPIE.

out/ReleaseXARM64/exe.stripped/dart_precompiled_runtime
11137992 -> 11274776 (-1.21%)

We still need -fPIC in some places because we build a few shared libraries for FFI, so copy some of Fuchsia's GN setup to use -fPIE or -fPIC as appropriate.

Account for older gcc that does not default to -fpie.

TEST=ci
Bug: https://github.com/dart-lang/sdk/issues/51602
Change-Id: I85072153cb1aef9047c1adbf36c7496fbeb11e10
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286221
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-03-02 23:07:16 +00:00
Ryan Macnak
2269ac16db Revert "Roll Clang from 20d06c833d83 to 28ee6040710f"
This reverts commit 69b9559caf.

Reason for revert: Windows error: overflow in expression

Original change's description:
> Roll Clang from 20d06c833d83 to 28ee6040710f
>
> If this roll has caused a breakage, revert this CL and stop the roller
> using the controls here:
> https://autoroll.skia.org/r/clang-dart-sdk
> Please CC dart-engprod@google.com,dart-vm-gardener@grotations.appspotmail.com,dart-vm-team@google.com on the revert to ensure that a human
> is aware of the problem.
>
> To file a bug in Clang: https://bugs.fuchsia.dev/p/fuchsia/issues/list?q=component%3AToolchain
> To file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues
>
> To report a problem with the AutoRoller itself, please file a bug:
> https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
>
> Documentation for the AutoRoller is here:
> https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
>
> Cq-Include-Trybots: luci.dart.try:dart-sdk-linux-try;luci.dart.try:dart-sdk-mac-try;luci.dart.try:dart-sdk-mac-arm64-try;luci.dart.try:dart-sdk-win-try
> Change-Id: I433a87e0b7a2f8407ea3b8e23a1894957cfa23ac
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286580
> Commit-Queue: DEPS Autoroller <dart-autoroll@skia-public.iam.gserviceaccount.com>
> Commit-Queue: Ryan Macnak <rmacnak@google.com>
> Reviewed-by: Ryan Macnak <rmacnak@google.com>

Change-Id: I09a090a33fb663327eb74e5a192714673bcd661f
Cq-Include-Trybots: luci.dart.try:dart-sdk-linux-try;luci.dart.try:dart-sdk-mac-try;luci.dart.try:dart-sdk-mac-arm64-try;luci.dart.try:dart-sdk-win-try
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286608
Auto-Submit: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2023-03-02 22:56:27 +00:00
DEPS Autoroller
69b9559caf Roll Clang from 20d06c833d83 to 28ee6040710f
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/clang-dart-sdk
Please CC dart-engprod@google.com,dart-vm-gardener@grotations.appspotmail.com,dart-vm-team@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Clang: https://bugs.fuchsia.dev/p/fuchsia/issues/list?q=component%3AToolchain
To file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.dart.try:dart-sdk-linux-try;luci.dart.try:dart-sdk-mac-try;luci.dart.try:dart-sdk-mac-arm64-try;luci.dart.try:dart-sdk-win-try
Change-Id: I433a87e0b7a2f8407ea3b8e23a1894957cfa23ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286580
Commit-Queue: DEPS Autoroller <dart-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2023-03-02 22:24:25 +00:00
Jake Macdonald
a22e003ee1 [flip-modifiers] fix some vm tests to make mixed in classes mixins
These tests don't have a language version and so will get opted in when the flag is flipped, and need to be compatible.

TEST=only test changes

Change-Id: Idf49123e25c876102e6719ed3de8b475e80c8975
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286542
Reviewed-by: Alexander Aprelev <aam@google.com>
Auto-Submit: Jake Macdonald <jakemac@google.com>
Commit-Queue: Jake Macdonald <jakemac@google.com>
2023-03-02 21:29:56 +00:00
Jake Macdonald
3643e771c4 [flip-modifiers] opt out from class modifiers some failing front end language tests
Change-Id: I7c6473b2c1dd401355b18b55c8d3ce9b0cfaf257
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286541
Commit-Queue: Jake Macdonald <jakemac@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Jake Macdonald <jakemac@google.com>
2023-03-02 20:40:20 +00:00
Jake Macdonald
7910eac426 [flip-modifiers]: opt out failing ddc tests from class modifiers
Change-Id: Ib9187cd63be39b155cd78b1e213b1a5e9cdb3be9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286560
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Jake Macdonald <jakemac@google.com>
Commit-Queue: Jake Macdonald <jakemac@google.com>
2023-03-02 20:27:25 +00:00
Alexander Markov
e27923a5a0 [dart2js] Static weak references to method tearoffs
TEST=language/static_weak_reference_test
TEST=language/static_weak_reference_error_test

Bug: b/269223463

Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-nnbd-linux-release-x64-try
Change-Id: I760476a7c81751f6c302f21251b525cb5c916c02
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284489
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2023-03-02 20:04:19 +00:00
Konstantin Shcheglov
3e62dba022 Issue 50588. Test that EQUAL_KEYS_IN_MAP_PATTERN is reported for double(s).
Bug: https://github.com/dart-lang/sdk/issues/50588
Change-Id: I952d0ec59045c68f63a5f028083cf17c1b633f3f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286522
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2023-03-02 19:56:27 +00:00
Derek Xu
eb5c027d26 Add the /Zc:__cplusplus option to MSVC builds
TEST=Perfetto checks the __plusplus macro and reports an error when it
thinks a version prior to C++17 is being used. Perfetto was erroneously
reporting this error during the MSVC tryjob because we weren't setting
/Zc:__cplusplus. This change fixes the issue. See
https://ci.chromium.org/ui/p/dart/builders/try/vm-kernel-msvc-windows-try/146/overview

Change-Id: I6db00bec20936c0b1743bcb6e21b2c8f829097d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286220
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Derek Xu <derekx@google.com>
2023-03-02 19:50:33 +00:00
Jake Macdonald
b83359599e [flip-modifiers]: prep dart2js language tests for class modifiers flag flip
Change-Id: I3eccd65b982628fa9775a94b1ac61b48d8732f80
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286540
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Jake Macdonald <jakemac@google.com>
Commit-Queue: Jake Macdonald <jakemac@google.com>
2023-03-02 19:09:45 +00:00
Sam Rawlins
2c31548893 analyzer: Remove references to unimplemented FILE_IMPORT_*_LIB_REFERENCES_FILE_* rules
Lint replacement suggested at
https://github.com/dart-lang/linter/issues/4103

Bug: https://github.com/dart-lang/sdk/issues/50796
Change-Id: I2578c91af3f66a816d67bb0e9ecfa22802febf94
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286345
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-03-02 18:57:08 +00:00
Konstantin Shcheglov
bdd9535b4e Prepare to publish analyzer 5.7.1 and _fe_analyzer_shared 55.0.0
Change-Id: Ie9c95abba680a8d564f8577a8bf91604ec8d5022
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286341
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-03-02 18:22:31 +00:00
Kallen Tu
b1e3d73304 [cfe] Fix textual outlines for class modifiers and subtyping base/final.
Forward fix test outcomes instead of the revert here: https://dart-review.googlesource.com/c/sdk/+/286460

Change-Id: Ie940cf8baa2e2abb6eab212329a58e24a1e85138
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286521
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Kallen Tu <kallentu@google.com>
2023-03-02 17:47:49 +00:00
Konstantin Shcheglov
fbb6185449 Remove lazyEqualEqual()
It is not used de-facto, and I don't know that we have semantics for it.

Change-Id: I450b164a96b1a16b89b85811e84338110abbae99
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286342
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-03-02 17:09:54 +00:00
Devon Carew
a8afc781b4 [pkg/analyzer] bump the min. sdk version
Change-Id: I92b086de357e28239580fd17f4b1aaf29447941c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286321
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-03-02 16:09:45 +00:00
Chloe Stefantsova
b1d7d84030 [cfe] Account for parser recovery in const pattern arguments
Part of https://github.com/dart-lang/sdk/issues/49749

Change-Id: I35801c7b0c6046076c8c31e66d684445654a8573
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286480
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2023-03-02 16:07:59 +00:00