Sigmund Cherem
6d0fedd59b
Fix status again: meant to only include dartk, misread the context earlier :(
...
TBR=ahe@google.com
Review-Url: https://codereview.chromium.org/2913353002 .
2017-05-31 16:40:14 -07:00
Sigmund Cherem
04ee5b7109
Update status of language test
...
This was passing before because we disallowed native everywhere. The test should
pass again when we fix: https://github.com/dart-lang/sdk/issues/29763
TBR=ahe@google.com
Review-Url: https://codereview.chromium.org/2917823002 .
2017-05-31 16:28:09 -07:00
Peter von der Ahé
c0bf4eddbe
Various checks for constant expressions.
...
Fixes https://github.com/dart-lang/sdk/issues/29379
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2911023002 .
2017-05-31 15:57:03 +02:00
Johnni Winther
c4cd1add5c
Update dartj2s-with-kernel status
...
Review-Url: https://codereview.chromium.org/2913163002 .
2017-05-31 14:55:58 +02:00
Peter von der Ahé
8ea78cbc3f
Avoid using Invalid{Statement,Expression,Initializer}.
...
R=paulberry@google.com
Review-Url: https://codereview.chromium.org/2906253004 .
2017-05-31 14:53:44 +02:00
Régis Crelier
f0faae52bf
Fix VM to accept literal function type as type bound ( fixes #29481 ).
...
Add regression test.
Mark status files for failing dart2js and analyzer (filed new issues).
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2916453003 .
2017-05-30 17:26:35 -07:00
Régis Crelier
b7ebbf8c77
Allow a function named 'get' to be generic ( fixes #29746 ).
...
Add regression test.
Mark status files for failing dartk, dart2js, and analyzer.
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2911333002 .
2017-05-30 15:31:04 -07:00
Peter von der Ahé
0eae9218f4
Complain about duplicated names.
...
R=paulberry@google.com
Review-Url: https://codereview.chromium.org/2902113005 .
2017-05-29 09:45:05 +02:00
Sigmund Cherem
dd70d8b655
Remove factory body in *.fromEnvironment, and implement this same behavior
...
directly inside dart2js.
A few notes:
* I ended up adding support for this feature also in dart2js with --use-kernel, it was not implemented correctly before. This is why more tests are passing.
* I played with two other ideas:
(a) making this a compile-time error instead
(b) making it a warning if the arguments were constant and implement it as a constant, treat it as an error if they were not.
Unfortunately both are a breaking changes, so I backed out from them. IMO (a) is the cleanest thing to do long term, and we should raise this with the language team.
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2896393003 .
2017-05-26 14:49:19 -07:00
Ryan Macnak
bcf2900a26
Reapply "Shuffle around deopt id allocation to give the flow graph builder a chance to record other data as they are allocated".
...
- Fix inlining of new List(n) to propogate deopt id.
- Fix CreateArrayOpt to check for a Smi length.
R=vegorov@google.com
Review-Url: https://codereview.chromium.org/2900963008 .
2017-05-25 10:12:22 -07:00
Paul Berry
11fbbea7a7
Create language test that exercises bug #29709 .
...
R=ahe@google.com , scheglov@google.com
Review-Url: https://codereview.chromium.org/2903033002 .
2017-05-24 11:20:07 -07:00
Florian Loitsch
46a6fab347
Reformat generated tests files.
...
Review-Url: https://codereview.chromium.org/2904563005 .
2017-05-24 16:29:32 +02:00
William Hesse
2a0dd9d43c
Update status for passing analyzer test.
...
This test started passing with
1cfb242321
https://codereview.chromium.org/2901853002
Also removed comments in status file, and placed issue number comments
on the test status lines.
BUG=dartbug.com/14879
R=ahe@google.com
Review-Url: https://codereview.chromium.org/2902943003 .
2017-05-24 13:52:41 +02:00
Peter von der Ahé
7065a8dfd4
Update kernel status file.
...
Review-Url: https://codereview.chromium.org/2898173003 .
2017-05-24 13:42:05 +02:00
Peter von der Ahé
1cfb242321
Improve various old tests.
...
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2901853002 .
2017-05-24 11:46:08 +02:00
Erik Ernst
8aef60a78f
Included setters in testing of the void => return-any-type feature.
...
The older issue https://github.com/dart-lang/sdk/issues/28939 did not
mention setters. They were already covered in the implementation, so
this CL just adds testing for it.
Addresses issue https://github.com/dart-lang/sdk/issues/29680 .
R=floitsch@google.com , johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2899683003 .
2017-05-24 09:36:48 +02:00
Stephen Adams
1a965036b5
Lookup const constructor invocation like other constants
...
We should really be building the constants from kernel ir.
BUG=
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2896983002 .
2017-05-23 13:52:23 -07:00
Stephen Adams
a1263c27c0
dart2js kernel status update - 2 more tests pass
...
TBR=efortuna@google.com
BUG=
Review-Url: https://codereview.chromium.org/2896103004 .
2017-05-22 18:06:18 -07:00
Peter von der Ahé
8f17ae7709
Update status and expectations.
...
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2900753002 .
2017-05-22 15:22:38 +02:00
Peter von der Ahé
fb8c445e92
Update status files.
...
Review-Url: https://codereview.chromium.org/2897483004 .
2017-05-19 13:40:46 +02:00
Peter von der Ahé
547b2cdcce
Implement generalized function types.
...
Fixes https://github.com/dart-lang/sdk/issues/6972
Fixes https://github.com/dart-lang/sdk/issues/26581
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2876813002 .
2017-05-19 11:03:24 +02:00
Bob Nystrom
92267afc66
Refactor and clean up the status file parsing code. - Make the parser less error tolerant. The expression parser used to ignore any unrecognized tokens, which means a status like "RuntimeError CompileError" (not the missing comma) was parsed as simply "RuntimeError", which seems bad. Now it reports an error. Fixed a couple of status files that thought they were setting statuses that they weren't (!).
...
- Separate out parsing a status file from applying the environment to
determine which sections are active. This makes it possible to, for
example, generate expectation sets for multiple environments without
having to reparse each time.
- Simplify expression parsing. Remove set expressions since they weren't
used for anything useful. A test's expectations are a simple
comma-separated list and don't need anything beyond that. Merge
Scanner and Tokenizer since the latter was a glorified function.
- Make more names private so that it's clearer what's used outside of
various libraries.
- Generally modernize the style.
- Add *lots* of documentation.
Again, there should be no behavioral changes. I ran:
./tools/test.py -m release,debug -c none,dart2js,dart2analyzer -r none,vm,d8 corelib
Before and after the change and verified that the output was the same
(aside from timing).
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2891753003 .
2017-05-18 12:42:52 -07:00
Bob Nystrom
c269ef53a5
Revert "Re-apply status file parser changes from 0b7728da1bef08c1c1e092005d9fd8c8bff5fa6c."
...
This reverts commit a881aed354 .
TBR.
R=paulberry@google.com
Review-Url: https://codereview.chromium.org/2888213002 .
2017-05-17 13:45:40 -07:00
Bob Nystrom
a881aed354
Re-apply status file parser changes from 0b7728da1b.
...
R=whesse@google.com
Review-Url: https://codereview.chromium.org/2880203004 .
2017-05-17 13:04:35 -07:00
Bob Nystrom
01e5b1b40c
Revert "Refactor and clean up the status file parsing code."
...
This reverts commit 0b7728da1b .
R=nbosch@google.com
Review-Url: https://codereview.chromium.org/2885623002 .
2017-05-15 15:58:05 -07:00
Bob Nystrom
0b7728da1b
Refactor and clean up the status file parsing code.
...
- Make the parser less error tolerant. The expression parser used to
ignore any unrecognized tokens, which means a status like
"RuntimeError CompileError" (not the missing comma) was parsed as
simply "RuntimeError", which seems bad. Now it reports an error.
Fixed a couple of status files that thought they were setting statuses
that they weren't (!).
- Separate out parsing a status file from applying the environment to
determine which sections are active. This makes it possible to, for
example, generate expectation sets for multiple environments without
having to reparse each time.
- Simplify expression parsing. Remove set expressions since they weren't
used for anything useful. A test's expectations are a simple
comma-separated list and don't need anything beyond that. Merge
Scanner and Tokenizer since the latter was a glorified function.
- Make more names private so that it's clearer what's used outside of
various libraries.
- Generally modernize the style.
- Add *lots* of documentation.
Again, there should be no behavioral changes. I ran:
./tools/test.py -m release,debug -c none,dart2js,dart2analyzer -r none,vm,d8 corelib
Before and after the change and verified that the output was the same
(aside from timing).
BUG=
R=whesse@google.com
Review-Url: https://codereview.chromium.org/2875203005 .
2017-05-15 15:42:15 -07:00
Paul Berry
bd15c223de
Implement function-typed formal parameters in OutlineBuilder.
...
R=ahe@google.com
Review-Url: https://codereview.chromium.org/2884483002 .
2017-05-15 06:28:51 -07:00
Erik Ernst
6cb0966401
Allowing e of any type in void f(...) => e in the analyzer.
...
Re-land, now including adjustment of two tests in pkg/analyzer/test.
R=brianwilkerson@google.com
Review-Url: https://codereview.chromium.org/2870363003 .
2017-05-11 10:10:03 +02:00
Terry Lucas
f27144d7b5
Roll 50: Updated for push to origin/master.
...
TBR=jacobr@google.com
Review-Url: https://codereview.chromium.org/2875773003 .
2017-05-10 18:16:51 -07:00
Erik Ernst
7adb470835
Revert "Allowing e of any type in void f(...) => e in the analyzer."
...
This reverts commit 025b83fb89 .
Review-Url: https://codereview.chromium.org/2871163002 .
2017-05-10 12:54:24 +02:00
Erik Ernst
025b83fb89
Allowing e of any type in void f(...) => e in the analyzer.
...
Addresses https://github.com/dart-lang/sdk/issues/28940 .
R=brianwilkerson@google.com
Review-Url: https://codereview.chromium.org/2870063002 .
2017-05-10 11:36:43 +02:00
Johnni Winther
2c1b33aee7
Update status for mixin test
...
Review-Url: https://codereview.chromium.org/2871883002 .
2017-05-09 10:46:48 +02:00
Peter von der Ahé
4880a2876e
Rewrite mixin application handling in Fasta.
...
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2862223002 .
2017-05-09 09:22:57 +02:00
Johnni Winther
db289eed9e
Update status for multiline tests.
...
Review-Url: https://codereview.chromium.org/2869743002 .
2017-05-08 13:37:27 +02:00
Peter von der Ahé
0dba8c9516
Update handling of multiline strings to specification.
...
R=johnniwinther@google.com , lrn@google.com
Review-Url: https://codereview.chromium.org/2847793002 .
2017-05-08 12:20:02 +02:00
Florian Loitsch
8e01f69305
Void is not required to be null anymore.
...
In checked mode, `void` now accepts any value.
Fixes #28937 .
Fixes #28938 .
BUG= http://dartbug.com/28937
BUG= http://dartbug.com/28938
R=johnniwinther@google.com , kmillikin@google.com , lrn@google.com , regis@google.com
Committed: https://github.com/dart-lang/sdk/commit/521dc6620fd2c4591aa975745c14b304428f17eb
Reverted: https://github.com/dart-lang/sdk/commit/a3c0cb65af4bbbdde756208dcccdcdf896902b5b
Committed: https://github.com/dart-lang/sdk/commit/4e52c457a9ac412b6b0a3a350020998c7e2f7d9a
Reverted: https://github.com/dart-lang/sdk/commit/4b35d3995b2b273728751c19976ece0edca0eddc
Committed: https://github.com/dart-lang/sdk/commit/6caf9ef4439e20ea726d8a5383ed34d42b02c84b
Reverted: https://github.com/dart-lang/sdk/commit/30d9bf2ed3225f04c52d999a1a5c61e63a90578d
Review-Url: https://codereview.chromium.org/2718513002 .
2017-05-08 11:31:37 +02:00
Jens Johansen
30d9bf2ed3
Revert "Void is not required to be null anymore."
...
This reverts commit 6caf9ef443 .
Commit breaks vm-kernel-linux-debug-x64-be.
Triggers asserts like
../../runtime/vm/flow_graph_compiler_x64.cc: 658: error: expected: dst_type.IsMalformedOrMalbounded() || (!dst_type.IsDynamicType() && !dst_type.IsObjectType() && !dst_type.IsVoidType())
Quick-check with python tools/test.py -cdartk -t120 --builder-tag no_ipv6 --vm-options --no-enable-malloc-hooks isolate
BUG=
Review-Url: https://codereview.chromium.org/2865603003 .
2017-05-05 08:56:26 +02:00
Florian Loitsch
6caf9ef443
Void is not required to be null anymore.
...
In checked mode, `void` now accepts any value.
Fixes #28937 .
Fixes #28938 .
BUG= http://dartbug.com/28937
BUG= http://dartbug.com/28938
R=johnniwinther@google.com , lrn@google.com , regis@google.com
Committed: https://github.com/dart-lang/sdk/commit/521dc6620fd2c4591aa975745c14b304428f17eb
Reverted: https://github.com/dart-lang/sdk/commit/a3c0cb65af4bbbdde756208dcccdcdf896902b5b
Committed: https://github.com/dart-lang/sdk/commit/4e52c457a9ac412b6b0a3a350020998c7e2f7d9a
Reverted: https://github.com/dart-lang/sdk/commit/4b35d3995b2b273728751c19976ece0edca0eddc
Review-Url: https://codereview.chromium.org/2718513002 .
2017-05-04 16:27:52 +02:00
Florian Loitsch
4b35d3995b
Revert "Void is not required to be null anymore."
...
This reverts commit 4e52c457a9 .
BUG=
Review-Url: https://codereview.chromium.org/2863463002 .
2017-05-03 19:22:22 +02:00
Florian Loitsch
4e52c457a9
Void is not required to be null anymore.
...
In checked mode, `void` now accepts any value.
Fixes #28937 .
Fixes #28938 .
BUG= http://dartbug.com/28937
BUG= http://dartbug.com/28938
R=johnniwinther@google.com , lrn@google.com , regis@google.com
Committed: https://github.com/dart-lang/sdk/commit/521dc6620fd2c4591aa975745c14b304428f17eb
Reverted: https://github.com/dart-lang/sdk/commit/a3c0cb65af4bbbdde756208dcccdcdf896902b5b
Review-Url: https://codereview.chromium.org/2718513002 .
2017-05-03 17:43:23 +02:00
Florian Loitsch
a3c0cb65af
Revert "Void is not required to be null anymore."
...
This reverts commit 521dc6620f .
BUG=
Review-Url: https://codereview.chromium.org/2855173002 .
2017-05-03 17:36:39 +02:00
Florian Loitsch
521dc6620f
Void is not required to be null anymore.
...
In checked mode, `void` now accepts any value.
Fixes #28937 .
Fixes #28938 .
BUG= http://dartbug.com/28937
BUG= http://dartbug.com/28938
R=johnniwinther@google.com , lrn@google.com , regis@google.com
Review-Url: https://codereview.chromium.org/2718513002 .
2017-05-03 17:31:21 +02:00
Erik Corry
aa6353b6da
Dart SDK Spelling b, c, and d.
...
R=kmillikin@google.com
BUG=
Review-Url: https://codereview.chromium.org/2850783002 .
2017-05-01 08:28:10 +02:00
Stephen Adams
41ca7f8bf5
kernel backend impact - noSuchMethod helpers are passed a Map literal
...
Fixes a regression on ~150 tests.
Will be replaced with kernel_impact.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2850933002 .
2017-04-28 14:26:28 -07:00
Mike Fairhurst
a48e0ef493
Fix #28740 demangle constructors in stack traces (A.A becomes new A) REDO
...
Regular constructors and unnamed factory constructors:
- Were A.A, now are new A
Named constructors (including factory constructors):
- Were A.A.name, now are new A.name
Previous attempt (a84b6b7f ) didn't update vm/cc tests, which broke the
build, was reverted, and also revealed an important case:
Functions within constructors:
- Were A.A.x, now are new A.x
Doing this was cleanest by switching the loop out for recursion, which
provides a nice guarantee that any anonymous function within some other
function will always have the correct prefix, and the class name (which
may or may not be prepended at the end) is only applied once, and its
existence is only checked in one place.
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2823253005 .
2017-04-28 10:19:20 -07:00
Stephen Adams
9635a84d32
dart2js-kernel: Bind type variables in generative constructor.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2841213002 .
2017-04-27 16:06:54 -07:00
Florian Loitsch
641e2a64a7
Fix yet another bad copyright year in a test.
...
Review-Url: https://codereview.chromium.org/2849523002 .
2017-04-27 15:30:53 +02:00
Florian Loitsch
9ebf446eaa
Fix copyright year in test.
...
Review-Url: https://codereview.chromium.org/2850473002 .
2017-04-27 15:24:43 +02:00
Stephen Adams
2c313f8125
Redo "dart2js: --fast-startup: use alias for 'this'"
...
Doesn't currently work since we can't use js.Names and regular parameters/variables in the same JavaScript scope.
Long term - we should fix this (https://github.com/dart-lang/sdk/issues/29455 )
Short term, we could generate variable strings that are named after the fields and disambiguate them manually.
BUG=
Review-Url: https://codereview.chromium.org/2837243002 .
2017-04-26 20:51:19 -07:00
Johnni Winther
86fbb962cf
Include superclasses of classes only needed for rti
...
Closes #29441
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2842653003 .
2017-04-26 09:21:29 +02:00