Commit Graph

533 Commits

Author SHA1 Message Date
Emily Fortuna 942963fa2e Add TypeVariable analysis in closure conversion.
Bug:
Change-Id: I4155ceb042295934cc3c9125d275dc5f034675dd
Reviewed-on: https://dart-review.googlesource.com/6025
Commit-Queue: Emily Fortuna <efortuna@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2017-09-18 20:26:33 +00:00
Stephen Adams 69b50ed990 dart2js-kernel: Fix bug with finding optional parameter default values
Change-Id: Iefa443318124838aeafa9998e08d1143c1976dc4
Reviewed-on: https://dart-review.googlesource.com/6346
Reviewed-by: Emily Fortuna <efortuna@google.com>
2017-09-15 23:54:22 +00:00
Stephen Adams dccce129e4 dart2js-kernel: Don't crash on non-constant constants
Change-Id: I7919ccdcd72f6653d2baa3c25c5d18df982ccda4
Reviewed-on: https://dart-review.googlesource.com/5941
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2017-09-15 21:44:24 +00:00
Johnni Winther 5aa3259698 Handle break to labeled statement
No tests yet. Kernel doesn't support file-offsets on labeled statement.

Change-Id: I5dcfcc21433aec5ad0be26bfef5bbca0b609ba35
Reviewed-on: https://dart-review.googlesource.com/5161
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2017-09-14 08:59:11 +00:00
Stephen Adams 0bfad6483e de-dup dart2js kernel status files
TBR=sigmund@google.com

Bug:
Change-Id: I41d0bfdad38f0ab65649cd9d69e82097e9877fe2
Reviewed-on: https://dart-review.googlesource.com/5483
Reviewed-by: Stephen Adams <sra@google.com>
2017-09-13 17:13:03 +00:00
Emily Fortuna 553e4a0967 Don't make field entities for variables in boxes.
Bug:
Change-Id: Ie31e88438da93a1d54c8c688a5ccd212bb81bb28
Reviewed-on: https://dart-review.googlesource.com/4241
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Emily Fortuna <efortuna@google.com>
2017-09-11 23:32:51 +00:00
Harry Terkelsen d1a34a2c7f add type variables for all classes in the hierarchy for a constructor
Change-Id: I4c8df08e5893297c0d662bec469c8e06992369cf
Reviewed-on: https://dart-review.googlesource.com/4605
Commit-Queue: Harry Terkelsen <het@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2017-09-08 23:19:20 +00:00
Harry Terkelsen 607e3ecd69 Fixed the test by checking if typedefs are malformed.
This prevents the getFunctionTypeOfTypedef call from failing in
checked mode by returning a MalformedType.

Revert "Revert "Add types referenced in is-checks to the class hierarchy""

This reverts commit e0a4839c3e.

Change-Id: I1e94ba5ba345c36e04e54da6e8c0580a21836838
Reviewed-on: https://dart-review.googlesource.com/3422
Reviewed-by: Harry Terkelsen <het@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2017-09-07 19:56:26 +00:00
Florian Loitsch 914fc10173 disable failing tests.
Change-Id: Ie3f54ba7ddd963ff9effd7fcd367e326bf3d8296
Reviewed-on: https://dart-review.googlesource.com/3521
Reviewed-by: William Hesse <whesse@google.com>
2017-09-06 16:13:13 +00:00
Harry Terkelsen e0a4839c3e Revert "Add types referenced in is-checks to the class hierarchy"
This reverts commit a577b303f0.

Bug:
Change-Id: I8a02bf3ef559de8af62aef9d4b7e840975bb5b47
Reviewed-on: https://dart-review.googlesource.com/3343
Reviewed-by: Harry Terkelsen <het@google.com>
2017-09-05 23:13:29 +00:00
Harry Terkelsen a577b303f0 Add types referenced in is-checks to the class hierarchy
Change-Id: Ia250501052efc051779f75f9d582c1ceaa2c78f4
Reviewed-on: https://dart-review.googlesource.com/3384
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2017-09-05 21:53:35 +00:00
Emily Fortuna 3aa574d95d Add ability to look up type parameters that are associated with ClassEntities with the element environment.
This is the reapplication of this already approved CL: https://codereview.chromium.org/3010943002/ but now with Gerrit.

Bug:
Change-Id: I4c2204d1f76bdec4bcad993c8a11b5f003d38d77
Reviewed-on: https://dart-review.googlesource.com/3341
Reviewed-by: Stephen Adams <sra@google.com>
2017-09-05 19:36:55 +00:00
Harry Terkelsen bb312921ac Revert "Add types referenced in is-checks to the class hierarchy"
This reverts commit c8d2478747.

