Commit graph

42882 commits

Author SHA1 Message Date
Brian Wilkerson a3e1a0d395 Enable generic method support by default
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2488043002 .
2016-11-22 09:16:19 -08:00
Konstantin Shcheglov ab0a8e775f Use single unit/node/element.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2525693002 .
2016-11-22 09:13:31 -08:00
Regis Crelier 21b6f8904c Fix dartium build (test now passes).
Review URL: https://codereview.chromium.org/2523753002 .
2016-11-22 08:49:11 -08:00
Dan Rubel f109556fb7 remove unused DDC --package-paths options and MultiPackageResolver
R=vsm@google.com

Review URL: https://codereview.chromium.org/2527433002 .
2016-11-22 11:20:23 -05:00
Johnni Winther f6fbc40423 Fix kernel/impact_test
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2521993002 .
2016-11-22 16:21:37 +01:00
Johnni Winther e4c612fc3e Handle forwarding constructors of unnamed mixin applications for reflection
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2519383002 .
2016-11-22 15:58:50 +01:00
Johnni Winther a710603553 Update stacktrace_test with negative tests
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2519883002 .
2016-11-22 15:47:06 +01:00
Asger Feldthaus fbb698393d Update third_party/pkg/kernel version
This CL also updates the use of kernel in dart2js, and
updates the VM/kernel status files.

This is a preliminary step to moving kernel into the
SDK repository.

BUG=
R=het@google.com, johnniwinther@google.com, kmillikin@google.com, sigmund@google.com, vegorov@google.com

Committed: 5d66d0e5dc

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

Reverted: d69e048d60
2016-11-22 15:22:20 +01:00
Asger Feldthaus d69e048d60 Revert "Update third_party/pkg/kernel version"
This reverts commit 5d66d0e5dc.

BUG=

Review URL: https://codereview.chromium.org/2514323005 .
2016-11-22 14:35:56 +01:00
Asger Feldthaus 5d66d0e5dc Update third_party/pkg/kernel version
This CL also updates the use of kernel in dart2js, and
updates the VM/kernel status files.

This is a preliminary step to moving kernel into the
SDK repository.

BUG=
R=het@google.com, johnniwinther@google.com, kmillikin@google.com, sigmund@google.com, vegorov@google.com

Review URL: https://codereview.chromium.org/2518023002 .
2016-11-22 13:42:13 +01:00
Erik Ernst 9bf3b95cc5 Enable syntax-only support for generic functions by default, take 2.
Fixed some status entries since the first land-revert of this CL.

This addresses https://github.com/dart-lang/sdk/issues/27501.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2520293002 .
2016-11-22 12:33:43 +01:00
Kevin Millikin 3e969cf241 Remove a dead load and smi untag on all platforms.
BUG=
R=kustermann@google.com, vegorov@google.com

Review URL: https://codereview.chromium.org/2520223003 .
2016-11-22 11:25:43 +01:00
Jennifer Messerly 180107cec3 add test, fixes #27807
this appears to have been already working correctly

R=vsm@google.com

Review URL: https://codereview.chromium.org/2517193004 .
2016-11-21 16:44:16 -08:00
Vijay Menon de9e3a3005 Set auto breakpoint at various errors
Any reason not to do this?  I generally find when framework code wraps these errors, it just complicates finding the original bug.  Better to just trap.

Perhaps should just inline the call to debugger though.  I put in dart.debugger with the thought of making it configurable.

R=jacobr@google.com, jmesserly@google.com

Review URL: https://codereview.chromium.org/2519873004 .
2016-11-21 14:40:46 -08:00
Stephen Adams ed4c2cb457 Build CFG for various JS() foreign methods
BUG=
R=het@google.com

Committed: a897bc3832

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

Reverted:  476ffbda5e
2016-11-21 14:24:32 -08:00
John McCutchan deafdbf978 Re-disable the complex reload test on Windows
BUG=

Review URL: https://codereview.chromium.org/2517333002 .
2016-11-21 14:15:08 -08:00
Konstantin Shcheglov da9fcf3854 Start implementing search support in AnalysisDriver.
Only local variable and label for now.
More local elements and non-local search in following CLs.

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

Review URL: https://codereview.chromium.org/2522503004 .
2016-11-21 13:30:19 -08:00
Jennifer Messerly a4760b2fd1 add test, fixes #27808: void return type can subtype dynamic
this appears to already by implemented

R=vsm@google.com

