Commit Graph

13131 Commits

Author SHA1 Message Date
Erik Ernst c59d37032e Added missing status entries.
A fix for c35caf253e and
https://codereview.chromium.org/2029003002.

Review URL: https://codereview.chromium.org/2029343003 .
2016-06-02 12:37:47 +02:00
Johnni Winther fa5b98126c Revert "Fix code-size regression"
This reverts commit 565b30123c.

BUG=

Review URL: https://codereview.chromium.org/2037593002 .
2016-06-02 11:41:44 +02:00
Erik Ernst c35caf253e Introduces "--initializing-formal-access".
This CL is an adjusted version of CL 2025853002, adding updates to
`InitializingFormalElementZ` to match the updates applied to
`InitializingFormalElementX`, and adding the new option to the
`MessageKind.DUPLICATE_DEFINITION` example.

Description from 2025853002:

This CL adjusts the treatment of initializing formals, such that they
can be used in initializers and in constructor bodies. E.g., `x` can be
used as in `C(this.x) : y = x { var z = x + 2; }`.

It hides the new feature under the option '--initializing-formal-access'
which is used in the test 'initializing_formal_access_test.dart'.

It also adds an `example` test to `MessageKind.DUPLICATE_DEFINITION` to
verify that name clashes among initializing formals and other
parameters are detected (which was previously not the case).

Finally, it fixes a typo in a comment, `InitializingFormalParameter` ->
`InitializingFormalElement`.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2029003002 .
2016-06-02 11:09:56 +02:00
Johnni Winther 7499d74f4b Compute and check members for serialization
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2015903002 .
2016-06-02 11:00:13 +02:00
Johnni Winther ac1bc765d9 Support references to unserialized libraries.
This adds initial support for combining serialized and unserialized libraries
even in the case where the serialized library refers to the unserialized library.

R=sigmund@google.com

Review URL: https://codereview.chromium.org/2024783003 .
2016-06-02 10:39:29 +02:00
Johnni Winther 5916ee557f Improve equivalence testing of unnamed mixin applications.
The equivalence of unnamed mixin applications cannot be tested directly since
they are not nominal entities. In the example below two classes by the synthetic
name `S+M` are introduces. This CL adds a reference to the introducing class so
that the unnamed mixin applications can be distinguished as `S+M from C1` and
`S+M from C2`.

class S {}
class M {}
class C1 extends S with M {}
class C2 extends S with M {}

R=sigmund@google.com

Review URL: https://codereview.chromium.org/2017903002 .
2016-06-02 10:26:26 +02:00
Johnni Winther 565b30123c Fix code-size regression
This reinserts the native spec-string interpretation.

The CL https://codereview.chromium.org/2004833003/ changed the interpretation of `List` from `List<E>` to `List<dynamic>` causing these native classes to be added through subtyping:

NativeUint8List <: List
NativeUint8ClampedList <: List
NativeUint32List <: List
NativeUint16List <: List
NativeInt8List <: List
NativeInt32List <: List
NativeInt16List <: List
NativeFloat64List <: List
NativeFloat32List <: List
NativeTypedArrayOfInt <: List
NativeTypedArrayOfDouble <: List

R=sra@google.com

Review URL: https://codereview.chromium.org/2021723003 .
2016-06-02 10:16:44 +02:00
Harry Terkelsen add59a9607 mark now-passing tests in the dart2js-linux bots
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2036553003 .
2016-06-01 17:38:22 -07:00
Harry Terkelsen 2b534b70bb triage failing dart2js-jsshell tests
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2026393003 .
2016-06-01 15:46:01 -07:00
Florian Loitsch e1bf3506d1 Make linked-list non-circular.
This bug was introduced when making the collection library strong-mode clean.

Fixes #26522
BUG= http://dartbug.com/26522
R=lrn@google.com

Review URL: https://codereview.chromium.org/2015513006 .
2016-06-01 14:19:37 +02:00
William Hesse 915d9b2db2 Update dartium status on Windows for co19 roll
TBR=sgjesse@google.com
R=sgjesse@google.com
BUG=

Review URL: https://codereview.chromium.org/2024103006 .
2016-06-01 09:11:04 +02:00
William Hesse 7c76d4d3c9 Update status for dartium tests after co19 roll
BUG=
TBR=sgjesse@google.com
R=sgjesse@google.com

