Brian Wilkerson
723f8bca05
Convert parseMetadataStar and partially convert parseMetadata
...
Change-Id: I546206f1b7de042827a519f4ac9c721b98a3038e
Reviewed-on: https://dart-review.googlesource.com/19020
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-11-07 16:14:50 +00:00
Dan Rubel
c18275f6c2
Fix type argument comment parsing
...
Change-Id: Ia8ca73131471af1c36f13d50a6b30fe63e607bb2
Reviewed-on: https://dart-review.googlesource.com/18980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2017-11-07 14:32:29 +00:00
Konstantin Shcheglov
c055c64e0f
Only accessible constructors should be copied into mixins.
...
R=brianwilkerson@google.com , paulberry@google.com
Bug:
Change-Id: I6143dd084192880ce59e8aa95566e9bd74a2a81f
Reviewed-on: https://dart-review.googlesource.com/18900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2017-11-06 20:43:58 +00:00
Brian Wilkerson
e4e82643b9
Add highlight ranges to a few more tests
...
Change-Id: I00ad76d7c16eb34d2ba9c4778478ca5faa8b9036
Reviewed-on: https://dart-review.googlesource.com/18860
Reviewed-by: Dan Rubel <danrubel@google.com >
2017-11-06 17:40:25 +00:00
Brian Wilkerson
167b529da7
Convert most of the statement parsing methods
...
Change-Id: I1c7fa1abda6cd3d45ec83d32c864b4e23700b837
Reviewed-on: https://dart-review.googlesource.com/18861
Reviewed-by: Dan Rubel <danrubel@google.com >
2017-11-06 17:33:35 +00:00
Konstantin Shcheglov
cfe6812abd
Native classes are fixed, update the tests.
...
R=brianwilkerson@google.com , danrubel@google.com
Bug:
Change-Id: I2423c938adb4d5e39e3fd3613a73108b91018e77
Reviewed-on: https://dart-review.googlesource.com/18513
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-03 20:28:40 +00:00
Konstantin Shcheglov
5ea30b4e3d
Rename performace_logger.dart to performance_logger.dart
...
R=paulberry@google.com , sigmund@google.com
Bug:
Change-Id: Ib7b6d122dff3ddabde3db2270daa777a269e04ed
Reviewed-on: https://dart-review.googlesource.com/18512
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-03 20:24:00 +00:00
Konstantin Shcheglov
611475aaaa
Separate KernelDriver.getKernel() and getKernelSequence().
...
The reason to have both is that IKG needs kernels for all libraries,
potentially not even deserialized from bytes, if we eventually get this
optimization.
OTOH, Analyzer always needs just one library, with enough outlines
to make sense of the dependencies. For now, getKernel() is implemented
using getKernelSequence(), this will change with switching to
outline based compilation.
R=paulberry@google.com , sigmund@google.com
Bug:
Change-Id: Iba02bc3a4cdb67a896c4faa2f809c7cb8069aa9e
Reviewed-on: https://dart-review.googlesource.com/18509
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-03 20:00:01 +00:00
Sigmund Cherem
24e4d3bb39
Define a location of the synthetic __loadLibrary_foo method
...
Change-Id: I8fd950cf7a6e6aed79240daed085f2a02e16666e
Reviewed-on: https://dart-review.googlesource.com/18430
Commit-Queue: Sigmund Cherem <sigmund@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2017-11-03 18:59:40 +00:00
Dan Rubel
15a0abf956
Fix OutlineBuilder native class and AnalyzerDietListener tests
...
Update the OutlineBuilder and AstBuilder to fix native handling,
and in the process, fix several AnalyzerDietListener tests.
Fix https://github.com/dart-lang/sdk/issues/30836
Change-Id: I7e3b6c4c7d241f1325a5fce1e117e277c6166e49
Reviewed-on: https://dart-review.googlesource.com/18500
Reviewed-by: Paul Berry <paulberry@google.com >
2017-11-03 17:16:51 +00:00
Aske Simon Christensen
e3c11c2703
Retain erroneous import, export and part (of) directives
...
If the URI of a directive is invalid, use a special URI with a
scheme marking it as malformed. In the loader, treat a file with
an invalid URI as empty.
Order all dependencies (imports and exports) by source position to
allow the DietListener to match them up properly with metadata.
For the same reason, add imports and exports within parts to
dependencies even though they are not permitted here.
Closes https://github.com/dart-lang/sdk/issues/30997
Closes https://github.com/dart-lang/sdk/issues/31004
Change-Id: Ic7efd0da058c246531c165508b7474475b4bdad2
Reviewed-on: https://dart-review.googlesource.com/17901
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2017-11-03 12:55:19 +00:00
Konstantin Shcheglov
ec4ffb99f5
Use one large AST cache with task model.
...
I found that the issue with Dart indexer is related to flushing
partially resolved ASTs from the cache, which we don't handle correctly.
Instead of trying to fix the issue, we can just increase the cache
size and make indexer work for now. Eventually we should migrate to
AnalysisDriver, which does not have this problem.
R=brianwilkerson@google.com , jwren@google.com
Bug:
Change-Id: I7515fd132245c361e030ddf1bfa7e06f11b6f3a4
Reviewed-on: https://dart-review.googlesource.com/18422
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-02 21:22:39 +00:00
Brian Wilkerson
c0f81029a3
Extract error translation and re-enable completeness test
...
Change-Id: Ic78139f46a56f5b37d5569af712071ee8ae5fed9
Reviewed-on: https://dart-review.googlesource.com/18148
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-11-02 16:34:09 +00:00
Dan Rubel
e781b33c83
move Analyzer test classes out of lib
...
This moves several classes used only for testing purposes
out of the analyzer/lib directory tree and
into front_end/test/fasta/testing where they are used.
Change-Id: I294b20710de4b16e27fbea5d13be316a6ecda112
Reviewed-on: https://dart-review.googlesource.com/18200
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2017-11-02 16:02:58 +00:00
Brian Wilkerson
38a170cca9
Make parseTypeVariable accept the last committed
...
Change-Id: I64e29df367fca45709beb450b5aff1f9073f0b78
Reviewed-on: https://dart-review.googlesource.com/18080
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-11-02 13:19:20 +00:00
Paul Berry
174c132931
Change CheckedModeCompileTimeErrorCodeTest to run in strong mode.
...
Change-Id: Id5d11429bb9ab8b0507b7a2047ba2f82f9b420fa
Reviewed-on: https://dart-review.googlesource.com/18141
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2017-11-01 22:40:27 +00:00
Konstantin Shcheglov
229fdff530
Triage a test for generic function types as a Fasta issue.
...
R=paulberry@google.com , sigmund@google.com
Bug: https://github.com/dart-lang/sdk/issues/31213
Change-Id: I0e791e20ac84d0bd3ddd0b2f9e489119a4eda9de
Reviewed-on: https://dart-review.googlesource.com/18020
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-01 21:04:17 +00:00
Brian Wilkerson
1e6490dbef
Return last committed from parseTopLevelMember, parseTopLevelKeywordDeclaration, and parseTopLevelDeclarationImpl
...
Change-Id: If9fe159f4926c250cf06937cea9f1f4a78e21269
Reviewed-on: https://dart-review.googlesource.com/18003
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-11-01 20:31:36 +00:00
Konstantin Shcheglov
9d0d1fb6d2
Replace #30035 with #28434 in status files.
...
Kernel now supports these annotations, we need to start producing them.
R=paulberry@google.com , sigmund@google.com
Bug:
Change-Id: I1b2732ddad2674688d562f3be3ca29140a5e9381
Reviewed-on: https://dart-review.googlesource.com/17863
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-01 20:30:04 +00:00
Konstantin Shcheglov
9def9444cd
Stop storing the parent node in AnalyzerMetadata.
...
We don't actually need it, and using any node disables lazy Kernel
loading.
R=brianwilkerson@google.com
Bug:
Change-Id: Ie92aa6c101c4b94c3585fc1ab7879ca2b6db6053
Reviewed-on: https://dart-review.googlesource.com/17983
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-01 19:10:04 +00:00
Konstantin Shcheglov
a3ea40eb3b
Fix for covariant function typed parameters with void return type.
...
R=brianwilkerson@google.com
Bug:
Change-Id: I8e46ebd0afb7d9812016bae584a2f53066e15019
Reviewed-on: https://dart-review.googlesource.com/17982
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-11-01 18:58:35 +00:00
Brian Wilkerson
f95e1475fc
Remove the unused Listener.beginDottedName
...
Change-Id: I1c5752a9610f21dad62db6655972b4006ce632e9
Reviewed-on: https://dart-review.googlesource.com/17862
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
2017-11-01 18:35:45 +00:00
Konstantin Shcheglov
9350925efe
Add InvalidCodeTest with end-to-end cases of problematic invalid code.
...
R=brianwilkerson@google.com , paulberry@google.com
Bug:
Change-Id: I39d26ea0b333ddfa69f281eeba78b04212e95a96
Reviewed-on: https://dart-review.googlesource.com/17960
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2017-11-01 18:16:25 +00:00
Brian Wilkerson
87a096e992
Remove the unused Listener.beginIdentifierList
...
Change-Id: I3644aaff3fa7a8a97b9e9bcc83f549f628a1fb71
Reviewed-on: https://dart-review.googlesource.com/17861
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-11-01 17:21:05 +00:00
Brian Wilkerson
8d9243b4f9
Fix an assertion to be stronger
...
Change-Id: Ie7a3fd7206b9b2a6acb8685e887ea53e31b0e4c5
Reviewed-on: https://dart-review.googlesource.com/17860
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-11-01 16:47:45 +00:00
Brian Wilkerson
dd18ef841b
Parser conversion, part 3
...
Change-Id: Ibe48da9bfa89887fb04a4b958b913fe7c0087cf1
Reviewed-on: https://dart-review.googlesource.com/17600
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2017-11-01 16:32:45 +00:00
danrubel
9319716c4f
Ensure progress in parseUnit
...
This adds a check in the top level parseUnit loop to ensure
that parsing has not stalled causing an infinite loop.
Fix https://github.com/dart-lang/sdk/issues/31151
Change-Id: Ief7c12d60bd7e09111f9b1bbefa4a29b9fcf9175
Reviewed-on: https://dart-review.googlesource.com/17460
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2017-11-01 14:22:40 +00:00
Konstantin Shcheglov
593d4b3087
Catch exceptions during parsing and store exception context.
...
It seems that we need, at least temporary, catch scanning / parsing
exceptions and store the exception and the corresponding content
in crash contexts.
R=brianwilkerson@google.com , danrubel@google.com
Bug: https://github.com/dart-lang/sdk/issues/31098
Change-Id: Id3390b0f39acf13f44777ec9156fb237d14c57e8
Reviewed-on: https://dart-review.googlesource.com/17561
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-10-31 21:13:36 +00:00
Brian Wilkerson
c223a6d9d6
Add highlight region information to more tests
...
Change-Id: I5f2ffe440f9358b551e73eef205c465bfea7bdac
Reviewed-on: https://dart-review.googlesource.com/17580
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-31 19:34:25 +00:00
P.Y. Laligand
a28d599ab6
[gn] The Fuchsia build dir path may be relative.
...
Change-Id: I21f29233406ce6bb12c9fb2a95d5d988e85b5bf2
Bug:
Reviewed-on: https://dart-review.googlesource.com/17641
Reviewed-by: Zach Anderson <zra@google.com >
2017-10-31 19:23:17 +00:00
Dan Rubel
2b681b2149
Disable scanning of &&= and ||= assignment operators
...
Fix https://github.com/dart-lang/sdk/issues/30340
Change-Id: Id27f37af9805ca09deaa3c6252817e3d9a926216
Reviewed-on: https://dart-review.googlesource.com/17361
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2017-10-31 18:51:24 +00:00
Paul Berry
c084df4747
Remove deprecated DirectoryBasedDartSdk.
...
This class has been deprecated for over a year, and I believe all uses
of it have been removed.
Change-Id: I42c39339b08bb98271000c2a459d3045388ec9ce
Reviewed-on: https://dart-review.googlesource.com/17520
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2017-10-31 17:13:40 +00:00
Brian Wilkerson
b6ef64ffbd
Parser conversion, part 2
...
Change-Id: I7fb782d5f9ac9a3ac024da953f1e72faa6e557b3
Reviewed-on: https://dart-review.googlesource.com/17280
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-31 17:05:35 +00:00
P.Y. Laligand
abe4ef0cb2
[gn] Use a config file to locate the Fuchsia build directory.
...
Change-Id: Ia849f95455cff096c64f4b023990285c47900222
Bug:
Reviewed-on: https://dart-review.googlesource.com/17341
Reviewed-by: Zach Anderson <zra@google.com >
2017-10-31 16:57:24 +00:00
Brian Wilkerson
0f25913463
Remove unused error code
...
Change-Id: I178aa3f70108eda870aba2f75a93e2a833a94915
Reviewed-on: https://dart-review.googlesource.com/17480
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-31 15:33:26 +00:00
P.Y. Laligand
9283ed238c
[gn] Look for packages in the Dart "toolchain".
...
Change-Id: I8f4164c5f767bbb45c8e2297c0e97a34651004b3
Bug:
Reviewed-on: https://dart-review.googlesource.com/16336
Reviewed-by: Zach Anderson <zra@google.com >
2017-10-30 19:20:53 +00:00
Brian Wilkerson
7bc53cd573
Test error highlight region in more cases
...
Change-Id: I904ba3785467f87c8f22d578e7c02bc96d6f1d12
Reviewed-on: https://dart-review.googlesource.com/17281
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-30 18:32:46 +00:00
Brian Wilkerson
61faf35b32
First set of Parser method conversions
...
Change-Id: If911c37f2324e45e5118de22e5fd636638a27d6a
Reviewed-on: https://dart-review.googlesource.com/17063
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-30 16:05:15 +00:00
Dan Rubel
a2c5217e8d
Update several fasta/analyzer covariant and type errors
...
* report "missing const, final, var, or type" error in several situations
* fix several top level covariant errors
* report final and covariant error
Change-Id: Iffe313c1b3cd2413be5f7763cb726436722e6a74
Reviewed-on: https://dart-review.googlesource.com/17140
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2017-10-30 13:28:46 +00:00
Konstantin Shcheglov
e83239d213
Use vm_platform_strong.dill for Analyzer.
...
We decided that Analyzer + FrontEnd == strong mode only.
So, we need to use strong mode platform.
R=brianwilkerson@google.com , paulberry@google.com
Bug:
Change-Id: I5934aec69cf8d7fc7fd28257ec5b5e8e46682f7b
Reviewed-on: https://dart-review.googlesource.com/17045
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2017-10-27 21:51:18 +00:00
Brian Wilkerson
f36203ecb0
Add error range checks for more of the existing tests
...
Change-Id: Ice173c1046f334b69dab8896a8d0eb570dbedaed
Reviewed-on: https://dart-review.googlesource.com/16691
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-27 13:53:18 +00:00
Samir Jindel
031a7ffe41
[kernel] Improve Enum representation.
...
Dart2JS and the VM prefer for Enum names to be stored inline in the Enum
object to avoid having the static array of all Enum values. A base class
for Enums is provided to avoid repeating the common fields and accessors
between Enum definitions.
Bug:
Change-Id: I783f863015b45f13317fda06e627d14844fe2ddf
Reviewed-on: https://dart-review.googlesource.com/16526
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2017-10-27 12:10:53 +00:00
Dan Rubel
54f22f1a03
Improve error recovery for fields.
...
Change-Id: I5e44cc220f67f4daa9c5339c3afea9c5f2f48bcd
Reviewed-on: https://dart-review.googlesource.com/16721
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2017-10-27 03:02:40 +00:00
Konstantin Shcheglov
ffadd1ed3d
When running analyzer_cli with --preview-dart-2, load SDK from vm_outline.dill.
...
We need this to be able to access classes that are required by Fasta,
but come from VM patches.
R=brianwilkerson@google.com , paulberry@google.com
Bug:
Change-Id: I4d29e1dca42e016446516a2dab0fae138cb74548
Reviewed-on: https://dart-review.googlesource.com/16863
Reviewed-by: Paul Berry <paulberry@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2017-10-26 23:34:18 +00:00
Dan Rubel
a02662c47e
improve errors and recovery for factory methods
...
Change-Id: I55711bdb0f98c0747c7055bebda173702c2c138f
Reviewed-on: https://dart-review.googlesource.com/16720
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2017-10-26 21:21:00 +00:00
Brian Wilkerson
5b6260ce13
Add support for reporting errors that span multiple tokens
...
Change-Id: I257225465d79e1831392af14d98e0799f0a8b184
Reviewed-on: https://dart-review.googlesource.com/16660
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-25 21:19:58 +00:00
Brian Wilkerson
b8f870c524
Add support for testing the highlight range of errors
...
Change-Id: I077ee8318756450271b68c70ed304807a1dfb240
Reviewed-on: https://dart-review.googlesource.com/16640
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-25 20:00:26 +00:00
Konstantin Shcheglov
68cdf931ae
Resolved comment references to elements of GenericTypeAlias.
...
R=brianwilkerson@google.com
Bug: https://github.com/dart-lang/linter/issues/779
Change-Id: I6da1d7d740db6d6a53706ba1f1f26561e836a579
Reviewed-on: https://dart-review.googlesource.com/16620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2017-10-25 19:51:47 +00:00
Brian Wilkerson
39bfbfe060
Fix the offset used when adjusting tokens
...
Change-Id: Ibf4c7a39fff8e51853037b3d41f0f7587794acfc
Reviewed-on: https://dart-review.googlesource.com/16580
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2017-10-25 18:47:26 +00:00
Brian Wilkerson
f6455328b8
Pass length information to listeners when reporting errors
...
Change-Id: I786cfcaa5631b817c56bb7b68b3bcc440d055344
Reviewed-on: https://dart-review.googlesource.com/16340
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2017-10-25 14:15:29 +00:00