Commit graph

25434 commits

Author SHA1 Message Date
Danny Tuppeny 1aa89591e3 Add LSP support for Extract Widget
Change-Id: I0d7068ab48eff2a27a00fad5e821e819c816a253
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106351
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-06-19 06:56:22 +00:00
Dan Rubel 99acf35ede fix indexed super constructor
This fixes a bug where the AstBuilder fails
given a constructor of the form:

class C {
  C() : super()[];
}

In the process, 2 buildInitializer methods were extracted from
the AstBuilder.endInitializers method.

Fix https://github.com/dart-lang/sdk/issues/37285

Change-Id: Icacf28b2ed0eff9b7168c97ee0c03d78e5fcd68b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106500
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-06-18 17:59:35 +00:00
Paul Berry d622fa010b Migration: Split up migration_visitor_test.dart.
This will make it easier to re-use the test infrastructure for some
other tests I plan to introduce in a follow-up CL.

Change-Id: I0a243f00f342674fe38274eb46e7c1e943817785
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106442
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-18 17:43:05 +00:00
Konstantin Shcheglov 143e5ef556 Revert 'Import Library' quick fix changes.
This basically reverts https://dart-review.googlesource.com/c/sdk/+/103921
because internally IntelliJ does not provide module dependencies yet.

Change-Id: I7717b2841bf3d6391b991875a594c6df9e246ff1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106482
Reviewed-by: Ari Aye <ariaye@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-18 17:31:56 +00:00
Konstantin Shcheglov 4adaa1fd56 Remove unused LinkedNodeType fields.
R=brianwilkerson@google.com

Change-Id: Ib5e03a29db74d2e0ecce78039a60c9047ae720a7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106460
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-18 16:51:14 +00:00
Paul Berry 310f50be72 Fix imports in graph_builder.dart
Change-Id: I00ec82a04f149ac7ce5d00da71eca6966bc84636
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106426
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-18 15:44:10 +00:00
Danny Tuppeny e32a179922 Add LSP support for Extract Method refactor
Change-Id: Id5c9e0657648963d5f96469fbac9269dad4e32a7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106348
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-06-18 15:40:10 +00:00
Jens Johansen b9e005f4b9 [fasta] messages_test automatically wraps examples in part
Update the message_test to automatically create an example that wrappes
all already defined examples in a part.
For instance, if the example is

main.dart: main() { print("hello world"); }

create an additional example that is basically

