Commit Graph

84 Commits

Author SHA1 Message Date
Johnni Winther 1d6eac5ebf [cfe] Only use experimental release version when flag is not on by default
Change-Id: I06267c6d3f0e5abb289e25fde8098aa0e3bead34
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/166844
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2020-10-12 12:57:41 +00:00
Jens Johansen d69a2110ef [CFE] Remove old dill test, suit etc.
This is no longer necessary with the VM only supporting the latest
version and kernel (optionally) including a git-checksum to match up
VM and dills.

Change-Id: Ifccfd0d12333cd99258100cda30e1536cc230bc2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/166024
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2020-10-05 12:52:49 +00:00
Jens Johansen 3a1f732c0f [parser] Make begin/end events always come in pairs
This CL:
* Changes the events so beginX and endX events always comes in pairs
  (though technically not right as some specific events can be beginX
  endY --- but in those cases it is at least documented and used in code
  that actually tests it).
  -> This entails adding some events and converting something from
    "beginX" to "handleX" instead.
* Adds a utility that can generate an AST of sorts directly from the
  parser via a listener using the begin/end matching (and knowing of the
  specific ones that doesn't match directly).
* Adds a test that checks that - at least for all tested (50,000+) files
  - the AST actually generate "correctly", i.e. matches up begin/ends
  and ends up with a single top entry "CompilationUnit".
* Adds a different visualization to the parser listener events by
  displaying the "AST directly from the parser" in a UI that can be
  navigated. The visualization may not be the best, but it's certainly
  a stepping stone.

Change-Id: I9b27f7bbf3be442adc92f357c7b3c46da6f84cf7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/159664
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-09-01 09:30:43 +00:00
Johnni Winther 082295a61e [cfe] Support lowering of static fields with initializers
This adds support lowering the encoding of top-level/static fields
with initializers as if they were marked as late fields. This ensures
that LateInitialization is thrown if final fields are written to during
initialization.

Closes #42956

Change-Id: I488fdddd87ebd935a0cdaf82a724e9b87d5f91ba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/160724
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-09-01 07:20:58 +00:00
Jens Johansen ad85cdf71c [CFE] Add _fe_analyzer_shared to CFE's 'analyze' test
This should have avoided
https://dart-review.googlesource.com/c/sdk/+/150220

Change-Id: I638084ab1e1a6b53441e0c98a824f3cd1f56ef78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150361
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-06-09 06:28:37 +00:00
Joshua Litt 451694e855 [dart2js] Move dart2js_native to dart2js/native.
Change-Id: I2f879fe18376b8c1b82fc201d488425dc154d2b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149341
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Joshua Litt <joshualitt@google.com>
2020-06-04 18:11:49 +00:00
Joshua Litt 05ca544f15 [dart2js] Move tests/compiler/dart2js_extra to tests/dart2js_2.
Change-Id: Iaa0ca2b4f2d1b15f79ddca37834d3ed2497bc068
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149242
Commit-Queue: Joshua Litt <joshualitt@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-06-03 15:15:30 +00:00
Johnni Winther 6708394f03 [cfe] Add predicates to detect late lowered fields.
Needed for https://github.com/dart-lang/sdk/issues/41892

Change-Id: I049e76655cf62a5558c18319e80ab9702c7a3c22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148321
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-05-19 08:55:20 +00:00
Johnni Winther c10b41a4e2 [kernel] Add DartType.toTypeText and Constant.toConstantText
These are used to provide a testable textual representation
of types and constants that do not rely upon Node.toString.

Change-Id: Iff77ebb44e8299b262f4f263666b2e1d4dd5794b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147909
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2020-05-18 11:48:20 +00:00
Johnni Winther 00353040b9 [CFE] Error when strong mode mixed with non-opted-in
Change-Id: Ibff34fe071a6d10ce29c30e1d008d4a5ce6690a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140868
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2020-05-14 17:10:51 +00:00
Jens Johansen 64714f2596 [CFE] Include _fe_analyzer_shared in tests
Change-Id: I6d2ab3465a0aa2488cbe7b9a2f1909ab6c615d32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147082
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-05-11 13:13:21 +00:00
Jens Johansen f66e1ed7be [CFE] Textual outline expect files
Change-Id: I5cc3339880d0a77fbbcbd9f8a22e1186e5e2a5df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145380
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-04-30 08:25:17 +00:00
Johnni Winther a9485e8b14 [cfe] Encode getter/field invocation as .call on property get
Current semantics with respect to evaluation order is retained.

Change-Id: I6794c8a720237536696afab2fe056042f8464ec8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129702
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-02-17 13:52:45 +00:00
Jens Johansen 3f3d3dfa12 [CFE] Check class hierarchy in incremental compiler test
Change-Id: I963716d36bec213739bbc266f9494885edd0aa08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/133104
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-01-31 10:38:41 +00:00
Johnni Winther fd5bf3ed6b [cfe] Add opt-out version of general testcases
Change-Id: Idf0ea17fdf16c465f32367067b3d77a2e9492367
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131077
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-01-15 11:42:29 +00:00
Johnni Winther d302d7f10a [cfe] Insert member signatures for nnbd aware inheritance
Change-Id: I86dbbd586434af81b6dc4f4ae748cbd8177d06e0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129080
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-01-15 07:36:28 +00:00
Johnni Winther a577d0aea5 [cfe] Add weak mode testing
Change-Id: I3670e77a205404c0b35ee551a18c6ebdc2ecab33
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128069
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-12-13 09:20:08 +00:00
Jens Johansen 97d6ac21d5 [CFE] Spell check on kernel src; presubmit on kernel & _fe_analyzer_shared
Change-Id: I3ca7c856bdf9e6ad6e4474c804fd4f7f6b23571e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126730
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-12-02 13:00:47 +00:00
Johnni Winther b563d6cad5 [kernel] Exclude pkg/kernel from front_end spell checking
Excludes pkg/kernel and pkg/front_end/fasta/api_unstable/
Includes pkg/_fe_analyzer_shared

Change-Id: Id855c4262dffd3e0fd3b116844af39af68f43987
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126341
Auto-Submit: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Clement Skau <cskau@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-11-26 14:28:39 +00:00
Johnni Winther cdb9830a54 [cfe] Shard text_serialization tests
Change-Id: Ibfa8a254f4918f96dee2a7fe72250766dcbdca65
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126321
Auto-Submit: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Karl Klose <karlklose@google.com>
Reviewed-by: Karl Klose <karlklose@google.com>
2019-11-26 09:56:53 +00:00
Karl Klose bd06f1bf51 [cfe/infra] Unit test suites: print re-run command when a test fails
Closes #39423

Change-Id: Ifa3fbe4d670f4f95beceb2aae8769a553a9fbe7b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125604
Commit-Queue: Karl Klose <karlklose@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-11-22 10:45:54 +00:00
Johnni Winther 4a661e19e2 [cfe] Remove type_promotion_look_ahead_listener.dart
This experiment isn't used.

Change-Id: I8a45283182e361f6fc69f586346e01913b83560a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124686
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-11-11 11:51:57 +00:00
Johnni Winther 00c2962db8 [cfe+analyzer] Move messages, scanner and parser to package:_fe_analyzer_shared
Change-Id: I4fa87aee65f30a9868a6cf8f0342591869ece7ea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123663
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-11-01 09:37:57 +00:00
Johnni Winther 6b61050d9c [cfe+analyzer] Split generated message files into shared and cfe-only
Change-Id: I71dff57403d236f6186d7e1b5fa01fa7149fd0f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123661
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-10-31 14:39:04 +00:00
Jens Johansen 92d3098b92 [CFE] Make spell checker more friendly
- Don't state that any word not found in the dictionary is a misspelled
  word. Instead say it's not found in the dictionary. If the word was
  found in the blacklist, say that.

- Offer alternative spellings if a word in the dictionary is 'close'.
  E.g. if I typed 'explicitley' offer 'explicitly' as an alternative.

- Tell where the dictionaries are located to make it easier to add new
  words.

Change-Id: I85ee622ffd8a36c7d77b82cb64809ec005f5fefb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123522
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-10-30 11:54:54 +00:00
Jens Johansen ea3cb7317a [CFE] Fix unescapeString crash
unescapeString would for instance crash if it got the string '"'
(without the quotes) (i.e. the single ascii character 0x22).

Fixes #39035

Change-Id: I0b6baba975b3e8a9279699027fde4b15cde4a5ee
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123249
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-10-29 09:38:46 +00:00
Jens Johansen a14bf89eb9 [CFE] Move old dill files to CIPD
Remove from git, add to CIPD, DEPS and gclient sync.

Change-Id: Ib215f51a53108c56c2b129de3fdb156814a31a88
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123245
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-10-28 14:07:18 +00:00
Jens Johansen 0f7343e1a9 [parser] Reproduce analyser crash _OperatorName in endClassConstructor
This will crash the analyser:

class operator {
  operator^(int x) {}
}

The output from the parser looks reasonable to me though.

Change-Id: I956daf43670decca979d9dad6614e139007cda26
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121321
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-10-28 14:00:37 +00:00
Paul Berry 0167f91012 Flow analysis: introduce ID tests for AssignedVariables.
This should make it easier to verify that the CFE implementation is
correct.

Note that this effort encountered a few bugs in the analyzer
implementation, which are marked with TODOs.  I will fix them in
follow-up CLs.

Change-Id: Ic164a1cf214b5730f848b17db2838c29d25b00d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122850
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-10-25 13:44:05 +00:00
Karl Klose 74d0282179 [infra] Run test suites in pkg/front_end/test with custom test runner
Some tests in pkg/frontend/test are actually test suites written using the
pkg/testing framework.

This change runs these suites using a custom test runner instead of simply
running the test file, which makes the individual test results, timings and
logs available to the test system.

Change-Id: Iae5f37d9bd1b3e9b26c66443fe10e5cca6a6b6bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118540
Commit-Queue: Karl Klose <karlklose@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-10-21 09:03:19 +00:00
Vyacheslav Egorov 39e7da9ca4 [cfe] Fix ConstructorBuilder.prepareInitializers to refer to actual constructor.
Instead of referring to target constructor that is going to be patched.

Change-Id: Ic98146b69c9e5fbdcc13df86f3293f3d9d4462f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121328
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-10-11 18:44:18 +00:00
Jens Johansen b8aef62abd [kernel] Effectively clear extension members before adding new ones when loaing dill if 'shouldWriteData'
Prior to this change, loading a dill with extensions in it twice,
would mean getting the extension members twice.

Change-Id: I766a4a6b0ade98ce9af803db0c696e64821e015a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121064
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-10-11 07:33:03 +00:00
Jens Johansen acfda5d837 [CFE] Parser test framework
Change-Id: I1f27b380a2e6f8ea34d8ce66de6d581a1da8bf96
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118572
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-09-26 08:40:08 +00:00
Jens Johansen 9f57cf71d7 Add a blacklist to spelling tests; spell-check all packages and sdk with blacklist
Change-Id: I5bf3d5784d2ba48568a2699bb09ae39a85be17c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115214
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-09-03 12:39:24 +00:00
Jens Johansen f278451729 [CFE/kernel] Spell check kernel too
Change-Id: I57c91a61a186d9334d7af189427e78bdcb156aa0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114849
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-08-28 13:02:51 +00:00
Johnni Winther 7dbf8eed3b [cfe] Support sharding in pkg/testing tests
Splits strong_test into 4 shards. This test took 4+ minutes locally with
the fast_strong_test and analyze_test ticking in at ~1:45. This change
makes local testing of frontend unittests take 2 instead of 4 minutes in
total.

Change-Id: Id6015de86d547b209a699b1e5196b3edad1e6977
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114501
Reviewed-by: Jens Johansen <jensj@google.com>
2019-08-27 09:56:53 +00:00
Johnni Winther 7f9f4ad774 [cfe] Delete legacy tests
+ make sdk_test test non-legacy

Change-Id: Ie9861e54d12301f454d4fccf6eccd3516e0387d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113825
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-08-21 09:01:44 +00:00
Jens Johansen e60cbdfd9e [CFE] Add test for running old dills
This CL:
* adds a test that runs the VM with old dills (compilations of dart2js
  with old checkouts) with the --compile_all argument (1).
* adds a number of old dills (for binary version 25, 27, 28, 29)
  (by mistake binary version 26 sort of didn't really happen)
* adds a PRESUBMIT check in kernel that verifies that we have an
  "old dill" for the current binary version, so one don't bump the
  version without creating a new dill.

(1): It uses --compile_all to force the VM to "read and understand"
     everything in the dill file. The hope being that we try out
     all/most language constructs and thus verifies that they can be
     read by the VM.

Old "old dill" files should be removed once the VM stops supporting that
version. That is a manual process, but a test should complain that the VM
cannot read the old "old dill"(s) once/if that happens.

This should (help) detect errors such as the one recently where a merge
error caused a single "if >= 28" (that should have been "if >= 29" and
thus stopped the VM from reading dills from version 28) to slip through
and require a lot of debugging a few days later.

Change-Id: Id79e16c7ad896c0ccc4e181465b05b67822ac31a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113698
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-20 12:27:52 +00:00
Jens Johansen 93d4d28f6c [CFE] Add lint test: Require explicit types
This CL adds a test (lint_test.dart) that gives errors if using e.g.
"var foo = 42;".
We opted to not use the lint "always_specify_types" as that does
more than what the team voted for.

Change-Id: Ia37066ee04ff676d15f41222751557a9245f953f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113032
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-15 10:21:00 +00:00
Jens Johansen 48af666c9f [CFE] apply curly_braces_in_flow_control_structures lint
Change-Id: Id6c7e60b40f7dd0ffd68d007fe86abb785ac0dba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113025
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-08-14 13:00:44 +00:00
Jens Johansen 38336d6b5a [CFE] Split spell dictionary into several different dictionaries
Change-Id: Ie7e274b66d554eb9db8fffdf0e945d78be231ea8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112392
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-13 07:18:29 +00:00
Jens Johansen 5601eabda6 [CFE] Spell check messages and dart code
This CL adds a simple spell-checker, adds a spell-checking-phase to
messages_test to spell-check our messages, adds a new test that
spell-check our dart-code and fixes a lot of spelling mistakes / typos.

Change-Id: I8943a5bd67970e9a8a775251ae0aa97799eab097
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112346
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-09 08:47:00 +00:00
Jens Johansen 574c4a51c6 [CFE] Initial support for parsing language version from .packages
If the .packages file specifies a fragment on a uri on the form
"dart=x.y", x.y becomes the default lanaguage version for libraries in
that package.

Change-Id: I69cb4157fdf5852184cc3519b033c3624792f783
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112082
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-06 12:42:47 +00:00
Paul Berry 2cac8637d6 Flow analysis: separate nullability and reachability tests.
Change-Id: I875493ff504f094ade2818f29539525fdd75a808
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112020
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-08-05 22:12:26 +00:00
Jens Johansen a69c81ac34 Id testing for directories with .packages etc
We should also be able to test for larger examples, so this CL adds
support for directories where all files are included. If the directory
contains a .packages file that is used so we can test packages too.

Change-Id: Iceda03505575bd9e5604a6e374b7f5fa7185a82e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111421
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-01 09:25:28 +00:00
Paul Berry 6c1523410f Flow analysis: Create definite assignment test cases.
The test cases are based on
pkg/analyzer/test/src/dart/resolution/definite_assignment_test.dart,
however those tests are removed because they exercise the old definite
assignment logic (which was never hooked up to the rest of the
analyzer, and was abandoned in favor of flow analysis).  This CL also
removes the old definite assignment logic itself.

There are two behavioral regressions compared to the old definite
assignment logic:

- Assignments inside assert bodies are erroneously assumed to always
  execute (they don't, because assertions may be disabled).

- Flow analysis does not yet understand that a function may be known
  to never return (with NNBD, such a function would have a return type
  of Never).

These regressions have been flagged with TODO comments (in the test
files assert.dart and if.dart respectively), and will be addressed in
later CLs.

Change-Id: I4a3923f667b151fe31cdcca69373ee1f8fb85607
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110400
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-07-31 13:55:54 +00:00
Paul Berry 7557a14a74 Move test cases from type_promotion_test.dart into front end.
We still verify that the analyzer passes these tests, but we now do
the verification using the "ID test" mechanism that's shared with the
CFE.  This will allow the front end to run these tests as soon as its
integration with flow analysis is complete.

Change-Id: I1a7e5ef9698ebac72a72d992f4d765723224fc95
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110343
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-07-31 13:55:54 +00:00
Paul Berry bf4bde6ea2 Move test cases from flow_analysis_test.dart into front end.
We still verify that the analyzer passes these tests, but we now do
the verification using the "ID test" mechanism that's shared with the
CFE.  This will allow the front end to run these tests as soon as its
integration with flow analysis is complete.

Still to do: migrate tests of type promotion and definite assignment
so that they can be shared by the front end.

Change-Id: I3c2ac6ff8b66e3a27110dcdb1f1d2dece447c18d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110260
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-07-24 20:20:09 +00:00
Johnni Winther b3b6533c3d [cfe] Create ClassBuilder for extension declarations
Change-Id: Ic372b89588ed9ec3afc43f7db7e3d38a81846ad5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109264
Reviewed-by: Dan Rubel <danrubel@google.com>
2019-07-22 16:00:28 +00:00
Johnni Winther f40aac1b75 [cfe] Move general testcases into general/ subfolder
Change-Id: I9bc98033babcf887cca2267606cfe9fadd527b5f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108605
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-07-11 14:10:17 +00:00