Commit Graph

4677 Commits

Author SHA1 Message Date
Dan Rubel 874f9d0bdf Refactor for statement parsing
This CL introduces 2 new parser listener events
in preparation for parsing for control flow structures
in literal lists, sets, and maps.

Change-Id: I230f36cded714a13e4badb401fe5b5906c93a2da
Reviewed-on: https://dart-review.googlesource.com/c/91144
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-25 18:15:00 +00:00
Brian Wilkerson 4f9af4cd03 Add evaluation support for code-as-ui features
Change-Id: I604d03218df8af0f405017367b906f944e877762
Reviewed-on: https://dart-review.googlesource.com/c/91110
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-25 14:20:04 +00:00
danrubel 56123f08b0 Update parser to support simple if/else control flow in literal lists, sets, and maps
Change-Id: I740beea833ed1ad76582ad5232549bd204981808
Reviewed-on: https://dart-review.googlesource.com/c/90901
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-24 22:22:50 +00:00
Mike Fairhurst 31dc729452 Fix #35305, promoting a type that should not be promoted.
Bug: 35305
Change-Id: If62e875feed1bed73ec189fa011183fd3e5b4a1b
Reviewed-on: https://dart-review.googlesource.com/c/90881
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-01-24 19:10:06 +00:00
Paul Berry c9b1877cbf Disable task model for clients by making WorkItem inconstructible.
The task model is still allowed in analyzer tests since we still have
some unit tests of non-task-model functionality that rely on the task
model to do their testing (see #35734).

Unit tests whose sole purpose was to test the task model have been
removed.  Test files that now empty have been removed.  Non-empty test
files that now contain no tests of their own have had their `main`
functions removed, and have been renamed so that the testing
infrastructure will no longer attempt to run them.

Change-Id: I8b4d0b2dde9337c4e1fe91e443a2c9da6eee8f4f
Reviewed-on: https://dart-review.googlesource.com/c/90720
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-01-24 16:29:17 +00:00
Konstantin Shcheglov c8e1e277e7 Fix available_declarations_test on Windows.
TBR

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I41a400233ae240545e52d96ec529695305da54ae
Reviewed-on: https://dart-review.googlesource.com/c/90884
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-01-24 02:57:36 +00:00
Konstantin Shcheglov 0f459af6ca Available libraries and their declarations.
Initial version for backend, will add more implementation in
following CLs.

Change-Id: I4fe1b88f87451e387ae9774f12c9496cc8c2b8db
Reviewed-on: https://dart-review.googlesource.com/c/90361
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-23 22:02:30 +00:00
danrubel a55d0b99d0 more NNBD tests
Change-Id: Idfff790ac969d147b840a49c326b78bd74a58583
Reviewed-on: https://dart-review.googlesource.com/c/90800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-23 19:43:58 +00:00
danrubel 5543fce9a3 add limited support for parsing if control flow entries in lists, sets, and maps
This updates the parser to handle two if control flow entries
* `if` condition entry
* `if` condition spread-collection

... and also addresses comments in
https://dart-review.googlesource.com/c/sdk/+/90500

Change-Id: Ibabec8f0f4da918ef4cfe429405dae82ba74c129
Reviewed-on: https://dart-review.googlesource.com/c/90620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-23 17:57:05 +00:00
danrubel 55197eafd7 Refactor literal list, set, and map parsing for control flow collections
This refactors the existing spread collection parsing in preparation
for control flow collection parsing.

Change-Id: I1fc5aa31449999145f7a63da1d34c7b8858cf5d4
Reviewed-on: https://dart-review.googlesource.com/c/90500
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-23 17:57:05 +00:00
Konstantin Shcheglov eb4e7fb895 Mixin superclass does not include mmembers of implemented interfaces.
R=brianwilkerson@google.com

Change-Id: Ie457a148c1e35977566451861e6aab28ea8cb091
Reviewed-on: https://dart-review.googlesource.com/c/90660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-23 16:23:17 +00:00
Brian Wilkerson 30f478b439 Add visitor methods for new AST nodes
Change-Id: Ifa8ce25f4da6580acddf76502c0c84b38eed555a
Reviewed-on: https://dart-review.googlesource.com/c/90121
Reviewed-by: Paul Berry <paulberry@google.com>
2019-01-22 19:25:12 +00:00
Konstantin Shcheglov 3cb16d20e7 Issue 35551. Invalidate library cycles of libraries when a part file API signature changes.
R=brianwilkerson@google.com, paulberry@google.com

Fixes https://github.com/dart-lang/sdk/issues/35551
Change-Id: If4db0907fc62bdd12f528fe1a61895f6a18ec210
Reviewed-on: https://dart-review.googlesource.com/c/90520
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-22 18:56:28 +00:00
pq f87dd91844 remove defaults from the lint rule registry
Fixes: https://github.com/dart-lang/sdk/issues/35708

Change-Id: I619a3ec5533f85c8f0b1e5c017c5cd8f1b422fbd
Reviewed-on: https://dart-review.googlesource.com/c/90360
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-01-20 00:05:02 +00:00
Konstantin Shcheglov 0dea413d94 Tests for reachability, fix for try/finally.
R=paulberry@google.com

Change-Id: I18d1b987cb7375ae83125b4af3ed1ff712613e33
Reviewed-on: https://dart-review.googlesource.com/c/90124
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-01-18 08:08:17 +00:00
danrubel 2faab1d4c0 Update AstBuilder to build spread collection AST structures
Change-Id: Ifde5047933d810bdda77fe1b46eb6f69b7eabc5a
Reviewed-on: https://dart-review.googlesource.com/c/90082
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-18 00:05:30 +00:00
Konstantin Shcheglov b692a6d183 Improvements for flow analysis.
Support for 'IfNull' expression.
Support for 'rethrow'.
Tests for definite assignment and assignment expressions.

Change-Id: I053d27ca05e4ccaccc6a9fc7e10a481cd481ab21
Reviewed-on: https://dart-review.googlesource.com/c/90102
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-17 21:30:48 +00:00
Konstantin Shcheglov 3919491d3e Improvements for flow analysis.
Support for 'for'.
Support for 'for-each'.
Support for 'switch'.
Support for local functions and closures.
Support for 'try/catch/finally'.

R=paulberry@google.com

Change-Id: Idd0e528b706c1094e2bfdf32f84a9bcd7c80968a
Reviewed-on: https://dart-review.googlesource.com/c/89921
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-17 16:47:09 +00:00
danrubel b81c1b2095 Parse spread collections in map literals
This CL adds support for parsing spread collection entries in map literals.
For now, all listeners report an error on the spread collection tokens
'...' and '...?' until support has been added for those listeners.

Change-Id: I299bb1524fda39746471c07e618df6a2305b1a2e
Reviewed-on: https://dart-review.googlesource.com/c/89860
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-17 01:32:35 +00:00
Brian Wilkerson 6c2ea4936a Clean up several deprecation hints
Change-Id: I6191ddc4bb4a98c4976d8bc281b084bfd5073547
Reviewed-on: https://dart-review.googlesource.com/c/89941
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-17 01:05:24 +00:00
Konstantin Shcheglov 84273b9f36 Improvements for flow analysis.
Support for ConditionalExpression.
Check for potential mutations in closures.
Un-promote on assignment.
Support for 'while' statement.
Support for 'do-while' statement.

R=paulberry@google.com

Change-Id: Ic9e33a08057dc3519efec759702c52ddada728ed
Reviewed-on: https://dart-review.googlesource.com/c/89763
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-16 21:17:10 +00:00
Dan Rubel 4ec9dbf1d0 Add set literal spread collection parsing support
Change-Id: I12f4675a3a034a82acc16c4d189b001d52c23039
Reviewed-on: https://dart-review.googlesource.com/c/89681
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-16 01:48:36 +00:00
Dan Rubel b55bc09f1f Add list literal spread collection parsing support
Change-Id: I96098e35baf44660b3f7a49952fde64def9998c7
Reviewed-on: https://dart-review.googlesource.com/c/89680
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-15 21:16:05 +00:00
Konstantin Shcheglov 4074ebd0a0 Partial implementation of the unified specification of definite assignment, type promotion, and reachability analysis.
Tests marked with the "new test" comment would not pass without the
unified specification, i.e. with type promotion implementation that
currently works in analyzer, or definite assignment analysis that I
implemented earlier.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I9ba6fde991567e9a2761a7606af28ca1e260de54
Reviewed-on: https://dart-review.googlesource.com/c/89260
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-01-15 21:09:20 +00:00
Paul Berry a55b6fc183 Remove unused import
Change-Id: Ibd8c23f691a68f5bea5964b10029b5d7bca53b38
Reviewed-on: https://dart-review.googlesource.com/c/89721
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-15 20:14:37 +00:00
Sam Rawlins 030fa85cea Fix windows tests
Change-Id: I4e032684be2d07f663f9b0a32e133129bb1f1c7f
Reviewed-on: https://dart-review.googlesource.com/c/89562
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-01-15 16:06:49 +00:00
Sam Rawlins c54bc11770 Split DEPRECATED_MEMBER_USE_FROM_SAME_PACKAGE off; fixes #30084 and
fixes https://github.com/dart-lang/linter/issues/1349

Bug: https://github.com/dart-lang/sdk/issues/30084
Change-Id: I4954b883c1baf019a62776fec108eac60960b22e
Reviewed-on: https://dart-review.googlesource.com/c/88881
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-15 03:25:27 +00:00
Konstantin Shcheglov 3a4294963c Resolve type names and set nullability for other types.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I72965d0072cab7e19453616b8aef88604ff7812d
Reviewed-on: https://dart-review.googlesource.com/c/89080
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-15 02:50:45 +00:00
Konstantin Shcheglov 387a644008 Issue 33930. Fix resynthesizing function typed field formal parameter types.
R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/33930
Change-Id: I81c14cf5edf67eaeb253daefce3b91f0002b36a2
Reviewed-on: https://dart-review.googlesource.com/c/89440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-14 22:08:01 +00:00
Sam Rawlins b58aa3bcb2 Add PubWorkspace, integrate it into ContextBuilder, and therefore fix sealed test
Also add a superclass to BasicWorkspace and PubWorkspace, since the bulk of their
implementation is shared; Only find() and findPackageFor() need to be separate;
the package mapping and resolving can be shared.

Change-Id: I13932d6947d6dc28fc7223594e5bd2526f12f573
Reviewed-on: https://dart-review.googlesource.com/c/89167
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-14 21:36:49 +00:00
Konstantin Shcheglov 6c76fe21b5 Issue 25860. Fix for changeFile() directly after removeFile().
Reverts 561d892d29

R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/flutter/flutter/issues/25860
Change-Id: I2a7d725d3637754c096b088c85e862ec2917dc71
Reviewed-on: https://dart-review.googlesource.com/c/89380
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-14 19:17:13 +00:00
Brian Wilkerson 68ad94cebe Extract more hint tests into separate files
Change-Id: I110f815c6bb124596b31cf3bac739ed8604d6c3b
Reviewed-on: https://dart-review.googlesource.com/c/89100
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-11 15:39:16 +00:00
danrubel 3f90e88288 first cut adding simple non-nullable migration to dartfix
... and address comments in https://dart-review.googlesource.com/c/sdk/+/88640

Change-Id: I26e0f70f7c112d9ac184e10475e519afd8118a1d
Reviewed-on: https://dart-review.googlesource.com/c/89046
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-11 01:59:59 +00:00
Sam Rawlins 16e98d012d Update BasicWorkspace's docs and tests
Change-Id: I7c2977ae63ec983ba71e31a75b2c3a13d89991c6
Reviewed-on: https://dart-review.googlesource.com/c/89083
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-01-11 01:11:18 +00:00
Konstantin Shcheglov 29b34fa63f Set nullability for TypeName(s) based of ClassElement.
I have not tried function types yet.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I7decfe7bc6d2a09c11cdc2861ab9aaefa7bc1842
Reviewed-on: https://dart-review.googlesource.com/c/88886
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-10 20:53:30 +00:00
Brian Wilkerson 6712dca7d8 Fix the test used to differentiate between empty sets and empty maps
Change-Id: I128c356cee02397ff7f5ee9030f3c2de95dfbce9
Reviewed-on: https://dart-review.googlesource.com/c/88741
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-01-10 16:28:14 +00:00
Konstantin Shcheglov 0109e39ca4 Report INVALID_ASSIGNMENT for prefix/postfix increment decrement when the result is not assignable to the operand.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I83a732c039c1c83599c068a1944c5dd1040c3fd5
Reviewed-on: https://dart-review.googlesource.com/c/88880
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-10 05:51:15 +00:00
Mike Fairhurst ca9ea997bd Fix old treatment of {}, enable set literals tests
Change-Id: Iec319cb735a3747e64561f3865cce2f08fb2be0f
Reviewed-on: https://dart-review.googlesource.com/c/88601
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2019-01-10 01:38:34 +00:00
Konstantin Shcheglov d09c1265e9 Issue 35467. Move ast_type_matchers/element_type_matchers into test/util/.
R=brianwilkerson@google.com, paulberry@google.com

Fixes https://github.com/dart-lang/sdk/issues/35467
Change-Id: I2aab476e2e88f5bdbf5e62a2104ff7d271a73209
Reviewed-on: https://dart-review.googlesource.com/c/88780
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-09 04:46:39 +00:00
Konstantin Shcheglov 6680438415 Parse AnalysisOptionsImpl.enabledExperiments into experimentStatus.
So, we don't need to parse everywhere we need to check the status.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I4c120d0d8baf46fc9cd981c6a1f10ffe27a2f2de
Reviewed-on: https://dart-review.googlesource.com/c/88753
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-09 04:46:19 +00:00
Konstantin Shcheglov 303b3a96a7 Use ExperimentStatus field in summary / resynthesize tests.
Also, use _parseText() that calls Parser directly, without PARSED_UNIT
from tasks.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I75e4ac5cfaafd7072b3c656310eafec2b3bef2de
Reviewed-on: https://dart-review.googlesource.com/c/88743
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-08 21:23:56 +00:00
Brian Wilkerson e9eb4842ea Remove the unused hint code INVALID_ASSIGNMENT
Change-Id: I4b3aff6b53dcfb5d5f00c49992050e08e5b52002
Reviewed-on: https://dart-review.googlesource.com/c/88641
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-08 19:15:47 +00:00
Sam Rawlins 9dbb6fb113 Add a Hint enforcing contract of @literal
Example code:

```dart
import 'package:meta/meta.dart';

class A {
  @literal
  const A();

  @literal
  const A.named();
}

var a = A();
var b = const A();
const c = A();
var d = new A();

var e = new A.named();
```

Produces:

Analyzing b.dart...
  hint • This instance creation must be 'const', because the A constructor is marked as '@literal' at b.dart:11:9 • non_const_call_to_literal_constructor
  hint • This instance creation must be 'const', because the A constructor is marked as '@literal' at b.dart:14:9 • non_const_call_to_literal_constructor
  hint • This instance creation must be 'const', because the A.named constructor is marked as '@literal' at b.dart:16:9 • non_const_call_to_literal_constructor
3 hints found.

Bug: https://github.com/dart-lang/sdk/issues/34259
Change-Id: Iba10e5e0a0b2d0f7e99556cd6c201cea229ad675
Reviewed-on: https://dart-review.googlesource.com/c/88422
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-01-08 17:20:05 +00:00
danrubel 2cb346bd0c Add support for parsing complex nullable types
Change-Id: I38a59f96e299387b7266e46082d876105eb60f1e
Reviewed-on: https://dart-review.googlesource.com/c/88640
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-08 15:52:54 +00:00
Konstantin Shcheglov 3cec3dd5bf Issue 35548. Don't report CONST_CONSTRUCTOR_WITH_MIXIN_WITH_FIELD when mixin has a static field.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/35548
Change-Id: I46a2006574e31505a860a9e54640b643bb514ae7
Reviewed-on: https://dart-review.googlesource.com/c/88600
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-07 22:32:53 +00:00
Konstantin Shcheglov eebafbc4a8 Issue 35090. Add noSuchMethod forwarders to implemented members.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/35090
Change-Id: I1a72d70effe49111921a0db2a2e5396197d3a51b
Reviewed-on: https://dart-review.googlesource.com/c/88542
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-07 19:40:19 +00:00
Konstantin Shcheglov b2ace8fa61 Add hasPragmaAnalyzerNonNullable to AstBuilder and CompilationUnitImpl.
Start integration testing for non-nullable types.

Just interface type, and just parsing for now. Obviously we cannot
start working on resolver until the CL with `nullability` is landed.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I8fe70c29b25fad56739a549b09a235a83f9960e7
Reviewed-on: https://dart-review.googlesource.com/c/88434
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-07 19:39:28 +00:00
Brian Wilkerson 555485c891 Start splitting out the tests for hint codes
Change-Id: I2d221aa024b6db9426d7adf6b38c17da0be599d9
Reviewed-on: https://dart-review.googlesource.com/c/88541
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-07 14:25:20 +00:00
Brian Wilkerson 4e0762c636 Fix constant evaluation for the new bool operators
Change-Id: I4a30544b2d0e5cff8287dbe5fc83387b4e92a875
Reviewed-on: https://dart-review.googlesource.com/c/88437
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-01-05 22:57:19 +00:00
Brian Wilkerson cb61275708 Remove remaining uses of Null as a type argument from analyzer
Change-Id: I6022fbc18c002447278ec8dc0e2b24d3eb369a49
Reviewed-on: https://dart-review.googlesource.com/c/88436
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-05 19:26:07 +00:00