Stephen Adams
2fc1ca0b6c
DeferredTask.isDeferredClass Element->Entity
...
TBR=sigmund@google.com
BUG=
Review-Url: https://codereview.chromium.org/2995253002 .
2017-08-18 11:00:49 -07:00
Johnni Winther
9b87beb184
Avoid crash for type variables in mixed in fields.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2994383003 .
2017-08-18 15:33:46 +02:00
Stephen Adams
8499c8f12e
dart2js kernel: minimal recognition of external native methods
...
TBR=sigmund@google.com
BUG=
Review-Url: https://codereview.chromium.org/3000123002 .
2017-08-17 21:39:14 -07:00
Johnni Winther
7c77f2db48
Various redemptions
...
R=efortuna@google.com
Committed: https://github.com/dart-lang/sdk/commit/49b064da419f6eb141c980aec15296a4bb517956
Reverted: https://github.com/dart-lang/sdk/commit/a0110b32f33462be85db64cbda2024ee8912a968
Review-Url: https://codereview.chromium.org/2994333002 .
2017-08-17 15:54:37 +02:00
Johnni Winther
a0110b32f3
Revert "Various redemptions"
...
This reverts commit 49b064da41 .
Review-Url: https://codereview.chromium.org/3001823002 .
2017-08-17 10:52:38 +02:00
Johnni Winther
49b064da41
Various redemptions
...
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2994333002 .
2017-08-17 09:46:20 +02:00
Emily Fortuna
09b215a2fd
Fix the local variable lookup in the locals handler.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2994363002 .
2017-08-16 16:08:21 -07:00
Dan Rubel
aefd73b8d3
new handleInvalidTopLevelDeclaration event in fasta parser
...
This adds a new event for better fasta parser recovery
when the parser detects an invalid character at the top level.
R=ahe@google.com
Review-Url: https://codereview.chromium.org/2985703002 .
2017-08-16 09:36:24 -04:00
Johnni Winther
6c20635364
Implement .getCallType
...
+ a few more pending TODOs
R=sigmund@google.com
Committed: https://github.com/dart-lang/sdk/commit/8010a919587d085a7186738e459b81ca85fa90ca
Reverted: https://github.com/dart-lang/sdk/commit/f679eb271ab8e9862965d7580010515be7fb1f8b
Review-Url: https://codereview.chromium.org/3000763002 .
2017-08-16 14:39:22 +02:00
Johnni Winther
f679eb271a
Revert "Implement .getCallType" and "Update status"
...
This reverts commits 8010a91958 and f66024f5ef .
Review-Url: https://codereview.chromium.org/2997033002 .
2017-08-16 11:40:28 +02:00
Johnni Winther
8010a91958
Implement .getCallType
...
+ a few more pending TODOs
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/3000763002 .
2017-08-16 09:48:43 +02:00
Johnni Winther
9ab9598918
Add more tested features to closure_test
...
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2999003002 .
2017-08-16 09:30:29 +02:00
Sigmund Cherem
10dce08aed
call _getImports only once: on a large app this was about 5s extra.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/3000003002 .
2017-08-15 20:27:28 -07:00
Stephen Adams
fd600fd334
Implement methods in KernelClosedWorldMixin
...
R=sra@google.com
Review-Url: https://codereview.chromium.org/2997843002 .
2017-08-15 14:18:46 -07:00
Peter von der Ahé
07cf2557ed
Implement type variables on local function declarations and expressions.
...
Closes https://github.com/dart-lang/sdk/issues/29798
R=danrubel@google.com
Review-Url: https://codereview.chromium.org/2994973002 .
2017-08-15 11:21:01 +02:00
Johnni Winther
c4f369f8cf
Remove stale comments after CL 2997593002
...
R=sra@google.com
Review-Url: https://codereview.chromium.org/2999683002 .
2017-08-15 09:18:59 +02:00
Stephen Adams
82d47127c4
dart2js deferred_load: Move closure to local function to reduce indentation
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2994243002 .
2017-08-14 18:19:57 -07:00
Sigmund Cherem
9c4b1991b4
Add more diagnostics to the deferred loading implementation.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2998943002 .
2017-08-14 13:37:21 -07:00
Sigmund Cherem
cf43d4603c
Add dependencies to type variables used in the super type declaration, but do
...
not do so recursively (the enclosing fuction is supposed to only record direct,
and not recursive dependencies).
R=sra@google.com
Review-Url: https://codereview.chromium.org/3000843002 .
2017-08-11 15:11:14 -07:00
Sigmund Cherem
f1e34ffd11
Fix deferred bug: when type argument is never instantiated
...
R=johnniwinther@google.com , sra@google.com
Review-Url: https://codereview.chromium.org/2995763003 .
2017-08-11 13:17:30 -07:00
Johnni Winther
4d47a0c2de
Add stub versions of KernelInferrerEngine and friends
...
+ use BackendStrategy to select inference engine.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2999723002 .
2017-08-10 12:02:22 +02:00
Johnni Winther
73d99c5645
Support typedef type literals
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2996723002 .
2017-08-10 10:30:32 +02:00
Johnni Winther
fd81ba4569
Support jsinterop/world_test from .dill
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2995643002 .
2017-08-10 10:13:23 +02:00
Sigmund Cherem
5aae972f64
Fix broken test: closed_world2 test still uses rasta
...
R=sra@google.com
Review-Url: https://codereview.chromium.org/2994813002 .
2017-08-09 16:22:22 -07:00
Sigmund Cherem
bcaff5e269
Filter unreachable libraries in kernel loader
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2990233003 .
2017-08-09 11:01:02 -07:00
Emily Fortuna
3aee4694ab
Added ThisVariable in scoping and the captured scope of initialized fields.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2998673002 .
2017-08-09 09:09:38 -07:00
Johnni Winther
c8ae9ba422
Handle js interop members in impact computation.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2998543002 .
2017-08-09 10:40:28 +02:00
Johnni Winther
d1966978d1
Use analyzeOnly in kernel/impact_test.
...
This is needed to ensure correct handling of native data in impact computation.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2993153002 .
2017-08-09 10:25:08 +02:00
Johnni Winther
67daf4a303
Extract sorting method from AstInferrerEngine.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2999513003 .
2017-08-09 10:15:56 +02:00
Johnni Winther
3ae6a43dbd
Move most code from AstInferrerEngine to InferrerEngineImpl
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2993713002 .
2017-08-09 10:03:12 +02:00
Brian Wilkerson
01b024c006
Replace comment style generic method syntax with real syntax
...
Review-Url: https://codereview.chromium.org/2997593002 .
2017-08-08 10:34:09 -07:00
Stephen Adams
84b615df3d
Scrub all non-identifier characters from JavaScript class names
...
Class names from kernel contain "&", "#", "^" etc
BUG=
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2999473002 .
2017-08-07 13:12:59 -07:00
Sigmund Cherem
b48584d3d0
Switch FE to use the libraries.json format.
...
This CL:
* introduces the Dart API to operate over libraries specifications and describes
the format we intend to use (see libraries_spec.dart)
* implements serialization/deserialization for this API
* switches over the front_end to use these APIs
* public options accept a URI to the JSON file and no longer
accept a `dartLibraries` map
* internal code uses the LibrariesSpecification API
* switches other dependencies on these APIs (resynthesizer_test and patch_sdk.dart)
This is the first step in migrating over to use the libraries.json format and
eventually remove the patched_sdk step. In particular, some of the next steps
include:
* add a build step to generate .json files from .yaml files
* add a libraries.yaml file for the sdk
* split the patched_sdk step in two:
* patching files
* generating .dill files
* add any missing support for patch-files in fasta
* finally remove the patching files step, and only have a build step for generating
.dill files
BUG=
R=ahe@google.com , paulberry@google.com , scheglov@google.com
Committed: https://github.com/dart-lang/sdk/commit/abf2d23af2315fae6dc688741147ef677ec34835
Review-Url: https://codereview.chromium.org/2986303003 .
2017-08-07 08:41:28 -07:00
Peter von der Ahé
98422979ac
Parse type variables of local functions before return type.
...
R=danrubel@google.com
Review-Url: https://codereview.chromium.org/2985673002 .
2017-08-07 13:46:47 +02:00
Emily Fortuna
15fdc7ceb0
Handful of closure issues.
...
Implement forEachParameter in closures, deal with not all closures being localFunctions, and point to the constructor head instead of body when calling "getConstructorBody"
This reverts commit b74f53aa74 .
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2999453002 .
2017-08-04 13:31:14 -07:00
Johnni Winther
5fe6282ec0
Reformat untouched files.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2990223002 .
2017-08-04 14:52:58 +02:00
Johnni Winther
93d0a55534
Split ast based parts from InferrerEngineImpl
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2991313002 .
2017-08-04 09:57:33 +02:00
Emily Fortuna
4929f282b3
Make minification Entity-friendly.
...
BUG=
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2996463002 .
2017-08-03 19:19:21 -07:00
Emily Fortuna
b74f53aa74
Revert "Updated test status after fixing closure call generation."
...
This reverts commit 6839f6f79f .
BUG=
Review-Url: https://codereview.chromium.org/2986383003 .
2017-08-03 12:06:01 -07:00
Emily Fortuna
6839f6f79f
Updated test status after fixing closure call generation.
...
BUG=
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2993603002 .
2017-08-03 10:45:17 -07:00
Johnni Winther
476b1cdd44
Support forEachClassMember on closure classes
...
+ split MemberData into MemberData interface and MemberDataImpl node based implementation and add ClosureMemberData objects
+ use SourceSpan instead of ir.Location for Class/MemberDefinition.location
+ register StaticUse.callMethod instead of StaticUse.closure
+ use DartType instead of ResolutionDartType in metadata_collector
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2992863002 .
2017-08-03 10:58:55 +02:00
Stephen Adams
4f7cfa9a97
closure fields must set isStatic
...
BUG=
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2994503002 .
2017-08-02 14:46:23 -07:00
Johnni Winther
39cc1ab5ef
Implement hasConcreteMatch
...
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2987233002 .
2017-08-02 09:44:30 +02:00
Emily Fortuna
c91ce4dcb3
Add boxed fields in closure classes.
...
BUG=
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2992763002 .
2017-08-01 11:27:35 -07:00
Johnni Winther
f19ee6c9bf
Add CallType to DynamicCallSiteTypeInformation
...
- to avoid using that type of the call node to determine how type masks
are stored in the GlobalTypeInferenceElementData.
This prepares for using arbitrary values (ast or ir nodes) as keys in
GlobalTypeInferenceElementData.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2993463002 .
2017-08-01 09:31:51 +02:00
Sigmund Cherem
e1bccfc857
FE: let targets override whether imports to internal platform
...
libraries (dart:_foo) are allowed.
Override this in Dart2jsTarget to allow it in the dart2js_native test suite.
R=sra@google.com
Review-Url: https://codereview.chromium.org/2992073002 .
2017-07-31 15:23:12 -07:00
Johnni Winther
7873cced2c
Compute closure model during resolution
...
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2979373003 .
2017-07-31 09:41:07 +02:00
Emily Fortuna
a1f911c599
Add Closure call method to created closure class.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2991903002 .
2017-07-30 14:08:38 -07:00
Emily Fortuna
a5ea160a44
Make the ClosedWorld build the closure class on the kernel side.
...
This was discussed with Johnni to avoid having to add the class index after construction of the KernelClosureClass.
BUG=
R=johnniwinther@google.com , sra@google.com
Review-Url: https://codereview.chromium.org/2984263002 .
2017-07-30 13:00:48 -07:00
Sigmund Cherem
d0f218fa95
dart2js: throw when receiving an internal-problem error from the FE.
...
BUG=
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2991003002 .
2017-07-28 12:28:14 -07:00