Commit Graph

7628 Commits

Author SHA1 Message Date
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 3c5501a090 Add the experiment flags for the control flow and spread collection features
Change-Id: I8077794ae5cc42b13aff678c010a0564025e96ac
Reviewed-on: https://dart-review.googlesource.com/c/89045
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-11 19:47:46 +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
Mike Fairhurst 161f9b35c7 Use preparsed experiment status in Static Type Analyzer
Change-Id: I67b3442f00aed8779806c5aa532ec5e1fdaecf7b
Reviewed-on: https://dart-review.googlesource.com/c/89022
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-01-10 21:59:16 +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
Mike Fairhurst 5f59e42f9c Remove unused import
Change-Id: I446ffc1a7b4575f266274acffea75c88e2128d68
Reviewed-on: https://dart-review.googlesource.com/c/88751
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-01-09 01:45:40 +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
Konstantin Shcheglov 52a159de5c Change AnalysisContext.analysisOptions setter to just remembering the AnalysisOptions object.
There was a bug with not copying enabledExperiments.

We don't do such defensive copying for other objects.

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

Change-Id: I4508b8101d9a912e1645932a3f9c1855f71969c4
Reviewed-on: https://dart-review.googlesource.com/c/88740
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-08 21:22:12 +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
Brian Wilkerson 2ca417aff1 Initial support for recording nullability in types
Change-Id: I1938517ab88e9c868a04d0490f4a336bd1a126e4
Reviewed-on: https://dart-review.googlesource.com/c/88433
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-08 17:53:16 +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
Max Bittker 2c09a4cf33 update error message
fixes a small typo in the `INVOCATION_OF_NON_FUNCTION_EXPRESSION` message

Closes #35589
https://github.com/dart-lang/sdk/pull/35589

GitOrigin-RevId: b30d58449c7d2d7a786d71f64ce1a4251de72296
Change-Id: I623ebd0f5113e4bc8b1e07bfd963c27a28c7fef0
Reviewed-on: https://dart-review.googlesource.com/c/88603
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-07 23:38:43 +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 f715a2e79e Include experiments into AnalysisOptions.unlinkedSignature.
Enabled experiments might affect how we parse Dart code, e.g. `?` for
nullable types. So, we need to include at least some experiments into
unlinkedSignature. So, we pessimistically include all of them.

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

Change-Id: Ib6e95fe7f4efaa6e6ada1c3a81d010c89f9676d5
Reviewed-on: https://dart-review.googlesource.com/c/88602
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-01-07 22:16:03 +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
Brian Wilkerson c39a58a9fe Generate an error if a constant set contains two elements with the same value
Change-Id: Ie359a1ea639e9c928df32c727bcd2f075f92033f
Reviewed-on: https://dart-review.googlesource.com/c/88425
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-01-05 15:13:12 +00:00
Mike Fairhurst 88b1a9d241 Remove hack; test fix for #35441
Change-Id: I9505598e904e4ee39b00cbae87082f5f332f3505
Reviewed-on: https://dart-review.googlesource.com/c/87612
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-05 03:52:34 +00:00
Konstantin Shcheglov 614f6241bb Initial version of DefiniteAssignmentTracker.
I think it supports all expressions and statements.

Change-Id: I753bd6ce781f54c1dfd0f15f69fca2f15c2a1877
Reviewed-on: https://dart-review.googlesource.com/c/87423
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-04 23:54:23 +00:00
Brian Wilkerson 80fa1a874d Replace more uses of deprecated elements
Change-Id: Ied014ca1d8cbf5917b5e3d15d0892e2e02257ccf
Reviewed-on: https://dart-review.googlesource.com/c/88423
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-04 18:35:53 +00:00
Paul Berry 01a8ff067e Remove support for "@checked" annotations.
Dart now has a "covariant" keyword that serves the same purpose.

Fixes #28797