Review URL: https://codereview.chromium.org/2520043002 .
2016-11-21 13:27:23 -08:00
John McCutchan 94a9061925 Handle kPausePostRequest in C++ debugger api implementation
- Fixes https://github.com/flutter/flutter/issues/6890

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2515403003 .
2016-11-21 13:13:21 -08:00
Regis Crelier 640b5ca80a Enable syntax-only generic methods in the VM by default.
R=hausner@google.com

Review URL: https://codereview.chromium.org/2486943003 .
2016-11-21 12:33:40 -08:00
Paul Berry 227b74cb55 Fix FastUri.resolveUri to handle cases like "/a.dart".
R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/2523483002 .
2016-11-21 12:18:51 -08:00
John McCutchan 047c136063 Attempt to fix complex_reload_test on Windows
BUG=

Review URL: https://codereview.chromium.org/2523503002 .
2016-11-21 12:15:22 -08:00
Konstantin Shcheglov 782a403215 Store index into AnalysisDriverResolvedUnit and return in AnalysisResult.
R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2519143002 .
2016-11-21 12:08:20 -08:00
Konstantin Shcheglov 7b03339140 Regenerate summary format.
TBR

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2516323003 .
2016-11-21 11:39:28 -08:00
pq acafb19468 Update DEPS to pull in linter 0.1.29.
* New `cascade_invocations` lint.
* Expand `await_only_futures` to accept classes that extend or implement `Future`.
* Improve camel case regular expression tests to accept `$`s.
* Fixes to `parameter_assignments` (improved getter handling and an NPE).

BUG=
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2522563003 .
2016-11-21 11:05:05 -08:00
Adam Barth 60b3ac9712 Added a build file for analyzer_cli.
BUG=
R=pquitslund@google.com

Review URL: https://codereview.chromium.org/2492263003 .
2016-11-21 11:01:11 -08:00
Konstantin Shcheglov 869e52e234 Extract BaseAnalysisDriverTest.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2517263002 .
2016-11-21 10:59:52 -08:00
Ryan Macnak d2bdfb1d0a Mark complex_reload_test as failing with app snapshots.
TBR=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2517293002 .
2016-11-21 10:40:16 -08:00
Konstantin Shcheglov e769868325 Issue 27856. Fix for reponding to execution domain requests.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27856

Review URL: https://codereview.chromium.org/2524453002 .
2016-11-21 10:07:09 -08:00
Konstantin Shcheglov 73fccff8ea Make SearchMatch an interface, exclude 'context', move implementation.
Also, mostly drop 'fileStamp' in SourceFileEdit.
Only `-1` is kept when the file is a new one, in other cases it' `0`.
As I can see, IDEA cares only about `-1`.
We don't know modification stamps with the new analysis driver.
But we know content hashes.

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

Review URL: https://codereview.chromium.org/2518903002 .
2016-11-21 10:05:21 -08:00
Konstantin Shcheglov f336731ed9 Add CompilationUnit indexer implementation.
The existing index data structures were copied and adapted to the case
when every unit is indexed separately. Indexing of declarations was
removed - this information is available as unlinked.

Tests were reworked to use AnalysisDriver and made asynchronous.

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

Review URL: https://codereview.chromium.org/2519733002 .
2016-11-21 09:27:53 -08:00
William Hesse 3e78c9bd31 Update test script short reproduction command to not print --packages flag.
Also run dartfmt on test_options.dart

BUG=
R=eernst@google.com

