Konstantin Shcheglov
4eda1a5240
Test for final top-level variables.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1204423002 .
2015-06-26 09:35:35 -07:00
Brian Wilkerson
c9069537d8
Get more tests passing using the new task model
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1211993003 .
2015-06-26 07:43:27 -07:00
Lasse R.H. Nielsen
f8ce36df55
Add Resource class. Currently unimplemented.
...
R=herhut@google.com , iposva@google.com
Committed: https://github.com/dart-lang/sdk/commit/2890a7a2a94ff54c7c0050e69c40ca6a60a28474
Review URL: https://codereview.chromium.org//1181663002 .
2015-06-26 11:42:02 +02:00
John Messerly
646eeb7af1
fix NodeReplacer for AwaitExpression
...
similar fix to https://github.com/dart-lang/sdk/commit/fa5b8ce45607827d12532c9f78bb30c3273094a5
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1216463002 .
2015-06-25 15:00:17 -07:00
Konstantin Shcheglov
d0dcb514a4
Initial version of limiting invalidation.
...
Work in progress.
It's nor the most optimal, nor always correct.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1204373002 .
2015-06-25 11:20:17 -07:00
John Messerly
fa5b8ce456
fix NodeReplacer for YieldStatement
...
it was missing a return, so it always fell through to the visitNode error case
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1213503002 .
2015-06-25 10:59:20 -07:00
Paul Berry
ba289ecac9
Clean up and rename RESOLVED_UNIT* vars.
...
Now that the analysis server is no longer making use of the deprecated
RESOLVED_UNIT3, we can remove it and adjust the other RESOLVED_UNIT*
variables accordingly.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1206183002 .
2015-06-24 21:03:07 -07:00
Paul Berry
160645fba6
Add an analyzer method to flush resolved ASTs (for testing).
...
This should allow us to avoid referring to some private implementation
details of analyzer from analysis server.
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1210603002 .
2015-06-24 13:16:58 -07:00
Brian Wilkerson
4c2c18e49f
fix resolution of URIs
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1205993002 .
2015-06-24 13:09:57 -07:00
Paul Berry
19d0ea816b
Remove BuildFunctionTypeAliasesTask.
...
There seems to be no reason to do this as a separate step from
ResolveUnitTypeNamesTask.
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//1211523003 .
2015-06-24 08:08:05 -07:00
Brian Wilkerson
098950256c
Mark more code as deprecated
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1199303002 .
2015-06-23 14:30:16 -07:00
Brian Wilkerson
563127941e
Initial HTML work manager
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1200313002 .
2015-06-23 13:48:08 -07:00
Konstantin Shcheglov
5cf6c26ecd
Use List instead of Set for library sources.
...
This slightly improves WorkOrder.moveNext tag performance.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1193033003 .
2015-06-22 12:00:09 -07:00
Brian Wilkerson
a087d36d78
Deprecate old HTML support
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1200913002 .
2015-06-22 09:32:18 -07:00
Konstantin Shcheglov
e9c3b2d7b1
Move cache consistency validation into Analysis Server.
...
This speeds up the add/analyze/remove/analyze cycle from 1600 ms to
1300 ms, i.e. on about 20%.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1195183002 .
2015-06-22 08:19:44 -07:00
Brian Wilkerson
c891a348ab
Next steps toward HTML support
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1193143002 .
2015-06-21 09:21:42 -07:00
Dan Rubel
eb95064511
recompute package map when input file changes
...
BUG=
R=paulberry@google.com
Review URL: https://codereview.chromium.org//1180843011 .
2015-06-20 17:18:54 -04:00
Dan Rubel
f550b8d76e
add file watching support
...
BUG=
R=paulberry@google.com
Review URL: https://codereview.chromium.org//1191933004 .
2015-06-20 15:03:14 -04:00
Konstantin Shcheglov
12d4759685
Add AnalysisCache.onResultInvalidated, use in DartWorkManager.
...
It helps to reduce add/analyze/remove cycle from 1850 ms to 1650 ms, i.e. on about 11%.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1193993003 .
2015-06-19 10:45:49 -07:00
Konstantin Shcheglov
636618f290
Tweak for FunctionTypeImpl.==.
...
This helps to reduce analisys time of the analyzer + analysis_server workspace
from 27961 ms to 26773 ms, i.e. about 4% down.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1190253002 .
2015-06-18 21:37:19 -07:00
Paul Berry
9c90a66d0d
Update analyzer to reflect new rules for prefixes.
...
As of commit 67b99e4b33 , it is now
consistently a compile error for a prefix not to be followed by '.'.
(Previously, there were two exceptions in which a prefix not followed
by '.' was treated as though it was preceded by "this.")
This CL updates analyzer to be consistent with the new spec langauge,
and modifies the tests in tests/language accordingly.
Dart2js and the VM do not yet produce the correct compile-time error
in all circumstances. See issues #23611 and #23612 .
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1186033004 .
2015-06-18 10:03:07 -07:00
Paul Berry
13c3c10f22
Refactor least upper bound computation; support bottom correctly.
...
Previously, the least upper bound code was only half-written--it
computed correct results if both types were interface types, and
otherwise returned null. Now we always return a non-null type.
Unfortunately, the full least upper bound algorithm in the spec
requires referencing types not reachable from the types being
compared; thus in order to execute it we need access to the
TypeProvider. We can't do this with the existing API. So that API
has been deprecated. The new API uses a class TypeSystem which
contains a pointer to the TypeProvider. This new class should also be
a useful starting point in case we need to make the type system more
pluggable in the future.
Clients that use the old API will see no change in behavior--they will
still get the half-written algorithm.
Still to be addressed in future CL's:
- Deprecate getSmartLeastUpperBound.
- Fix calls to getLeastUpperBound and getSmartLeastUpperBound in analysis
server.
- Implement least upper bound computation for function types.
- Make sure type parameters function correctly in the presence of F-bounded
polymorphism.
- Implement shared tests.
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1179343004 .
2015-06-17 10:10:38 -07:00
Dan Rubel
1c1a87e820
associate @deprecated with enum element
...
BUG=
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1162013007
2015-06-17 10:44:53 -04:00
Brian Wilkerson
cb8b774fef
Re-enable and add new HTML support
...
R=paulberry@google.com
Review URL: https://codereview.chromium.org//1182303006 .
2015-06-16 09:52:18 -07:00
Konstantin Shcheglov
96670b0e97
Fix for explicit dart:core import.
...
This fixes the rest of the co19/ tests.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1181663004 .
2015-06-12 13:26:12 -07:00
Konstantin Shcheglov
a16ec77494
Mix VARIABLE_REFERENCE_ERRORS into the full errors list on ChangeNotice.
...
This fixes 11 tests in language/ and co19/.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1179253002 .
2015-06-12 12:52:15 -07:00
Konstantin Shcheglov
5538e1f105
Add self-reference sources into INCLUDED_PARTS.
...
It's an error of course, but unless we add it in the first place, we
cannot detect this error in the library element building task.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1183773002 .
2015-06-12 12:30:09 -07:00
Konstantin Shcheglov
9634a03393
Explicitly compute library errors in tests.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1183723002 .
2015-06-12 12:28:24 -07:00
Konstantin Shcheglov
61c01b2231
Fix for computeResolvedCompilationUnitAsync().
...
This fixes the last Analysis Server unit tests.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1181223002 .
2015-06-12 10:27:02 -07:00
Konstantin Shcheglov
b7b087cecd
Schedule unknown priority source analysis.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1179173005 .
2015-06-12 09:12:45 -07:00
Brian Wilkerson
585402d77f
Attempt to fix the build by backing out HTML support
...
Review URL: https://codereview.chromium.org//1177983003 .
2015-06-11 14:44:00 -07:00
Brian Wilkerson
980978c967
Support for parsing HTML in the new task model
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1185443002 .
2015-06-11 13:24:20 -07:00
Konstantin Shcheglov
f3c28ef449
Don't create navigation regions for not existing sources.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1180883003 .
2015-06-11 13:21:12 -07:00
Konstantin Shcheglov
c2cc0387a8
Create LibraryElement with SDK context for SDK sources.
...
This fixes 3 or 6 failing Analysis Server tests.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1180673008 .
2015-06-11 11:57:23 -07:00
pq
c23a060539
Supported plugin access.
...
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1179743003 .
2015-06-11 11:34:24 -07:00
Konstantin Shcheglov
b8067b5fb9
Compute RESOLVED_UNIT for all units in all of the libraries of the closure before verifying.
...
This fixes many co19 tests, so I guess it might solve the problems with constants you mentioned.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1183533002 .
2015-06-11 10:47:26 -07:00
Konstantin Shcheglov
cdced40bd5
Add AnalysisContext.onResultComputed().
...
Add RESOLVED_UNIT_NO_CONSTANTS as a public result.
Document results that are computed with the task model.
We need this to be able to use onResultComputed() in Analysis Server and
know that we will get enough information.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1181603004 .
2015-06-11 10:44:11 -07:00
pq
230f594328
Options plugin API.
...
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1175253005 .
2015-06-11 10:42:21 -07:00
pq
829f2da883
Type fix.
...
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1181723002 .
2015-06-11 10:40:01 -07:00
Paul Berry
b715b97147
Don't visit named argument labels when computing constant dependencies.
...
This fixes some crashes with the new task model.
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1178203002 .
2015-06-11 10:36:36 -07:00
Konstantin Shcheglov
99ce0f107f
Remove dead code.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1182443005 .
2015-06-11 10:04:56 -07:00
Konstantin Shcheglov
ad2ac9f1fe
Add AnalysisDriver.onResultComputed().
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1179753002 .
2015-06-11 08:12:31 -07:00
Konstantin Shcheglov
f584413999
Build LIBRARY_ELEMENT after RESOLVED_UNIT6 for all units in the closure of a library.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1177963002 .
2015-06-11 08:05:59 -07:00
Brian Wilkerson
caa03b0b9f
Capture more errors and improve duplicate error removal
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1176983002 .
2015-06-10 16:32:45 -07:00
Paul Berry
c03b8fe451
Ensure that prefix?.loadLibrary() generates the proper compile-time error.
...
loadLibrary() is special-cased in analyzer, so we need special-case
code to make sure that it can't be invoked using "?.".
Fixes #23463 .
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1177833002 .
2015-06-10 14:43:46 -07:00
Paul Berry
2f610a3ff5
Report a compile-time error if a const field is multiply initialized.
...
This CL makes analyzer consistent with the VM and the spec, by
producing a compile-time error for code such as:
class C {
final x = 1;
const C() : x = 2;
}
main() {
const C();
}
Note that Dart2js also produces an error in this circumstance, but its
error is too general (the error should only be produced if the const
constructor is invoked using "const"; if the const constructor is
invoked using "new", or is not invoked at all, it should only be a
warning). See #23618 .
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//1175073002 .
2015-06-10 14:02:43 -07:00
Brian Wilkerson
e1ba93c4f1
Filter additional error codes
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1169833007 .
2015-06-10 13:27:03 -07:00
Konstantin Shcheglov
c5c4d5e788
Use ConstantVerifier in VerifyUnitTask.
...
Number of failing tests: 126 -> 30.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//1174763002 .
2015-06-09 15:26:19 -07:00
Brian Wilkerson
f4f1ee35a4
Remove additional duplicate errors
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1172093003 .
2015-06-09 14:23:33 -07:00
Brian Wilkerson
b0ae5820d0
Attempt to fix the build
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//1173723003 .
2015-06-09 14:08:05 -07:00