BUG=

Review-Url: https://codereview.chromium.org/3012733002 .
2017-09-01 15:27:28 -07:00
Harry Terkelsen c8d2478747 Add types referenced in is-checks to the class hierarchy
R=johnniwinther@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/3011793002 .
2017-09-01 15:02:59 -07:00
Emily Fortuna b1dd578da7 Don't try to add abstract methods to the codegen work queue to generate bodies
BUG=
R=johnniwinther@google.com, sigmund@google.com

Review-Url: https://codereview.chromium.org/3012683002 .
2017-09-01 10:21:03 -07:00
Johnni Winther 374df045e7 Handle forwarding constructors to unnamed mixin applications
+ handle instance fields from mixins
+ change class sorting to put unnamed mixin applications last

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3005823002 .
2017-09-01 19:07:02 +02:00
Janice Collins 51cc9689b3 Remove corelib and corelib_strong and migrate last two remaining tests.
This includes a migration of linked_hash_map_from_iterable_test and
stacktrace_current_test, which were migrated without changes.

BUG=
R=rnystrom@google.com, whesse@google.com

Review-Url: https://codereview.chromium.org/3004073002 .
2017-09-01 08:11:15 -07:00
Emily Fortuna 98e36f719e Add boxing for modified variables
BUG=
R=sra@google.com

Review-Url: https://codereview.chromium.org/3007743002 .
2017-08-29 16:27:28 -07:00
Johnni Winther 1fc47782e9 Update --dart2js-with-kernel status
Review-Url: https://codereview.chromium.org/3006773002 .
2017-08-29 11:39:41 +02:00
Alexander Aprelev 7cbb96c199 Wholesale update tests status in attempt to make (fyi) dartkp buildbots green.
Buildbots are here: https://build.chromium.org/p/client.dart.fyi/console.

BUG=
R=asiva@google.com

Review-Url: https://codereview.chromium.org/3000423002 .
2017-08-28 18:32:21 -07:00
Emily Fortuna 63754bba71 Add more tests for closures and change closure indexing to be by FunctionExpression or FunctionDeclaration rather than FunctionNode.
BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3003963002 .
2017-08-28 14:24:58 -07:00
Jens Johansen 173b1b69fa Mark pcre_test slow in dart2js_with_kernel too
BUG=

Review-Url: https://codereview.chromium.org/3008683002 .
2017-08-28 11:02:31 +02:00
Jens Johansen 6a2d5c2ba2 Update status for list_concurrent_modify_test with dart2js kernel
BUG=

Review-Url: https://codereview.chromium.org/3011483002 .
2017-08-28 09:08:40 +02:00
Jennifer Messerly 087c5c6a81 fix list_test for strong mode, and fix DDC List constructors
R=vsm@google.com

Review-Url: https://codereview.chromium.org/3009623002 .
2017-08-25 18:32:43 -07:00
Jennifer Messerly d0072fa73f Fix the return type of String.split in DDC to be correct
It wasn't actually a List<String>, so it could fail a strong mode cast, and also permitted non-Strings to be added.

R=leafp@google.com

Review-Url: https://codereview.chromium.org/3005533002 .
2017-08-25 11:24:54 -07:00
Vyacheslav Egorov 7d5231796e [VM, Precompiler] Support obfuscation of the symbolic information in precompiler
Obfuscation is controlled by obfuscate flag in Dart_IsolateFlags.

Obfuscation of identifiers is performed during script tokenization - when TokenStream is generated from the source. All kIDENT and kINTERPOL_VAR tokens are renamed consistently using a persistent obfuscation map stored in ObjectStore::obfuscation_map.

Some identifiers (pseudo-keywords, arithmetic operators, builtin recognized methods and entry-points) are not renamed to keep name based lookups from breaking. All other identifiers are renamed.

