Asger Feldthaus
47bfb02f36
Fix a bug in kernel class hierarchy.
...
Abstract members would sometimes be seen at possible dispatch targets.
BUG=
R=kmillikin@google.com
Review URL: https://codereview.chromium.org/2542143003 .
2016-12-02 13:32:45 +01:00
Jennifer Messerly
7a1b6e75b3
restrict generic function type subtyping
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/2540903003 .
2016-12-01 19:24:15 -08:00
Ryan Macnak
1ebeb79942
Remove runtime 'dart_app' as it became identical to 'vm'.
...
Merge compiler 'dart2app' and 'dart2appjit' and rename to 'app_jit' since they came to mean the same thing.
Update status files to reflect these changes.
R=asiva@google.com
Review URL: https://codereview.chromium.org/2541533004 .
2016-12-01 16:47:33 -08:00
Vijay Menon
201c5b9297
Fix runtime strong mode error in ListMixin
...
R=jacobr@google.com
Review URL: https://codereview.chromium.org/2544163002 .
2016-12-01 15:41:46 -08:00
Vijay Menon
ec81359fc0
Fixes #27960
...
For "m.call(..)", the function is "m".
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2539033004 .
2016-12-01 15:38:46 -08:00
Paul Berry
66bc760621
Analyze dev_compiler on the analyzer bot.
...
This would have allowed me to catch the failure that forced
1d028eed8d
to be reverted.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2547683002 .
2016-12-01 13:51:01 -08:00
Konstantin Shcheglov
038cd32326
Compute exported top-level declarations.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org/2542883003 .
2016-12-01 13:49:00 -08:00
Alan Knight
1ff09b431f
Keep only a single active stack trace, enables traces for thrown non-exceptions
...
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2545923002 .
2016-12-01 13:41:08 -08:00
Konstantin Shcheglov
4d7c536c2f
Return only public top-level declarations.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org/2541793005 .
2016-12-01 13:32:48 -08:00
Konstantin Shcheglov
1e5fc38884
Compute top-level declarations in a file.
...
This is the first step to implement 'Add Import' Quick Fix with the new
analysis driver.
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org/2545753003 .
2016-12-01 11:43:15 -08:00
Paul Berry
c4f50f53cb
Remove old AST factory constructors from analyzer.
...
This reapplies the remainder of
1d028eed8d
(which was reverted due to
conflicts with dev_compiler), since dev_compiler has now been fixed to
use analyzer's new astFactory.
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org/2549613002 .
2016-12-01 11:17:10 -08:00
Paul Berry
0c31815f1c
Transition analyzer and analysis_server to new astFactory.
...
This is the same as 1d028eed8d
(which
was reverted) except that it doesn't remove the old AST factory
constructors (which broke dev_compiler). The removal of old AST
factory constructors will be done in a follow-up CL so that if it
unexpectedly breaks any other clients we will be able to revert it
without reverting this CL.
R=scheglov@google.com
Review URL: https://codereview.chromium.org/2536373008 .
2016-12-01 10:56:21 -08:00
Paul Berry
2d289c2df6
Modify dev_compiler to use analyzer's new AstFactory class.
...
The old mechanism for creating analyzer ASTs (factory constructors on
the interface classes) will be going away in analyzer 0.30.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2545843002 .
2016-12-01 10:37:22 -08:00
Konstantin Shcheglov
2368a59d60
Add libraries in corrections using SourceInfo instance of LibraryElement.
...
We are not going to have LibraryElement(s) for the new analysis driver.
The current approach: get known library sources, compute their elements,
import these elements does not work well when there is no analysis cache.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2532393008 .
2016-12-01 10:22:48 -08:00
Stephen Adams
f62009a3aa
dart2js-kernel: Handle some more 'is' cases
...
Adds type variables and function types.
Still missing parameterized interface types.
R=sigmund@google.com
Review URL: https://codereview.chromium.org/2542783002 .
2016-12-01 09:28:02 -08:00
Konstantin Shcheglov
53b04631bc
Move running tasks for fixed time to the scheduler.
...
This improves recovery time for change/undo from 300 ms to 200 ms for
analyzer + analysis_server + front_end.
_FilesReferencingNameTask does not degrade in any noticeble way, it is
still about 0-1 ms for this code base, as compared to 60 ms without
fixing runing time in the task or the scheduler.
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org/2540403002 .
2016-12-01 09:15:36 -08:00
Konstantin Shcheglov
aaaeee5bc4
Make MemoryResourceProvider.convertPath() work with partially posix paths.
...
So that 'C:\some\path/to/file.dart' -> 'C:\some\path\to\file.dart'.
R=paulberry@google.com , brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2542793003 .
2016-12-01 08:39:44 -08:00
Vijay Menon
106c623a9f
Some fixes for lazy JS types
...
R=jacobr@google.com
Review URL: https://codereview.chromium.org/2542833002 .
2016-12-01 07:44:38 -08:00
Paul Berry
cb2fef0c45
Add a front end perf test that computes unlinked summaries.
...
R=sigmund@google.com
Review URL: https://codereview.chromium.org/2544643002 .
2016-12-01 05:46:47 -08:00
Johnni Winther
27afcc4296
Remove EnqueuerImpl.processInstantiatedClassMembers
...
R=het@google.com
Review URL: https://codereview.chromium.org/2539043002 .
2016-12-01 11:10:36 +01:00
Johnni Winther
489199eff1
Disallow null
in spanFromSpannable.
...
Closes #27938
R=sigmund@google.com
Review URL: https://codereview.chromium.org/2537303004 .
2016-12-01 10:53:56 +01:00
Johnni Winther
cffc20cdf5
Update dart2js/pubspec
...
R=het@google.com
Review URL: https://codereview.chromium.org/2540103002 .
2016-12-01 10:44:46 +01:00
Bob Nystrom
aa749dbd8d
Sprinkle some types on the SDK like the static typing fairy.
...
When I'm looking at the dynamic call profiles of an internal app test,
I see a bunch coming from the SDK itself. In fact, the top five most
common dynamic call sites are in the SDK.
This fixes four of them. (The fifth is in runUnary() in Zone, and I
don't think can be made typed yet.)
R=vsm@google.com
Review URL: https://codereview.chromium.org/2542723003 .
2016-11-30 17:04:54 -08:00
Stephen Adams
ece7725d90
dart2js-kernel: Emit error trap for unimplemented features
...
The test will fail with an error like the following, rather than proceed with an incorrect null value.
R=efortuna@google.com
Review URL: https://codereview.chromium.org/2540363002 .
TypeError: Cannot read property 'Unhandled ir.FunctionExpression (dynamic x) → dynamic => x' of null
2016-11-30 16:52:07 -08:00
Vijay Menon
b8d3758dcd
Revert "Transition analyzer and analysis_server to new astFactory; remove old AST factory methods."
...
This reverts commit 1d028eed8d
.
This was breaking DDC.
TBR=paulberry@google.com
Review URL: https://codereview.chromium.org/2542753002 .
2016-11-30 14:57:49 -08:00
Konstantin Shcheglov
c3e2c45cb3
Extract 'computeMissingOverrides' in ErrorVerifier.
...
So, we can reuse it in Quick Fixes.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2541153002 .
2016-11-30 14:04:43 -08:00
Konstantin Shcheglov
a0fa2083d3
Fix for constructor search.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2539263002 .
2016-11-30 13:59:56 -08:00
Stephen Adams
dfd38a0463
Use precomputed constant for determining if static is lazy-init
...
R=sigmund@google.com
Review URL: https://codereview.chromium.org/2541753002 .
2016-11-30 13:31:56 -08:00
Paul Berry
1d028eed8d
Transition analyzer and analysis_server to new astFactory; remove old AST factory methods.
...
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org/2539243002 .
2016-11-30 12:28:51 -08:00
Dan Rubel
aff6b796f3
update analyzer cli to support include directive in analysis options file
...
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org/2541933002 .
2016-11-30 15:16:55 -05:00
Konstantin Shcheglov
666d4efce2
Issue 27903. Use shared logic for computing new method location.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27903
Review URL: https://codereview.chromium.org/2538143003 .
2016-11-30 12:15:07 -08:00
Konstantin Shcheglov
fa0b825269
Search for ImportElement(s).
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2542583003 .
2016-11-30 12:12:22 -08:00
Konstantin Shcheglov
4686d364bb
Add a new Analysis Server option '--new-analysis-driver-log'.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2543713002 .
2016-11-30 12:10:06 -08:00
Konstantin Shcheglov
2537784f92
Stop using Element.unit directly.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2541873002 .
2016-11-30 09:37:55 -08:00
Konstantin Shcheglov
9a9e037e61
Show priority files on the status page.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2542673002 .
2016-11-30 09:25:31 -08:00
Paul Berry
0cf5215560
Update analyzer pubspec to reflect dependency on collection.
...
The dependency was added in 27a3275495
.
Note that analyzer previously had a transitive dependency on
collection.
R=scheglov@google.com
Review URL: https://codereview.chromium.org/2536373004 .
2016-11-30 09:24:02 -08:00
William Hesse
10e535a5ee
Update status for dart_style package and dom/shadowroot co19 windows.
...
BUG=https://github.com/dart-lang/dart_style/issues/562
TBR=rnystrom@google.com
Review URL: https://codereview.chromium.org/2543463003 .
2016-11-30 16:52:17 +01:00
William Hesse
35904c4f7e
Update package building status for pkg/kernel
...
BUG=https://github.com/dart-lang/sdk/issues/27937
R=asgerf@google.com
Review URL: https://codereview.chromium.org/2543473003 .
2016-11-30 15:18:10 +01:00
Johnni Winther
33303ffea5
Resolve type arguments to generic methods.
...
R=eernst@google.com
Review URL: https://codereview.chromium.org/2535373003 .
2016-11-30 12:44:29 +01:00
Kevin Millikin
bda2c1d534
Update kernel/binary.md.
...
Update a few things that are out of date and consistently use List for
arrays preceded by a UInt length.
BUG=
R=asgerf@google.com
Review URL: https://codereview.chromium.org/2539063002 .
2016-11-30 12:26:03 +01:00
William Hesse
de0c7acfd7
Update status for flaky Windows tests
...
BUG=https://github.com/dart-lang/sdk/issues/27935
R=eernst@google.com
Review URL: https://codereview.chromium.org/2539033002 .
2016-11-30 11:41:17 +01:00
Asger Feldthaus
709c1e0b75
Store library paths relative to a given application root folder.
...
In kernel, library import URIs now support an "app" scheme as an
alternative to the "file" scheme, representing a path relative to
the application root.
dartk takes an --app-root flag giving the application root. If none
is given, file URIs are used instead.
The intention is that kernel binaries should not carry irrelevant
path information, such as the path to the home directory of the
user who compiled a given file.
It is not the intention that end-users should see an app URI.
Import paths are currently not shown to users at all, and if we need
to do this, they should be translated to file paths first.
In theory we could stick to file URIs with relative paths, but the Uri
class from dart:core makes this difficult, as certain operations on it
assume that file paths should be absolute.
Source mapping URIs are not yet affected by this change.
R=kmillikin@google.com
Committed: 60adb852ad
Review URL: https://codereview.chromium.org/2532053005 .
Reverted: bb540416f2
2016-11-30 10:39:48 +01:00
Johnni Winther
40bf5d321e
Handle 'dynamic' as type argument in generic calls.
...
R=eernst@google.com
Review URL: https://codereview.chromium.org/2541473002 .
2016-11-30 09:29:35 +01:00
Johnni Winther
44bdc75827
Support patched generic methods.
...
R=sigmund@google.com
Review URL: https://codereview.chromium.org/2535213003 .
2016-11-30 09:20:42 +01:00
Johnni Winther
3af747810f
More refactoring of enqueuers
...
- refactor enqueuer/strategy/impact-visitor relations
- make helper methods/fields private
R=het@google.com
Review URL: https://codereview.chromium.org/2535143003 .
2016-11-30 09:12:08 +01:00
Asger Feldthaus
440813c67b
Check that invocations have well-formed targets in kernel verifier.
...
This also fixes some issues in the frontend and transformers that
generated calls without the correct number of type arguments.
BUG=
R=kmillikin@google.com
Review URL: https://codereview.chromium.org/2533793005 .
2016-11-30 08:24:03 +01:00
Asger Feldthaus
ddc6af7556
Update kernel testcase baseline.
...
BUG=
R=kmillikin@google.com
Review URL: https://codereview.chromium.org/2541523002 .
2016-11-30 08:18:55 +01:00
Konstantin Shcheglov
0f9a78ff53
Make 'Inline Method' refactoring work with the new analysis driver.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/2540793003 .
2016-11-29 17:12:46 -08:00
Alan Knight
667fc8dbe9
Make the dart:developer library available in DDC so debugger statement works
...
BUG=
R=vsm@google.com
Review URL: https://codereview.chromium.org/2534263002 .
2016-11-29 16:13:45 -08:00
Stephen Adams
9871523b61
Recognise x.==(null) and generate HIdentical
...
This handles many of the kernel null-aware expansions, which do not map back to Ast nodes.
R=efortuna@google.com , sigmund@google.com
Review URL: https://codereview.chromium.org/2535323002 .
2016-11-29 15:05:52 -08:00