Note that this is a breaking change, not to the analyzer API but to
the language semantics implemented by the analyzer; client code that
wants the "@checked" behavior will now have to use the "covariant"
keyword instead.  Since the front end implementation of the type
system only supports the "covariant" keyword, the impact on user code
should be low; any user code that would be broken by this change is
already broken under the front end.  Google internal code has already
been migrated to use "covariant".

Change-Id: Ida052bd5449d3ba703bacf98143bece650f53b53
Reviewed-on: https://dart-review.googlesource.com/c/88225
Commit-Queue: Paul Berry <paulberry@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-03 22:12:43 +00:00
pq af2e4d5855 add exception details to linter logging info
Change-Id: Idf2f8c35def6a94e0e5febac53e1109e1983d061
Reviewed-on: https://dart-review.googlesource.com/c/88287
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-01-03 20:34:42 +00:00
danrubel 2111f507bd rework parsing local variable declaration with nullable type
... and address comment in https://dart-review.googlesource.com/c/sdk/+/88301

Change-Id: I96c9bcf995fad58403ab455e907843a40339ef84
Reviewed-on: https://dart-review.googlesource.com/c/88303
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-01-03 19:53:32 +00:00
Sam Rawlins ce256c762c Impl of INVALID_LITERAL_ANNOTATION
Bug: https://github.com/dart-lang/sdk/issues/34259
Change-Id: Ia5ca627a89dcb3f0fcd5ce74048df8fdf9dd9c9c
Reviewed-on: https://dart-review.googlesource.com/c/88283
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-03 18:07:44 +00:00
Konstantin Shcheglov d200089583 Make MethodInvocationImpl.methodNameType a synonym of staticInvokeType if the target element is not a getter.
So, that type inference that updates staticInvokeType later, in
StaticTypeAnalyzer._inferGenericInvocationExpression() also implicitly
updates methodNameType. This fixes the new set of exceptions that we
saw right before holidays. I'm running them now, most are green,
no reds yet.

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

Change-Id: I53030a1a62a2a669549a47680c6c0c98b4031383
Reviewed-on: https://dart-review.googlesource.com/c/88227
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-03 16:57:22 +00:00
danrubel c442539619 Remove fasta parser listener.beginExpressionStatement
... and rename endExpressionStatement to handleExpressionStatement.
This is needed for the next step in NNBD.

Change-Id: Ibed51f15a4e2d93d2b16a50e4e22e912f22d2171
Reviewed-on: https://dart-review.googlesource.com/c/88301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-03 15:49:18 +00:00
Paul Berry fd92515e14 Make ExprBuilder.uc private.
In future CLs, we'll switch from using the UnlinkedConst RPN
representation to the string representation.  Making ExprBuilder.uc
private will help isolate the necessary changes to just one class.

Change-Id: I44c32c48d6275e3b4fd900a45a396876ed388ee2
Reviewed-on: https://dart-review.googlesource.com/c/88284
Auto-Submit: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-01-03 15:25:50 +00:00
Aske Simon Christensen 7475080928 Enable set literals by default in the parser
Change-Id: I854a7d35b05f95d05f0b13f67677d2e512db4eeb
Reviewed-on: https://dart-review.googlesource.com/c/87844
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2019-01-03 13:45:36 +00:00
Paul Berry fa296dc3fa Add a string representation of initializer expressions to summaries.
This is preparatory work for #35418.  The string representation is
produced, and tested via unit tests, but not yet used.  In follow-up
CLs we will begin modifying the analyzer to make use of the string
representation, guarded by a flag at first to avoid incompatibilities
with older summary files.  When it is safe to do so we'll hardcode the
flag and remove the old RPN representation.

Change-Id: Iab92ff742930f39761a9df6630f199359d76fcf6
Reviewed-on: https://dart-review.googlesource.com/c/88231
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-01-03 13:26:06 +00:00
Sam Rawlins 31fa815dca Remove sealed ability on mixin
Change-Id: I69f59dfaa18d77fcd53f82b71a79c567102a9b66
Reviewed-on: https://dart-review.googlesource.com/c/88200
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-03 01:51:35 +00:00
Sam Rawlins 78fdeb688f Improve the MUST_BE_IMMUTABLE messaging; Fixes #29394
Example Dart file:

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