Constant instances of Symbol-s (both created via literal syntax #ident and using constant constructor const Symbol("ident")) are renamed consistently with corresponding identifiers.

Script urls and Library urls and names are also obfuscated.

Obfuscation map can be dumped as a JSON array at the end of precompilation using Dart_GetObfuscationMap API.

BUG=https://github.com/dart-lang/sdk/issues/30524
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/3003583002 .
2017-08-25 09:48:23 +02:00
Stephen Adams 2c6ae26aba update_all: remove user-dependent part of assertion file path
TBR=sigmund@google.com

Review-Url: https://codereview.chromium.org/3003273002 .
2017-08-23 16:02:55 -07:00
Alexander Aprelev 7ed68c87f9 Adjust dartk test status for checked/unchecked modes
This is follow-up to https://codereview.chromium.org/3005473002.

TBR=siva

BUG=

Review-Url: https://codereview.chromium.org/3000393002 .
2017-08-23 09:29:16 -07:00
Alexander Aprelev dff0d004d1 Update dartk test status to make dartk buildbots(vm-kernel-linux-release-x64-checked-be) greener.
BUG=
R=asiva@google.com

Review-Url: https://codereview.chromium.org/3005473002 .
2017-08-23 09:10:44 -07:00
Johnni Winther 1658036b05 Share locals between members
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2995113002 .
2017-08-21 15:02:10 +02:00
Johnni Winther 3c8096e040 Split getClosureRepresentationInfo into MemberEntity and (ir/ast) nodes
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/3002953002 .
2017-08-19 10:36:49 +02:00
Johnni Winther 6b36ecefe7 Handle labelled breaks
Closes #30492

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/3001233002 .
2017-08-19 10:10:48 +02:00
Stephen Adams 357a37f09c Skip date_time_test for dart2js+kernel (until timeout is fixed)
TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/3000213002 .
2017-08-18 10:04:23 -07: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
Stephen Adams 3021706f87 More dart2js status duplicate removal
TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/2996203002 .
2017-08-17 19:17:41 -07:00
Stephen Adams fd263bc7b9 Update status files for dart2js
Sorting tests and removing duplicates

TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/3003443002 .
2017-08-17 17:09:03 -07:00
William Hesse 79b128cd02 Update linux status for Firefox 55
BUG=https://github.com/dart-lang/sdk/issues/30468
R=mkroghj@google.com

Review-Url: https://codereview.chromium.org/3002803002 .
2017-08-17 15:27:03 +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
Janice Collins e89d0d2e14 Migrate test block 11 to Dart 2.0.
Interesting items in this block:
- Manually merged iterable_generate_test changes from both trees and
dropped some typeAssertionsEnabled/checked mode checking.

BUG=
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/3000543002 .
2017-08-16 10:16:42 -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
Jennifer Messerly 04f61db8a8 fix list_unmodifiable_test
This test had some runtime soundness errors. I've added some type annotations to make those easier to catch, and also made the test a bit more rigorous about whether an error is expected.

R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2995703002 .
2017-08-11 13:19:21 -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
Janice Collins 93b4d72c50 Fix int_parse_radix_test/badTypes case for dart2js-d8-checked.
Another case broken by block 10.

BUG=
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2994023002 .
2017-08-09 10:27:39 -07:00
William Hesse 5890090f03 Update status for Firefox 55
BUG=
R=athom@google.com

Review-Url: https://codereview.chromium.org/2996743002 .
2017-08-09 19:03:22 +02:00
Janice Collins 06929f1ada Fix test broken by block 10.
Analyzer behavior is different when using --strong and --checked
vs --strong alone.

BUG=
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2996733002 .
2017-08-09 09:36:38 -07:00
Janice Collins e6b3fb5b05 Migrate test block 10 to Dart 2.0.
Special bits in this block:

int_parse_radix_test: Converted to a check only on TypeError (since this is raised at runtime based on user data)
iterable_element_at_test.dart: Split into multitest with compile errors.
iterable_fold_test.dart: add4 and a couple of other cases here cause problems for some compilers, split out into multitests and annotated in
status file.

BUG=
R=bkonyi@google.com

Review-Url: https://codereview.chromium.org/2997533002 .
2017-08-09 08:47:48 -07:00
Jennifer Messerly a77f151461 fix #30330, don't ignore cast failures in DDC for language/lib tests
R=leafp@google.com

Review-Url: https://codereview.chromium.org/2999593002 .
2017-08-08 21:57:45 -07:00
Jennifer Messerly 65e609548d fix #28988, remove throw on Dart1 incompatible is-checks for dartdevc
We've had this flag off in testing for quite a while. This should not affect user code because it's removing a throw.

R=leafp@google.com

Review-Url: https://codereview.chromium.org/2996573002 .
2017-08-07 16:41:18 -07:00
Stephen Adams e606525894 dedup tests/corelib_2/corelib_2.status dart2js entries
TBR=sigmund@google.com

BUG=

Review-Url: https://codereview.chromium.org/2993893002 .
2017-08-07 16:27:11 -07:00
Sigmund Cherem 8d4af85333 Remove use of cwd in d8 preamble
Fixes #30279
BUG= https://github.com/dart-lang/sdk/issues/30279
R=sra@google.com

Review-Url: https://codereview.chromium.org/2993153003 .
2017-08-07 15:54:08 -07:00