Commit Graph

329 Commits

Author SHA1 Message Date
Asger Feldthaus deedd39f04 Revert "Improvements to the kernel tree shaker."
This reverts commit 71efbad90c.

BUG=

Review-Url: https://codereview.chromium.org/2644543004 .
2017-01-19 16:02:48 +01:00
Asger Feldthaus 71efbad90c Improvements to the kernel tree shaker.
- Use strong-mode types for more precise tree shaking.
- Bail out nicely if dart:mirrors is used.
- Run the tree shaker in the VM target.

The initial tree-shaking pass could be combined with the type checking
pass (inserting implicit down casts) but for now they remain separate.

R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2627723003 .
2017-01-19 14:00:31 +01:00
Asger Feldthaus 76442f9394 Fix language/bad_constructor_test in dartk and analyzer.
The test was incorrect because it did not declare that a static warning
was to be expected due to an unresolved reference to 'q'. The unresolved
reference has been removed as it has nothing to do with what it is
supposed to test.

The analyzer was incorrect in that a setter was reported to clash with
a constructor of the same name, but this failure was hidden by the
above issue. This has been fixed.

dartk inherited the issue (and its fix) from the analyzer, but some
additional error handling was needed in dartk to avoid crashing.

Closes https://github.com/dart-lang/sdk/issues/11576

BUG=
R=kmillikin@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2643693002 .
2017-01-19 13:10:32 +01:00
Jens Johansen 919b5ac8d0 Test for kernel async stacktrace bug
BUG= https://github.com/dart-lang/sdk/issues/28446
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2638403004 .
2017-01-19 12:37:58 +01:00
Asger Feldthaus d4dfb3088e Fix some crashes in dartk.
Dartk should no longer crash in these cases:
- main method is provided through an export
- main method is missing
- initializing formal parameter is unresolved
- the loadLibrary function is torn off

BUG=
R=kmillikin@google.com, vegorov@google.com

