Commit Graph

4276 Commits

Author SHA1 Message Date
paulberry@google.com 99a616e041 Type check field assignments during constant evaluation.
BUG=dartbug.com/16391
R=scheglov@google.com

Review URL: https://codereview.chromium.org//644283002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41062 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-11 21:25:07 +00:00
paulberry@google.com 465c48479c Type check constant variable declarations.
BUG=dartbug.com/16391
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//637303005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41054 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-10 21:57:17 +00:00
brianwilkerson@google.com bf0f247cea Remove more multi-thread support. Sorry about how hard it is to review this; diff doesn't handle this kind of change very well.
The assumption is that tasks cannot be interrupted in the single-threaded world of Dart so we no longer need to guard against the case where the state of analysis has changed while executing a task. Please think carefully about the assumption and also check carefully that I have not made any mistakes while making this change (the tests all run, but I'm not sure how well tested this portion of the code base is).

R=scheglov@google.com

Review URL: https://codereview.chromium.org//647033002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41051 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-10 20:25:11 +00:00
paulberry@google.com 2b14985502 Check field type when evaluating initializing formals.
This performs proper type checking when the type of a field differs
from the type of a field formal parameter, e.g.:

  class A {
    final T1 x;
    const A(T2 this.x);
  }

  // only works if <expr> is a subtype of both T1 and T2.
  var a = const A(<expr>);

Previously we only checked the parameter type (T2 in the above example).

BUG=dartbug.com/16391
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//649733002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41048 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-10 18:50:18 +00:00
paulberry@google.com f6f8765328 Substitute type parameters when evaluating const literal maps/lists.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//641413002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41046 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-10 18:12:44 +00:00
paulberry@google.com bce2559a59 Make "error" the default severity for checked mode compile time errors.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//643763002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41030 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-09 21:57:32 +00:00
paulberry@google.com c94860fb6b Remove PUB_SUGGESTION error type from analyzer.
This error type is not currently used (the code to generate it is
still under development), and there is no corresponding error type in
the analysis server API.  It seems like it should be adequate to
classify these as hints.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//641883002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41014 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-09 14:06:57 +00:00
brianwilkerson@google.com b481c8788d Fix for issue 21266
R=scheglov@google.com

Review URL: https://codereview.chromium.org//638733002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40981 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 22:04:11 +00:00
paulberry@google.com 492d5bee03 Check parameter types when evaluating constants.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//633803002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40978 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 20:51:24 +00:00
scheglov@google.com 3118afae58 Restore AnalysisDeltaTest in Dart.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//634093002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40976 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 20:13:40 +00:00
scheglov@google.com ebf761a5af Convert all the generated tests to reflective.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//637003002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40974 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 19:48:40 +00:00
scheglov@google.com 9b0697baac More string literals getters.
To use in the inline local refactoring.

1. We can unwrap a literal only if its `isSingleQuoted` is the same as of the target literal.

2. We can unwrap a single-line literal into a multi-line one, but not vice versa.

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

Review URL: https://codereview.chromium.org//632203002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40957 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 15:51:02 +00:00
scheglov@google.com 6d0260be31 Add SingleStringLiteral with accessors.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//630163004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40949 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 00:51:12 +00:00
brianwilkerson@google.com 9f194c3548 Unify Entry and EntryImpl classes
R=scheglov@google.com

Review URL: https://codereview.chromium.org//630763004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40944 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-06 19:43:38 +00:00
danrubel@google.com 3f93d59db9 remove instrumentated task cycle detection
BUG=
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//624313002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40941 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-06 18:08:50 +00:00
paulberry@google.com dc431d1622 Create a NullErrorReporter to use when errors don't need to be recorded.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//628053002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40940 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-06 16:57:11 +00:00
brianwilkerson@google.com d23930956a Remove cache entry copying. This also removes the extractContext/mergeContext methods, but I don't believe that anyone is depending on them.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//630743002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40936 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-06 16:06:03 +00:00
scheglov@google.com 3fab2628f4 Uncomment and clean up engine_test.dart
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//627133002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40913 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-05 19:55:07 +00:00
scheglov@google.com d682c178b4 Write end-of-block comments.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//624403002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40912 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-05 17:53:52 +00:00
scheglov@google.com 8debcea519 Uncomment and clean up all_the_rest.dart tests.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//630513002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40906 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-03 22:09:29 +00:00
scheglov@google.com bc287b5a3e New analyzer snapshot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//622743002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40867 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-02 04:13:16 +00:00
paulberry@google.com 5b45f8e762 Move PubPackageMapProvider to its own file.
This will allow clients of the AnalysisServer package to provide their
own PackageMapProvider without bringing in a dependency on dart:io.

R=brianwilkerson@google.com, rpaquay@chromium.org

Review URL: https://codereview.chromium.org//599133002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40638 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-24 18:09:08 +00:00
scheglov@google.com bbbcddfac6 New analyzer snaphot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//581733002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40394 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-17 20:07:57 +00:00
scheglov@google.com 8ed8098a48 Issue 17389. Analyzer snapshot and server tweaks to use new ParameterElement.defaultValueCode.
This also makes Analysis Server to return hovers with parameter default values.

R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=17389

Review URL: https://codereview.chromium.org//564413005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40298 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-16 01:46:27 +00:00
scheglov@google.com d2d8fb708e Issue 20894. Rename 'Class' when rename refactoring is activated on 'Class' in 'new Class.name()'.
To do this we need to tweak the Java version of ElementLocator and regenarate the Dart version.

R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=20894

Review URL: https://codereview.chromium.org//571523002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40208 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-12 17:16:15 +00:00
scheglov@google.com 778536d97c Issue 19682. New analyzer snapshot that fixes an inline refactoring problem.
R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=19682

Review URL: https://codereview.chromium.org//561373002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40193 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-11 22:47:29 +00:00
jwren@google.com 8d18c3720c Bug fix in analyzer command line to work with pub list
R=paulberry@google.com

Review URL: https://codereview.chromium.org//557333005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40110 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-10 20:01:10 +00:00
jwren@google.com 944174f36a Move package_map_provider.dart from the server to the analyzer package to be used by the command line analyzer.
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//560553002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40051 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-09 20:36:35 +00:00
scheglov@google.com b7189ea678 New analyzer snapshot.
We compute the parameter element for 'object.field = 42' now, so:
1. We can stop doing it in InlineMethodRefactoring.
2. We need to update the corresponding hover integration test.

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

Review URL: https://codereview.chromium.org//535543003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39772 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 20:10:47 +00:00
scheglov@google.com a2cc52070c New analyzer snapshot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//509073008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39654 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-28 14:54:20 +00:00
scheglov@google.com 8647752153 New analyzer snapshot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//515543002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39599 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-27 15:51:56 +00:00
scheglov@google.com 711827d462 New analyzer snapshot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//492463004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39500 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-22 17:28:29 +00:00
scheglov@google.com c74b350b50 New analyzer snapshot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//489173002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39416 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-20 18:18:43 +00:00
brianwilkerson@google.com 90a5272601 Add flags for proposed features
R=scheglov@google.com

Review URL: https://codereview.chromium.org//481273003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39372 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-19 16:02:46 +00:00
scheglov@google.com a12312f39f Improve formatting of variable declarations/assignments.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//477373002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39320 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-17 20:24:07 +00:00
scheglov@google.com c8e533be3a Tweak for formatting constructor initializers.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//474363002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39313 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-15 21:12:36 +00:00
scheglov@google.com f127b725e9 Test for JavaFile.toURI().
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//479593002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39300 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-15 16:28:03 +00:00
scheglov@google.com 7af986dcd1 Issue 20520. JavaFile.toURI() should use absolute path.
R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=20520

Review URL: https://codereview.chromium.org//471053002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39260 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-14 18:22:28 +00:00
scheglov@google.com de7d21f38c New analyzer snapshot, add format/formatList.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//475543002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39222 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-13 21:51:47 +00:00
scheglov@google.com 9e3aa826dc New analyzer snapshot.
Basically it includes all the code that was not translated before.

Includes new library: element_handle, but it should not be used because of WeakReference absence in Dart.
Includes new test: engine_test, but it has too much code requirering manual tweaks, after we will stop translating.
All other tests are in all_the_rest.dart, again to be moved into corresponding libraries and cleaned up later.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//459703002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39091 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-11 15:41:37 +00:00
scheglov@google.com 0f041852a6 Fix for opening SDK sources.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//449583003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38955 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-06 22:13:28 +00:00
scheglov@google.com c5263aae9f Breaking changes in 'analyzer' package.
1. Source.uri added.

2. DartSdk.fromEncoding() replaced with fromFileUri().

  This CL cannot be committed as is until pkg/code_transformers is fixed.

R=brianwilkerson@google.com, sigmund@google.com
BUG=

Review URL: https://codereview.chromium.org//428303004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38949 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-06 20:41:42 +00:00
scheglov@google.com 57f076f17f New analyzer snapshot.
Not to be published.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//435483002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38764 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-31 00:40:17 +00:00
scheglov@google.com a4dee8bf4c Resolve names in combinators for PropertyInducingElements instead of PropertyAccessorElements.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//384093002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38199 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-14 17:11:34 +00:00
scheglov@google.com 7a27ca20dd New analyzer snapshot.
Also includes the tweak for property accessor identifiers.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//382953002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38129 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-10 20:33:33 +00:00
scheglov@google.com 0a09f96271 Improve wrapping during formatting.
It will wrap on spaces with the lowest priority first, and if required - on the next priority, etc.

R=brianwilkerson@google.com, pquitslund@google.com
BUG=

Review URL: https://codereview.chromium.org//381663004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38109 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-09 22:26:30 +00:00
scheglov@google.com 0597e61ba3 Move index/search to services.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//375693002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38045 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-07 22:24:59 +00:00
scheglov@google.com 1f45100688 Move Index and IndexStore implementations into Engine.
Also move most of the related tests.

LocalIndex test is commented out, because relies on the infrastucture existing only in Server - virtual file system, mocks.
We need to move it into Engine or extract into a separate package.

This CL also removes Dart implementation of BTree.
We now use a different approach to implementing the index.

Bots are red after the previous CL, I hope that this one will fix at least some redness.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//365193004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37993 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-03 21:30:25 +00:00
scheglov@google.com 4b5436f498 IndexStore, Index and SearchEngine APIs and partial implementatons.
IndexStore and Index implementations are not moved yet to engine package.

SearchEngine implementation is not cleaned up yet, there is only (commented) raw java2dart translation result.

Index contributions are present, but without tests yet.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//363373002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37991 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-03 19:06:33 +00:00
scheglov@google.com ab2fe30d18 Rewrite 'throw thrownException' with 'throw new AnalysisException(...)'
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//355203009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37917 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-01 22:15:57 +00:00