Looks like since #32463 is resolved `whereType` can be supported here (I noted the `// TODO(whereType): When whereType is supported, use that.`)
Closes#35040https://github.com/dart-lang/sdk/pull/35040
GitOrigin-RevId: 4c2ace7eed1c405dece7e8dd76151efbc2ab8088
Change-Id: Iec268d8c639e45dc0c42baf3a9aeb89652a5a30e
Reviewed-on: https://dart-review.googlesource.com/c/82707
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Also updated the package references in a number of pubspecs to
more closely align with the package versions that are in the SDK
Change-Id: I061951587befa4211ac7455cf1179911eb07efc0
Reviewed-on: https://dart-review.googlesource.com/c/79920
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
* Update named configs for unit tests to Dart 2.
* Bump json_rpc_2 in front_end package.
* Use named configurations in unit tests.
* Fix typing issues.
Change-Id: Id3b393a0d2abe92c8eaec10fa8057fb35d18a4c6
Reviewed-on: https://dart-review.googlesource.com/67341
Reviewed-by: Jens Johansen <jensj@google.com>
Change-Id: Iffd934a67668901176a84c9b01512711a011652d
Reviewed-on: https://dart-review.googlesource.com/67803
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: William Hesse <whesse@google.com>
Clarify in the pubspec that it's not published
Cleaned up hints/lints in source files
Change-Id: Ifbf59ab0fb219dcdf5de99eced0a0129e6e191cb
Reviewed-on: https://dart-review.googlesource.com/61909
Reviewed-by: Bob Nystrom <rnystrom@google.com>
This reverts commit b5154dd01e.
Original revision is in patchset 1.
Change-Id: Ic0776011c6fdbd64c025086535351474a9a88b6e
Reviewed-on: https://dart-review.googlesource.com/54407
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
This fixes an issue where an (illegal) annotation contained a
variable declaration, but the variable indexer was not set up.
Closes https://github.com/dart-lang/sdk/issues/32800
Change-Id: I50e828256e1ec0d14004aa38eaab2dce93ca7112
Reviewed-on: https://dart-review.googlesource.com/50942
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
* Preserve empty lines in the file header.
* Add empty entry to the tool's newly created sections.
* Remove extra empty line at the end of the file.
Change-Id: I271583774d5f5497025a9d85bcadf8b0b9e39e81
Reviewed-on: https://dart-review.googlesource.com/37600
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
This is used (at least temporarily) for unblocking other P0 changes.
Change-Id: I002af7cfe6384f8813646d5c488a2cf2e58673a5
Reviewed-on: https://dart-review.googlesource.com/46541
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
The `$builder_tag == strong` annotations were added before test.py
supported `$strong`. Now that `$strong` is supported, it's better to
use it directly to avoid confusion.
Change-Id: I715edecaee1e36ab8a26dbc96a6aa056e1be018f
Reviewed-on: https://dart-review.googlesource.com/39600
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
This is a branch of co19 tests where the tests have been
made strong mode compliant. A co19_2_analyzer.status file
has been added with the current statuses of the tests when
run on dartanalyzer --strong. We expect more Dart 2 configurations
to start running these tests and adding status files.
Change-Id: I22077272707620b92dd1092c38bbb4f3d5964493
Reviewed-on: https://dart-review.googlesource.com/37743
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
This aligns us with JS engines and Unicode 6.3
R=lrn@google.com
Bug: 29060
Change-Id: I0b6356f0e652f7c9841bcf6485aa591a3d835061
Reviewed-on: https://dart-review.googlesource.com/35560
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Erik Corry <erikcorry@google.com>
And so there is no need to maintain status files for this platform.
R=whesse@google.com
Change-Id: Ie70e4b7308cfd9b1b179b2d1eeeb8f36dd1a62dc
Reviewed-on: https://dart-review.googlesource.com/34824
Commit-Queue: Erik Corry <erikcorry@google.com>
Reviewed-by: William Hesse <whesse@google.com>
This will be helpful when computing overlapping sections and
other manipulations of status files.
Bug:
Change-Id: I8896e9684cc65bdd971451ab9b6cb39732984f68
Reviewed-on: https://dart-review.googlesource.com/23260
Commit-Queue: Morten Krogh-jespersen <mkroghj@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
All status files from the tests/ and runtime/tests directories has been copied
to a local directory, to make sure, that the unit test does not break when junk
is added to status files.
The linter has been updated with a check for duplicate entries in status files,
which is why the normalizer unit tests failed in the first place.
Bug:
Change-Id: Ifebd2bfd9011373bfe9a613de5c365ff99535ca4
Reviewed-on: https://dart-review.googlesource.com/25380
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Morten Krogh-jespersen <mkroghj@google.com>
The test in this CL will test if the transformation of a status file produce an
equivalent status file. It does this by checking the number of entries and
making sure to find ONE entry in the produced status file.
As an invariant it needs that no duplicate entries exists in sections.
Bug:
Change-Id: I6aec3b20ef1bca89d6a7cf72d85487a95c3d1f0a
Reviewed-on: https://dart-review.googlesource.com/21341
Reviewed-by: Alexander Thomas <athom@google.com>
This both works as a tester for correct canonicalization of status files and can
be used later to check if changes to status files follow the guide lines.
It checks that:
- Comments only exists before a section or after a test path entry.
- That there are no disjunctions in headers.
- That variables and clauses are correctly ordered in section headers.
- That paths are alphabetically ordered in sections.
- That sections are lexicographically ordered with respect to negation.
Bug:
Change-Id: I0f5e2cc16f20bb48ee53a9a55a22aaab710e32ff
Reviewed-on: https://dart-review.googlesource.com/17786
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Morten Krogh-jespersen <mkroghj@google.com>
They aren't used by anything yet (except the unit test), but this
should help write tools to normalize and lint status files.
Change-Id: Iabd1342b7eda6137a059514834b6c72b089042d6
Reviewed-on: https://dart-review.googlesource.com/18428
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
This CL modifies the Dart source used from test.py such that it takes
`syntax error` into account as an expected outcome in test files (so
that we can have `//# 01: syntax error` with a similar meaning as
`//# 01: compile-time error`).
For all tools except the spec_parser, `syntax error` is the same
outcome as `compile-time error`; that is, nobody else will see the
difference.
For the spec_parser, `syntax error` is the outcome where parsing has
failed; `compile-time error` is taken to mean some other compile-time
error, i.e., the spec_parser is expected to _succeed_ when the
expected outcome is `compile-time error`.
Test files in language and language_2 have been adjusted to use the
outcome `syntax error` where appropriate.
The status files in language and language_2 for the spec_parser have
been adjusted such that they fit all the new `syntax error` outcomes
in test files.
Other status files have been adjusted in a few cases where tests were
corrected (because a compile-time error which was clearly not intended
to be a syntax error turned out to be caused by a typo, which means
that the actual compile-time error has never been tested).
The spec grammar Dart.g was adjusted in a few cases, when some bugs
were discovered. In particular, the treatment of Function has been
changed: It is now known by the parser that Function does not take
any type arguments. This makes no difference for developers, because
they cannot declare a type named Function anyway, but it means that
a number of tricky parsing issues were resolved.
Dart.g was also adjusted to allow `qualified` to contain three
identifiers, which is an old bug (preventing things like metadata on
the form `@p.C.myConst`).
Change-Id: Ie420887d45c882ef97c84143365219f8aa0d2933
Reviewed-on: https://dart-review.googlesource.com/18262
Commit-Queue: Erik Ernst <eernst@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
It will normalize white space and comments. It will further identify comments as
belonging to sections or being commen entries.
Bug:
Change-Id: I140780aa0ad9c675197907198b3ec6ab4d5dc742
Reviewed-on: https://dart-review.googlesource.com/17784
Reviewed-by: William Hesse <whesse@google.com>
For the migration script, I need a (less hacky) way of programmatically
modifying a status file. As a step along that path, I need the ability
to write a status file to disc given a StatusFile object.
With that, it was a small step to write a little "formatter" that turns
a status file into its canonical representation.
It removes unneeded parentheses in expressions, normalizes expectation
case, and normalizes whitespace. Seems useful.
R=whesse@google.com
Review-Url: https://codereview.chromium.org/2988383002 .
This looks at all the files in the batch being migrated. It goes through
the status files in the 1.0 and strong directories. If it sees an entry
that matches that file, it adds it to the resulting "_2" status file.
It handles adding entries to an existing section if already present in
the new status file. Otherwise, it adds a new section at the end with
the entries.
R=bkonyi@google.com
Review-Url: https://codereview.chromium.org/2989033002 .
This required munging a bit of test.dart code too to tease out some
dependencies, but the changes are minor. I considered moving all of
test.dart out into a package and making the status file library a
public one that other packages in the repo could import but this seemed
like the less intrusive change.
R=bkonyi@google.com
Review-Url: https://codereview.chromium.org/2984203002 .