Files
sdk/pkg/front_end/testcases
Erik Ernst 3263555dc5 Start implementation of anonymous block methods
This CL introduces support for anonymous block methods (that is,
`e.{ print(this); }` as opposed to `e.=> print(this);`). It introduces
the notion of a `ReturnContext` which is used to change the semantics
of a return statement when it returns from an anonymous method (where
it works like a `break` that terminates the execution of the block
which is the body of the enclosing anonymous method), but keeps the
semantics of return statements returning from a function (including
function literals) still have the same semantics as today.

Change-Id: I404459361fbb7c2e495e46d1bd29924063f3aac4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/503800
SLSA-Policy-Verified: SLSA Policy Verification Service <devtools-gerritcodereview-exitgate@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
2026-05-27 06:04:46 -07:00
..

Overview

The testcases in this directory and its subdirectory are all compiled in various different configurations designed to test various aspects of Fasta (or more generally, package:front_end).

The configurations are described below.

The source of truth for these configurations is the file pkg/front_end/testing.json.

Updating all expectations

To update test expectations for all tests at once, run:

dart pkg/front_end/tool/update_expectations.dart

Note that this takes a long time and should only be used when many tests need updating.

Updating expectations for a single test

To update the expectations for a specific test, provide the folder and test name as an argument.

For example, if you want to update the test expectations for a test, such as pkg/front_end/testcases/general/abstract_instantiation.dart, then run:

dart pkg/front_end/tool/update_expectations.dart general/abstract_instantiation

Updating expectations for all tests in a folder

If you want to update the test expectations for a specific folder of tests such as the pkg/front_end/testcases/general/ folder, then run:

dart pkg/front_end/tool/update_expectations.dart general/...

Dart 3.0 Outlines

./pkg/front_end/tool/cfe testing -DupdateExpectations=true outline/test1 outline/test2 ...

Dart 3.0 (strong mode)

./pkg/front_end/tool/cfe testing -DupdateExpectations=true -DupdateComments=true strong/test1 strong/test2 ...

Note: strong mode configuration additionally parses comments in the test file and can precisely match internal details of the compiler such as the inferred type of an expression or if a warning was emitted at a given location.