Review URL: https://codereview.chromium.org/2522513002 .
2016-11-21 18:27:11 +01:00
Konstantin Shcheglov 1d54c1e9c0 Use AnalysisDriverUnlinkedUnit as a container for UnlinkedUnit and referenced names.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2520593003 .
2016-11-21 09:07:01 -08:00
pq dbb3cd590a Add front_end sources to the SDK (#27857).
R=brianwilkerson@google.com, whesse@google.com

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

Fixes: https://github.com/dart-lang/sdk/issues/27857
2016-11-21 08:57:03 -08:00
Konstantin Shcheglov 0e4e9ed8aa Compute and flush only affected transitive signatures in FileState.
When we keep these signatures, recovery time for change/undo improves
for analyzer + analysis_server from 700 ms to 360 ms.

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

Review URL: https://codereview.chromium.org/2517513005 .
2016-11-21 08:53:16 -08:00
Todd Turnidge 2d22e85cf0 Revert "Revert "JumpToFrame refactor"" + Fix
This reverts commit 1cdb3d2155.

I have also added in a fix for the lazy-deopt in exception handler case.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2506503002 .
2016-11-21 08:49:18 -08:00
Konstantin Shcheglov 2301e67340 Put 'finer grained invalidation' back behind the flag.
Unfortunately we see exceptions in the wild, both internally and
externally :-(

For example https://github.com/dart-lang/sdk/issues/27770

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

Review URL: https://codereview.chromium.org/2518843002 .
2016-11-21 08:33:46 -08:00
Martin Kustermann d41ea8ca6a VM: [Kernel] Fix bad-merge after rebasing
Review URL: https://codereview.chromium.org/2513393005 .
2016-11-21 17:31:20 +01:00
Martin Kustermann c3895181a7 VM: [Kernel] Cherry-pick from dart-lang/kernel_sdk
This is part of the following CL:

Roll Kernel to fix an async bug.

There was a bug in the translation of await in finally when there
was a return in the try block.

The new async/async* translation revealed a bug in the scoping of
labels.  Labels from enclosing functions were visible in nested
functions.  That bug is fixed here.

Review URL: https://chromereviews.googleplex.com/536237014 .

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2515323002 .
2016-11-21 16:49:40 +01:00
Martin Kustermann 27aeb31a8d VM: [Kernel] Cherry-pick from dart-lang/kernel_sdk
Do not eagerly finalize types in procedures.

Translate types in procedures without finalizing them.  This change
supercedes https://chromereviews.googleplex.com/516397015/.

Review URL: https://chromereviews.googleplex.com/521117013 .

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2521603002 .
2016-11-21 16:43:53 +01:00
Martin Kustermann 63af3f56ee VM: [Kernel] Cherry-pick from dart-lang/kernel_sdk
Fix a trio of issues in type finalization.

1. We were using is_type_finalized to detect classes that had already been
   initialized by DilReader::ReadPreliminaryClass.  This state is not
   guaranteed by this function, however is_cycle_free is.

2. In the VM, classes that were created type finalized were not marked as
   cycle free because finalization did not consider them so cycle-freeness
   didn't matter.  We would therefore try to initialize these classes with
   DilReader::ReadPreliminaryClass and mutate types in them.  This causes
   them to have unfinalized types but still have is_type_finalized true.

3. Types in top-level procedures were not necessarily finalized.  A simple
   way to achieve this is to finalize each library's top-level class.

Review URL: https://chromereviews.googleplex.com/520437013 .

R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2514373002 .
2016-11-21 16:38:30 +01:00
John McCutchan af2b356fb3 Add some debug printing to complex_reload_test and enable on Windows bots again
BUG=

Review URL: https://codereview.chromium.org/2518963003 .
2016-11-21 06:53:42 -08:00
Vyacheslav Egorov 46fcf14475 VM: [Kernel] Don't use Parser::ParseStaticFieldInitializer for fields that come from Kernel.
Introduce separate function kernel::ParseStaticFieldInitializer to handle these fields.

R=kustermann@google.com
BUG=

Review URL: https://codereview.chromium.org/2515763002 .
2016-11-21 15:53:00 +01:00
William Hesse dbf8d06eab Update status for hello_fuchsia test on dartium.
BUG=https://github.com/dart-lang/sdk/issues/27867
R=sortie@google.com

Review URL: https://codereview.chromium.org/2517113003 .
2016-11-21 14:14:24 +01:00
Jens Johansen 63e9c7641b Merge of source position information from kernel-sdk.
I.e. use offsets (on some nodes) in the dill file to
get stacktraces with line- and column numbers.

"sdk" version of "kernel-sdk"s
https://chromereviews.googleplex.com/520617013/

R=kmillikin@google.com

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

Committed: 6fd3a42edb
2016-11-21 14:13:46 +01:00
Asger Feldthaus f28c1276ee [kernel] Bump kernel's pubspec version to 0.2.0
BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2515273002 .
2016-11-21 13:08:17 +01:00
Jens Johansen 1056c562aa Revert "Merge of source position information from kernel-sdk."
The commit broke 2 tests:
vm/cc/IsolateReload_TypeIdentityGeneric
vm/cc/SourceReport_Coverage_AllFunctions_ForceCompile

This reverts commit 6fd3a42edb.

BUG=

Review URL: https://codereview.chromium.org/2517953002 .
2016-11-21 11:16:29 +01:00
Johnni Winther 8da63799a0 Compute [WorldImpact] for main method as entrypoint
R=het@google.com

Review URL: https://codereview.chromium.org/2511403002 .
2016-11-21 10:59:03 +01:00
Martin Kustermann 8cb83ecde0 VM: [Kernel] Update status file for debug mode after merge
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2518983002 .
2016-11-21 10:51:07 +01:00
Asger Feldthaus c62d774c2f [kernel] Upgrade analyzer version to 0.29.0
BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2517113002 .
2016-11-21 10:24:29 +01:00