Review URL: https://codereview.chromium.org/2029503002 .
2016-06-01 08:13:23 +02:00
Harry Terkelsen c5d7d27ed5 fix status file for d8-checked build bot
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2024293002 .
2016-05-31 16:21:26 -07:00
Sigmund Cherem d1d46593d5 Make test.dart override only those dependencies declared in the pubspec.yaml
file (attempt #2).

Differences from before:
 - pull in transitive dependencies that were missing
 - pass on the package-root in standalone/io/test_runner_test

BUG= http://dartbug.com/26563
R=whesse@google.com

Review URL: https://codereview.chromium.org/2019163002 .
2016-05-31 15:48:54 -07:00
Paul Berry 858407ebf0 Fix analyzer bot flakiness (correctly this time).
In f54e667773 I attempted to work around
analyzer flakiness in
co19/Language/Libraries_and_Scripts/Scripts/syntax_t11, but I
accidentally applied the change to
Language/Mixins/Mixin_Application/syntax_t11 instead.

This CL applies the workaround to the correct instance of syntax_t11.

TBR=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2022343002 .
2016-05-31 15:29:53 -07:00
Harry Terkelsen 7b2edf83df mark more tests as missing compile-time errors
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2027593004 .
2016-05-31 12:22:30 -07:00
Harry Terkelsen e9d41ebc23 declare that dart2js fails some 'yield*' tests
These tests assert that 'yield*' expressions in non-generator functions
should be a compile-time error. But the spec does not have yield as a
reserved word, so a statement like 'yield* e;' can be interpreted as an
expression statement multiplying the variable 'yield' by e. This is how
dart2js and the VM interpret yield outside of generator functions.

See the discussion in issue #25495

R=sigmund@google.com

Review URL: https://codereview.chromium.org/2024203002 .
2016-05-31 11:10:23 -07:00
Konstantin Shcheglov 3d70bc399e Rollback checking bounds of type parameters of function type aliases.
The line:

List<DartType> parameterTypes = element.type.typeArguments;

returns an empty list for typedefs.

For now I want to unblock Keerti.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2027723002 .
2016-05-31 10:51:23 -07:00
Paul Berry f54e667773 Co19 fixes for analyzer and runtime.
The runtime fix is from whesse@google.com.

R=whesse@google.com

Review URL: https://codereview.chromium.org/2023763008 .
2016-05-31 10:45:20 -07:00
Regis Crelier 070bb612b3 Reference newly filed issue instead of unrelated closed issue.
R=hausner@google.com

Review URL: https://codereview.chromium.org/2028703002 .
2016-05-31 10:07:57 -07:00
Erik Ernst 5b72755837 Revert "Introduces "--initializing-formal-access"."
This reverts commit b80a73775c
because introduced new failures in co19 tests.

Review URL: https://codereview.chromium.org/2021133003 .
2016-05-31 18:03:14 +02:00
Erik Ernst b80a73775c Introduces "--initializing-formal-access".
This CL adjusts the treatment of initializing formals, such that they
can be used in initializers and in constructor bodies. E.g., `x` can be
used as in `C(this.x) : y = x { var z = x + 2; }`.

It hides the new feature under the option '--initializing-formal-access'
which is used in the test 'initializing_formal_access_test.dart'.

It also adds an `example` test to `MessageKind.DUPLICATE_DEFINITION` to
verify that name clashes among initializing formals and other
parameters are detected (which was previously not the case).

Finally, it fixes a typo in a comment, `InitializingFormalParameter` ->
`InitializingFormalElement`.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2025853002 .
2016-05-31 15:39:02 +02:00
William Hesse 0d77bd044c Update status for failing asan and precompilation vm co19 tests
TBR=sgjesse@google.com
BUG=

Review URL: https://codereview.chromium.org/2024803002 .
2016-05-31 08:40:45 +02:00
William Hesse 10dff4ea45 Update status for co19 tests that now pass on dart2js
TBR=sgjesse@google.com
R=sgjesse@google.com
BUG=

Review URL: https://codereview.chromium.org/2024743002 .
2016-05-31 03:36:15 +02:00
William Hesse 65949097f4 Update VM status for co19 test roll
BUG=https://github.com/dart-lang/sdk/issues/26573
TBR=sgjesse@google.com

Review URL: https://codereview.chromium.org/2021153002 .
2016-05-31 01:57:33 +02:00
William Hesse 41ece1a95a Reland the roll of co19 tests
This reverts commit 020be8eca6,
updating the version of the co19 test suites to their version
3f0a4bc9a080a792cdf5f093147a900f99ea301f from May 17, 2016.

TBR=sgjesse@google.com
BUG=https://github.com/dart-lang/sdk/pull/26294

Review URL: https://codereview.chromium.org/2023953002 .
2016-05-30 22:11:30 +02:00
Florian Schneider e5597652f8 Fix status for Android ARM.
That test is passing on precompiled ARM/Android.

TBR=rmacnak@google.com,

BUG=

Review URL: https://codereview.chromium.org/2023843002 .
2016-05-30 11:35:29 +02:00
Harry Terkelsen df8d991188 mark webgl test failures on windows
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2011413002 .
2016-05-27 14:07:05 -07:00
Matthias Hausner 7daa2a8915 Fix capturing variables in optimized compilations
Fourth(!) attempt. This CL fixes another instance where parsing a nested function modifies the parser state of the function that is being compiled.

When a local function gets compiled the second time, constant
expressions may not be parsed again, since the constant value
is found in the cache. If the expression refers to an outer
variable, it does not get captured correctly.

Fix: instead of parsing a local function repeatedly to capture
outer variables, use the local function’s context scope to mark
outer variables as captured. This fixes the bug, and makes the
compiler more efficient as well.

BUG= 26453
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2010283004 .
2016-05-27 11:27:10 -07:00
Harry Terkelsen ca0bedc301 remove now-passing tests from list of failures
Fixes #26557

R=sigmund@google.com

Review URL: https://codereview.chromium.org/2015273002 .
2016-05-27 10:26:45 -07:00
Florian Schneider aa05691c77 status update: process_sync_test still timing out on Windows
TBR=zra@google.com,

BUG=#24596

Review URL: https://codereview.chromium.org/2018033002 .
2016-05-27 18:53:28 +02:00
Lasse R.H. Nielsen 7009677096 Also add comments requested by review, and some more.
Also exclude more environments from running the test, restricting it to *only* the stand-alone VM and the analyzer.

Review URL: https://codereview.chromium.org/2015193002 .
2016-05-27 13:07:40 +02:00
Florian Schneider 05660b8f25 Skip new test that uses Platform.executable under precompilation
TBR=lrn@google.com,

BUG=

Review URL: https://codereview.chromium.org/2016313002 .
2016-05-27 12:30:23 +02:00
Johnni Winther 91616103aa Use correct type on evaluated literal symbols.
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2018523002 .
2016-05-27 11:05:00 +02:00
Johnni Winther d78290a5b2 Compute import paths using ImportElement and ExportElement
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2005293003 .
2016-05-27 10:58:52 +02:00
Johnni Winther e25e6206d8 Fix analyze_dart2js_helpers_test
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2006333004 .
2016-05-27 10:45:38 +02:00
Johnni Winther 6cd484ddb5 Correctly skip if-null expressions.
Closes #26543

R=eernst@google.com

Review URL: https://codereview.chromium.org/2016693002 .
2016-05-27 10:44:47 +02:00
Johnni Winther dd4368e217 Fix several element properties in serialization.
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2012163003 .
2016-05-27 10:37:36 +02:00
Lasse R.H. Nielsen dead4294ae Fix analyzer warnings in packages_file_test.dart.
Review URL: https://codereview.chromium.org/2013353003 .
2016-05-27 10:11:45 +02:00
Lasse R.H. Nielsen 39df5d56b2 Add test of some package-config configurations.
More to come.

R=floitsch@google.com

Review URL: https://codereview.chromium.org/1993643002 .
2016-05-27 09:19:16 +02:00
Florian Schneider 62f64eb312 Fix checked mode error in socket_bind_test.
BUG=
R=kustermann@google.com

Review URL: https://codereview.chromium.org/2007133007 .
2016-05-26 20:14:51 +02:00
Florian Schneider b1ce8afde5 Fix a flaky failure in socket_bind_test.
Make the test more robust against the case where it use a IPv4 socket address
is already in use with IPv6 or vice versa by first finding a port that is free
for both.

BUG=
R=kustermann@google.com

Review URL: https://codereview.chromium.org/2014893002 .
2016-05-26 19:38:32 +02:00
Ryan Macnak ef8baa8760 Add test harness option for app snapshots with unoptimized code.
./tools/test.py -m all -c dart2appjit -r dart_app --use-blobs

Rename 'dart_product' runtime to 'dart_app'.

Rename Dart_PrecompiledJITSnapshotBlob to Dart_CreateAppJITSnapshot and add documentation.

Remove out-of-date scripts in tools/precompilation.

R=fschneider@google.com

Review URL: https://codereview.chromium.org/1992703005 .
2016-05-26 10:37:47 -07:00
Johnni Winther 326af10bc8 Add names and support for preserialized data to serialization tests
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2013763002 .
2016-05-26 09:36:32 +02:00
Harry Terkelsen b5fbea4f4a accept null type casts in dummy noSuchMethod checks
Fixes #23843

R=sigmund@google.com

Review URL: https://codereview.chromium.org/2009853003 .
2016-05-25 10:14:53 -07:00
Ryan Macnak df4e0d5ac6 ARM/ARM64: Fix smashed CODE_REG in intrinsics with InvokeMathCFunctionInstrs.
X64: Fix smashed ARGS_DESC_REG.

IA32: Remove unnecessary preservation of ICREG.

BUG=http://dartbug.com/26516
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2003403003 .
2016-05-25 10:02:21 -07:00
Sigmund Cherem b741e3f0df Make CompilerTask independent of compiler.
Now this base class only has logic for measuring time.

R=het@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org/2000323006 .
2016-05-25 09:11:08 -07:00
Florian Schneider 374baf4979 Remove timeout status for some tests to check if they pass now.
BUG=#24596
R=zra@google.com

Review URL: https://codereview.chromium.org/2015533002 .
2016-05-25 17:35:05 +02:00
Florian Schneider 80d6af1e0c Revert "Fix capturing variables in optimized compilations"
This reverts commit 4dca5d0e01.

It seems to cause at least one additional test failure:

Repro:
    python tools/test.py -mrelease -asimarm64 --write-debug-log --write-test-outcome-log --copy-coredumps -cprecompiler -rdart_precompiled --exclude-suite pkg -t480 language/async_star_regression_fisk_test

BUG=
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2004373004 .
2016-05-25 13:30:24 +02:00
Johnni Winther 42435f2643 Support multiple resolution inputs from command line.
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2004833003 .
2016-05-25 11:02:34 +02:00