@immutable class Foo {}

class Mutable {
  int a;
  bool b;
}

class Bar = Mutable with Foo;

class Baz extends Foo {
  int a;
  bool b;
}

class Quux extends Mutable with Foo {}

@immutable class Mut extends Baz {
  int c;
  bool d;
}
```

Error messages now look like:

Analyzing a.dart...
  hint • This class (or a class which this class inherits from) is marked as @immutable, but one or more of its instance fields are not final: Baz.a, Baz.b at a.dart:12:7 • must_be_immutable
  hint • This class (or a class which this class inherits from) is marked as @immutable, but one or more of its instance fields are not final: Mutable.a, Mutable.b at a.dart:17:7 • must_be_immutable
  hint • This class (or a class which this class inherits from) is marked as @immutable, but one or more of its instance fields are not final: Mut.c, Mut.d, Baz.a, Baz.b at a.dart:19:18 • must_be_immutable
3 hints found.

Bug: https://github.com/dart-lang/sdk/issues/29394
Change-Id: Ib7aba7a4eb3f0ad35e459990558ad1866d5dd7d8
Reviewed-on: https://dart-review.googlesource.com/c/87860
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-03 00:29:20 +00:00
Sam Rawlins 0d744a51da Allow and enforce @immutable on mixins and mixin applications
Bug: https://github.com/dart-lang/sdk/issues/35459
Change-Id: I094e12ec997a63fee65ff7a783ab112a11930af9
Reviewed-on: https://dart-review.googlesource.com/c/88223
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-01-03 00:11:40 +00:00
Brian Wilkerson 53447f5d63 Fix an exception in ErrorReporter that caused server to crash
Change-Id: I3ff1d8923e32e4f8d210fd7ada5052dcd108869d
Reviewed-on: https://dart-review.googlesource.com/c/88226
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-01-02 22:06:17 +00:00
Mike Fairhurst d99fb0618f Remove unused imports
Change-Id: I581cb2078a4df7c8e7d00eb881b3a93bfa3f5eaf
Reviewed-on: https://dart-review.googlesource.com/c/88224
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
2019-01-02 21:32:35 +00:00
Sam Rawlins 0797d6ef69 Remove unused variables in analyzer workspace/
Change-Id: Ifbf09cb2262adb836ce3451bfd1a5033cfca19c7
Reviewed-on: https://dart-review.googlesource.com/c/88163
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-01-02 19:09:33 +00:00
Sam Rawlins 983795d26a Add Annotation support to LinterVisitor and NodeLintRegistry
Bug: https://github.com/dart-lang/linter/issues/1073
Change-Id: I891e4b6322a13781220efc52c23ee9ca3c557418
Reviewed-on: https://dart-review.googlesource.com/c/88162
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-01-02 19:07:33 +00:00
Sam Rawlins 428629efd8 Enforce sealed annotation on classes and mixins
This CL replaces https://dart-review.googlesource.com/c/sdk/+/75941
(there were some large refactorings, and I got a new laptop and lost my Git repo)

Bug: https://github.com/dart-lang/sdk/issues/34232
Change-Id: Ia0746b94a23ccb757bc209e76098243896be8c55
Reviewed-on: https://dart-review.googlesource.com/c/88127
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-02 18:07:52 +00:00
Brian Wilkerson 737209b85c Remove some unused hint codes
Change-Id: I1388355e7832dec17ed06da14262573ea4e60eef
Reviewed-on: https://dart-review.googlesource.com/c/88161
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-12-31 16:23:28 +00:00
Brian Wilkerson 8c6f495f9b Stop creating contexts for excluded directories
Change-Id: Ifd0e053a1a7fb4fff9c3dcb9fdaeb68f54f7eeae
Reviewed-on: https://dart-review.googlesource.com/c/88160
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-12-31 16:23:08 +00:00