Committed: https://github.com/dart-lang/sdk/commit/d01bd88152b2d30d6a06d1379e41e1280d094dab
Committed: https://github.com/dart-lang/sdk/commit/979072821d1113248e285f7926663eb00d8a8206
Review-Url: https://codereview.chromium.org/2641523002 .
2017-01-19 12:12:36 +01:00
Martin Kustermann 6a4d70ef3a VM: [Kernel] Fix invocation of _AssertionError._create
A CL a few weeks ago added one more argument to the constructor (see https://codereview.chromium.org/2574003003)

R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2640253002 .
2017-01-19 10:59:53 +01:00
Martin Kustermann e006da5d8c Bulk status file update to get kernel builders green
Review-Url: https://codereview.chromium.org/2640913004 .
2017-01-19 10:05:12 +01:00
Asger Feldthaus be9088060d Revert "Fix some crashes in dartk."
This reverts 979072821d

BUG=

Review-Url: https://codereview.chromium.org/2638353003 .
2017-01-18 20:52:13 +01:00
Sigmund Cherem c64c351539 Reverts the following two commits:
"Add support for the new function-type syntax." # e4999a6310.
"In function-type test: remove unused variables, make type stronger." # 02ffb3b140.

Reason to revert:
We found user code breaks because of ambiguous cases like this:

   ```
   class Function extends Foo {
      Function() : super();
   }
   ```

Today this fails when trying to parse the constructor.

We need to:
 * indicate this is not allowed anymore (probably at the class declaration)
 * allow it until we are ready to make it a breaking change (by maybe
 adding a special exception to allow this ambiguity in the syntax).
 * consider the language change to see whether we can prevent the breaking
 change if we use a different keyword.

BUG=
R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2638063003 .
2017-01-18 10:13:38 -08:00
Martin Kustermann f95701bf61 Support tests using VMOptions also with kernel
R=whesse@google.com

Review-Url: https://codereview.chromium.org/2641433002 .
2017-01-18 18:48:22 +01:00
Asger Feldthaus 979072821d Fix some crashes in dartk.
Dartk should no longer crash in these cases:
- main method is provided through an export
- main method is missing
- initializing formal parameter is unresolved
- the loadLibrary function is torn off

BUG=
R=kmillikin@google.com, vegorov@google.com

Committed: https://github.com/dart-lang/sdk/commit/d01bd88152b2d30d6a06d1379e41e1280d094dab
Review-Url: https://codereview.chromium.org/2641523002 .
2017-01-18 16:44:45 +01:00
Martin Kustermann 887b4775a1 Mark 2 precompilation tests as passing after fixing [StringInterpolateInstr::Canonicalize]
Review-Url: https://codereview.chromium.org/2640833002 .
2017-01-18 14:59:56 +01:00
Asger Feldthaus 6272e23d35 Revert "Fix some crashes in dartk."
This reverts commit d01bd88152.

Some status file updates were missing for precompiled mode.

BUG=

Review-Url: https://codereview.chromium.org/2644513002 .
2017-01-18 12:21:43 +01:00
Martin Kustermann f40e46c3fd VM: [Kernel] Ensure we have correct try-index on join blocks for break destinations
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2637993002 .
2017-01-18 11:25:56 +01:00
Martin Kustermann e97bcc5475 VM: [Kernel] Partial support for metadata annotations
The CL adds metadata support for Fields/Classes/Functions/Constructors. There
are other places where annotations can be put in the Dart language but the
Kernel IR currently does not store it in the AST.

Whenever a element (e.g. a function) gets annotated, the VM will make a [Field] for this
element whos value is an array of evaluated constant metadata annotations.

This CL attaches to these [Fields] a `kernel_function` which is then used to do the constant
evaluation.

R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2632253002 .
2017-01-18 10:51:24 +01:00
Asger Feldthaus d01bd88152 Fix some crashes in dartk.
Dartk should no longer crash in these cases:
- main method is provided through an export
- main method is missing
- initializing formal parameter is unresolved
- the loadLibrary function is torn off

BUG=
R=kmillikin@google.com, vegorov@google.com

Review-Url: https://codereview.chromium.org/2641523002 .
2017-01-18 10:39:10 +01:00
Florian Loitsch e4999a6310 Add support for the new function-type syntax.
Fixes #27967
BUG= http://dartbug.com/27967
R=sigmund@google.com

Committed: https://github.com/dart-lang/sdk/commit/85227ba8a60332a18ae92cb1b87bf15d52a909bd

Reverted: https://github.com/dart-lang/sdk/commit/f5fc210f4f79f7e6b7ccefc24e7565e810e9dc7d
Review-Url: https://codereview.chromium.org/2567133002 .
2017-01-13 18:45:47 +01:00
Florian Loitsch f5fc210f4f Revert "Add support for the new function-type syntax."
This reverts commit 85227ba8a6.

Review-Url: https://codereview.chromium.org/2627343004 .
2017-01-13 16:50:25 +01:00
Florian Loitsch 85227ba8a6 Add support for the new function-type syntax.
Fixes #27967
BUG= http://dartbug.com/27967
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2567133002 .
2017-01-13 15:57:08 +01:00
Brian Wilkerson 833eb07c74 Move status to fix the bots (TBR)
Review-Url: https://codereview.chromium.org/2626303002 .
2017-01-12 11:53:35 -08:00
Brian Wilkerson f77340996b Fix more bots (TBR)
Review-Url: https://codereview.chromium.org/2627793004 .
2017-01-12 09:23:56 -08:00
Florian Loitsch 5e262d11ea Add a few more tests.
R=eernst@google.com, whesse@google.com

Committed: https://github.com/dart-lang/sdk/commit/c5a47927182ecdc0035bab2b80ede049e571dbbd

Reverted: https://github.com/dart-lang/sdk/commit/fb62c9acc66c1280992c5bb3219dd625b89496b4
Review-Url: https://codereview.chromium.org/2629113002 .
2017-01-12 16:33:41 +01:00
Florian Loitsch fb62c9acc6 Revert "Add a few more tests."
This reverts commit c5a4792718.

Review-Url: https://codereview.chromium.org/2631513004 .
2017-01-12 15:54:17 +01:00
Florian Loitsch c5a4792718 Add a few more tests.
R=eernst@google.com

Review-Url: https://codereview.chromium.org/2629113002 .
2017-01-12 14:33:23 +01:00
Martin Kustermann 1c7c3408bf VM: [Kernel] Fix constructor invocations by creating the unfolded type argument vector
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2624273002 .
2017-01-11 20:24:06 +01:00
Martin Kustermann 36b16c6f1c VM: [Kernel] Merge common test expectations from language_kernel.status -> language.status
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2624973004 .
2017-01-11 20:08:19 +01:00
Martin Kustermann bce0be4540 VM: [Kernel] Add kernel::ConstantEvaluator support for string.length
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2621343002 .
2017-01-11 19:53:57 +01:00
Martin Kustermann 02018bdb8e VM: [Kernel] Ensure tear-offs of static methods are canonicalized
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2628853003 .
2017-01-11 19:52:55 +01:00
Martin Kustermann 2f21c261c9 VM: [Kernel] Make type literals which refer to type parameters work
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2623143003 .
2017-01-11 19:51:42 +01:00
Martin Kustermann 23cc9cca41 VM: [Kernel] Add toString() support for generated enum classes
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2625053003 .
2017-01-11 19:50:21 +01:00
Florian Loitsch 4095deb7d4 Change "crash" to "dartkcrash" in status file.
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2626943003 .
2017-01-11 19:40:04 +01:00
Martin Kustermann 673eb56471 VM: [Kernel] Fix remaining issues with kernel-based async/await implementation
This CL brings us on-par with the VM implementation in terms of tests.

  * Ensure we have saved-try-ctx/exception/stacktrace variables hoisted out for
    try-catch **and** try-finally.

  * Instead of closing the stream controller for 'async*' functions on return we
    do it inside an try-finally block so we get there in terms of normal and
    exceptional exit.

R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2627873002 .
2017-01-11 19:35:02 +01:00
Florian Loitsch 71ec2f0297 Implement 'covariant' modifier for dart2js.
Also adds some tests.

Fixes #28165

BUG= http://dartbug.com/28165
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2626843003 .
2017-01-11 19:12:48 +01:00
Florian Schneider 204bd5a932 VM: Add missing token position in async rethrow
Fixes #28325.

R=hausner@google.com

Review-Url: https://codereview.chromium.org/2626753002 .
2017-01-10 13:49:13 -08:00
Martin Kustermann be01bf89b3 VM: [Kernel] Skip large_class_declaration_test with --compiler=dartk/dartkp
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2623833003 .
2017-01-10 10:44:05 +01:00
Regis Crelier 7b68f5a2ee Status update: 3 previously failing kernel tests are now passing, most probably
fixed by https://codereview.chromium.org/2624543002/

R=hausner@google.com

Review-Url: https://codereview.chromium.org/2621733003 .
2017-01-09 16:21:41 -08:00
Martin Kustermann 663febe910 VM: [Kernel] Status file triaging of language.status
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2624563002 .
2017-01-09 22:04:49 +01:00
Martin Kustermann 98e3037f41 Share common failures between kernel and non-kernel in language_kernel.status -> language.status
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2621623002 .
2017-01-09 13:53:23 +01:00
Florian Schneider 86e902ce5a Fix test status of new test for dartk.
TBR=vegorov@google.com

BUG=

Review-Url: https://codereview.chromium.org/2617903003 .
2017-01-05 19:08:09 -08:00
Zach Anderson cf1a432ac7 Gardening: Update status file for kernel crash
I believe this is by design as there are no mirrors in precompiled
mode.

Review-Url: https://codereview.chromium.org/2616793003 .
2017-01-05 11:19:49 -08:00
Regis Crelier 4e7ab97a20 Update dartk status file.
Review-Url: https://codereview.chromium.org/2614743005 .
2017-01-05 10:34:33 -08:00
Bob Nystrom 45b771f946 Remove tests for generalized tear-offs.
R=mit@google.com

Review-Url: https://codereview.chromium.org/2608363002 .
2017-01-04 10:14:41 -08:00
Asger Feldthaus 0546f6b4b7 Support generic method syntax in kernel pipeline.
Closes https://github.com/dart-lang/sdk/issues/28231
Closes https://github.com/dart-lang/sdk/issues/28238

R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2613683003 .
2017-01-04 14:25:36 +01:00
Siva Annamalai 4ef532a979 Update status file for enum_syntax_test/05 which is not crashing under dartkp/dart_precompiled/debug mode anymore.
Review-Url: https://codereview.chromium.org/2609953003 .
2017-01-03 18:47:03 -08:00
Lasse R.H. Nielsen 821eeb1aac Update expectations for dartk-vm crashes.
Review-Url: https://codereview.chromium.org/2606343002 .
2017-01-03 13:38:30 +01:00
Florian Loitsch 5464ae2c93 Update status file.
Review-Url: https://codereview.chromium.org/2598993003 .
2016-12-22 18:47:24 +01:00
Florian Loitsch 411e0d60ac Update status file.
Review-Url: https://codereview.chromium.org/2600543002 .
2016-12-22 18:07:28 +01:00
Johnni Winther f6b5361adb Support for Null as bottom in dart2js
Closes #28026

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2595363002 .
2016-12-22 15:01:33 +01:00
Asger Feldthaus 92f74d21e3 Update kernel status file after configurable import test was added.
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2577893006 .
2016-12-16 15:59:29 +01:00
Martin Kustermann 44b45f8f59 Mark language/generic_sends_test as passing
Review-Url: https://codereview.chromium.org/2578423002 .
2016-12-16 10:33:11 +01:00