main_wrapped.dart: part 'main.dart';
main.dart: part of 'main_wrapped.dart'; main() { print("hello world"); }
(as well as some additional comments to push any actual positions in the
main file ot of scope for valid positions in the wrapper file.

This doesn't work for everything, e.g. if the original main imports or
exports anything, the new test will fail. That's okay, the status file
has been updated accordingly.

The reason for adding it is that we currently have some bugs that causes
us to crash in situations like this, i.e. situations where a message is
coming from a position in a part where the same position doesn't exist
in the non-part file.
The status file has been updated for that too, although not in sorted order.

Change-Id: Ib67f85fca5e81e0b9e93cf2d79ab50c38cae4936
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106082
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-06-18 10:01:58 +00:00
Konstantin Shcheglov 770675b668 Fix for naming constructor with missing name.
R=brianwilkerson@google.com

Change-Id: I89ef01033c9e14417286e5ea95d2d88e1c498982
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106425
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-18 03:43:38 +00:00
danrubel f7d3e5bebf Add dartfix --server option
This adds a --server option for specifying the analyis server snapshot
to be used when calculating fixes.

Change-Id: I0adc3148c030d23a9a62883d842851709cb78168
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106220
Auto-Submit: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-06-18 03:07:58 +00:00
Stephen Adams 3619d26f70 [dart2js] Emit code for checks
Emit as-casts and type-checks.

The recipes and environments are dummy values, and there is no
propagation of type information, so the code is pretty terrible.

Change-Id: Iea8b7d7dddd4538187d88f12e9ed81439f74d0e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106428
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2019-06-18 02:38:18 +00:00
Brian Wilkerson 97bf0a6834 Print the URLs associated with the diagnostics
Change-Id: I1078cbda2b11e5591c96864a57538d6c94004136
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106430
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2019-06-18 01:22:18 +00:00
Paul Berry 4aaa15edb2 Migration: fix detection of variable/parameter reference inside parentheses.
Change-Id: Ifebbb834de278a38c30f8e555175515220706a1b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106423
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-17 23:21:08 +00:00
Brian Wilkerson 29b346e020 Support set and map literals with type arguments
Change-Id: I2e5ab2b81a37b0ebcfab4c60d0ed04c7c6aeba5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106424
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-17 22:15:48 +00:00
Stephen Adams 97522cfdd8 [dart2js] Emit a Rti universe
Use embedded names to keep the field names consistent.

Change-Id: Ic8986b38e4a30e9457221939c6512d0446fb32f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106203
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2019-06-17 22:15:47 +00:00
Paul Berry c4e308584c Migration: unconditionally check guards in assertEdge
Change-Id: I882cbbb4dc6dce50a47255bff7ff2cc684d158d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106421
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-17 22:03:07 +00:00
Régis Crelier df5e7aac17 [vm/bytecode] Intermediate out.dill not needed anymore when testing bytecode.
Change-Id: I213e023b8b6ba15fcd723c0a49a0b5d7ec471e15
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106420
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-06-17 21:24:21 +00:00
Alexander Markov 7effb7e776 [vm/aot/tfa] Visit ConstantExpression.type in TFA tree shaker
Fixes https://github.com/dart-lang/sdk/issues/37149

Change-Id: I21fb05a7d3698832f94957853b28c4639180eb8f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106384
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-06-17 21:21:31 +00:00
Paul Berry c533967a4c Migration: rework the ExpressionChecks data structure.
We no longer need to keep pointers to the nullability nodes directly
in the ExpressionChecks data structure; we merely need to record which
edges, if unsatisfied, would require a check.

This allowed the tests using assertNullCheck to be clarified--they now
simply verify that the appropriate edge exists, and then pass that
edge to assertNullCheck to verify that the ExpressionChecks object
points to the appropriate edge.

Change-Id: Iaaee51d1f23ca6f86a2fbf0a15ded6a844b2811b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106383
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-17 21:06:21 +00:00
Paul Berry ea4eaaa145 Migration: Allow edges to be queried to see if they're satisfied.
Change-Id: I9da0233dfbac0c7aee168622c554d003c2c5e16c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106382
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-17 21:06:21 +00:00
Paul Berry 5167499427 Migration: record the "origin" of each edge in the NullabilityEdge object.
This paves the way for being able to explain to the user exactly why
the migration tool made any given nullability decision.

Change-Id: I553e4881fdb37b238a066fcfba7c21ae919d7d6e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106381
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-17 21:06:21 +00:00
Paul Berry dc059d763b Migration: Pass ExpressionChecks to _checkAssignment instead of the raw expression.
This paves the way for a follow-up CL that will introduce a more
general notion of the "origin" of an edge (of which ExpressionChecks
will be just one kind of origin).

Change-Id: I76ee12679d881ef95a4ba17a224fe85ecf6b589f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106380
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-06-17 21:06:21 +00:00
Nicholas Shahan 2073a822bd [dartdevc] Add top level function names to NSM error messages
These are now represented as named functions. This will also help the
debug tools give more information.

Tested with three applications and adding the names caused a code size increases
of less than 1%.

|Total App JS size | Increase |
|------------------|----------|
|  24.7 MB         |   0.06%  |
|  242  MB         |   0.14%  |
|  327  MB         |   0.19%  |

Fixes: #37118
Change-Id: I89a259215ceb8b9e559a190dbd521c923d4c55c2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105546
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2019-06-17 20:58:31 +00:00
Brian Wilkerson 8461cc6f5b Support for list literals with type arguments
Change-Id: I7a661d83335b7d4c4ef2221af3eb31c865e2f9dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106386
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-17 20:55:11 +00:00
Konstantin Shcheglov 792a3d561a With summary2 the 'nameOffset' for directives in the offset of their keywords.
R=brianwilkerson@google.com

Change-Id: I2cade95e4fb876096ec299d45665fd51a8193bd4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-17 17:49:21 +00:00
Brian Wilkerson 2164bcefdb Add support for await expressions
Change-Id: I36c1bad75a0f6981715e621c09df1befef38061a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106166
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-17 16:58:51 +00:00
Nicholas Shahan f9dfa7cbfd [dartfix] Bump pkg:pedantic to version 1.7.0
New versions of pedantic now offer imports to versioned includes. This will
allow us to update packages in the SDK independently when new lints are added in
future versions.

Issue: #37218
Change-Id: I43a4a9ba6730ed107a87f4060d47bb50d837de49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106184
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-06-17 16:47:52 +00:00
Brian Wilkerson f897a940c1 Fix minor nit in documentation
Change-Id: I0a75ecce970754b036f2af0a065aa392547dae7b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106322
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-17 16:19:09 +00:00
Brian Wilkerson 071a99bfbe Add support for super expressions
Change-Id: I7d78810ca7fe8f669370803f2dd8146379ca2f7b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106164
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-17 16:15:54 +00:00
Paul Berry 9a2eecf67f Fix parseString: ensure that CompilationUnit.lineInfo is set properly.
Change-Id: Id81338c1021f9548f2c3f24931baf1e45ac1b18b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106320
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-17 16:10:29 +00:00
Paul Berry 43264f5f97 Add missing CHANGELOG entry for parseString
Change-Id: Ieb293ac02d97cf454231a27a82bf9dade567ada5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106321
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-17 16:07:49 +00:00
Konstantin Shcheglov 2a240ddab9 Don't create accessors/fields typed as Impl.
DDC code generator copies these lists using toList(), so inherits
their reified types, and then fails to add a PropertyAccessorMember,
which is not an Impl.

R=brianwilkerson@google.com

Change-Id: Id26ef7bcea07b9956ebf7487883fbbf9f92cf7ab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-17 15:59:50 +00:00
Konstantin Shcheglov df8e0aff6c Use AnalysisDriver.useSummary2 in FileSystemState.
R=brianwilkerson@google.com

Change-Id: Ie64f05a522d08c1fe779ccc78fbfe25ad52ec422
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106302
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-17 15:59:46 +00:00
Danny Tuppeny 60fa066cd7 Filter LSP completion to exclude symbols already imported via another URI
Change-Id: I39d807ef88b939feffcba2b333dd76595257c768
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105760
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-17 14:16:21 +00:00
Samir Jindel 8d39e3456f [vm/aot] Minor improvements to make snapshot profiles more useful.
Change-Id: I614d0af3fb3b2bcb642f13d767c385d255b43d5c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105580
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-06-17 13:09:50 +00:00
Konstantin Shcheglov b92c287fd7 Use StateError in LegacyTypeAsserter.
AssertionError does not print on the console its message, at least in
IntelliJ. Also tweak tests to use throwsStateError.

R=brianwilkerson@google.com

Change-Id: Ifbe2ed0b1d3deba1feaecc7c462f470e8608b70c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106204
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-15 19:45:51 +00:00
Konstantin Shcheglov 7f0519721e Use unit featureSet during linking.
This fixes NonNullOptOutTest.test_nnbd_optOut_late with summary2.

R=brianwilkerson@google.com

Change-Id: I9939ca92daaed349491df3463394164ead5d626b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106205
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-15 19:39:31 +00:00
Brian Wilkerson c5cd37e727 Address more documentation feedback
Change-Id: I2e55e146495ab8bd59e87cff9915ee84c99da8b3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106200
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-15 15:30:40 +00:00
Paul Berry 58664602a5 Change NullabilityGraph.propagate to return a list of unsatisfied edges.
In follow-up CLs this should allow us to simplify the generation of
fixes (since each fix is associated with one or more unsatisfied
edges) and to streamline tests.

Change-Id: I997f704aac41f270756adcdf8d382fb2263273eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106180
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-06-15 12:55:00 +00:00
Robert Nystrom c1b56a9ea0 Catch the test_runner codebase up to somewhat modern practices.
- Run dartfmt --fix. This converts JavaDoc comments to "///", removes
  "new" and extraneous "const", and a couple of other things.
- Fix SCREAMING_CAPS constants to lowerCamelCase.
- Use collection literals where possible.
- Use UI-as-code in a couple of places where it seemed obvious.
- Use "var" for more local variables.
- Use "const" instead of "final" when possible.
- Make members private when possible. Deleted a few that then became
  obviously unused.
- ".length > 0" -> ".isNotEmpty".

There are no meaningful changes.

Change-Id: Ic6c5a74b2af9b3ebcbe881dbed69f65488bdef09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105880
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2019-06-15 01:02:50 +00:00
Robert Nystrom 99e8a9fba5 Move the test runner (i.e. "test.dart"/"test.py") to pkg/.
This makes it an actual Pub package like most other code inside the SDK
repo. The main goal is to make it easier to write tests for the test
runner itself.

This change:

- Moves all of the code from tools/testing/dart/ over to
  pkg/test_runner. Most of it ends up under test_runner/lib/src.

- Move tools/testing/dart/main.dart to
  pkg/test_runner/bin/test_runner.dart.

- Move standalone_2/io/test_runner_test.dart to
  pkg/test_runner/test/test_runner_test.dart. I don't think it currently
  works, but it wasn't being run in its old location either.

- Add test_runner to the analysis-server bot. This ensures the
  test_runner package is static error clean.

- Remove standalone_2/io/test_runner_analyze_test.dart which used to
  attempt to do the above and is no longer needed.

- Update test.py to look for the test runner at its new location.

- Add test_runner to the repo .packages file and remove the weird
  test_dart pseudo-package. (I think this fixes #35279.)

- Remove status file entries for the removed standalone_2 tests.

There are no code changes to the test runner itself aside from fixing
up import paths.

Change-Id: I3d05d50d222b291848fa5a30de2846e803bc81e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105821
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
2019-06-14 23:35:10 +00:00
Nicholas Shahan 177f425012 [dartdevc] Fix violations of library_prefix lint
Rename the library prefix used in imports from `JS` to `js_ast`. Create more of
a distinction between:
* `JS` the library.  Now named `js_ast`.
* `js` the const instance of a JSBuilder.
* `JS` the helper to inline javascript in the SDK patches
  and runtime libraries.

Ignore the lint in the js_ast directory to avoid additional diffs for the
eventual un-forking of the package.

Cleanup a few unused imports.

Issue #37218

Change-Id: I039c1048876d9d9ad424fbec3ad555d300845a3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106160
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2019-06-14 22:48:40 +00:00
Brian Wilkerson 047bacc94c Add support for symbol literals
Change-Id: I273b2290b8d4d2e0948fac1962d02efc70e7813e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106163
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 22:13:40 +00:00
Stephen Adams 11cc292383 [dart2j] Add TypeEnvironmentStructure and TypeRecipe
These will be tracked through SSA to generate correct recipe strings.

Change-Id: Ifebeead0f39d87be3208c673e34793145c64cf23
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106181
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2019-06-14 22:10:19 +00:00
Konstantin Shcheglov d342402c80 Always ensure TypeProvider, even with external summaries include the target library.
There is at least one case (but not many) when this happens internally.

R=brianwilkerson@google.com

Change-Id: Ic940cb836f58467d40ed7b31cb8bb43cf12eee50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106165
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 21:57:34 +00:00
Konstantin Shcheglov d4cad0fff1 Restore element and typeArguments for typedef-based _FunctionTypeImplStrict.
R=brianwilkerson@google.com

Change-Id: Ibc7fc53aba10661236f0d3f3361bf7f05882cc5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106162
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-06-14 21:55:20 +00:00
Mike Fairhurst 2eebc1024c Refactor non-bool expression checks
Change-Id: I4da7abe3293c4dbf7218f3a276cf9418b3d14f19
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106000
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 21:50:30 +00:00
Brian Wilkerson 9bb678f88b Add support for is expressions
Change-Id: I3be70d83b03a4d00a68070fb03ba2ab989880a9e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106161
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-14 21:43:50 +00:00
Mike Fairhurst c246fa1f2b Fix #36956, report undefined getter for uses on Null.
Bug: 36956
Change-Id: I5b8f40f5c1f7fd9304b02054e3d8d7d607c12af1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106021
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-06-14 21:29:29 +00:00
Brian Wilkerson f56df4a251 Add support for double literals
Change-Id: I08ea12bb0213272b192d063fd3699b2495912077
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106140
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-06-14 19:57:26 +00:00