Commit Graph

2317 Commits

Author SHA1 Message Date
Peter von der Ahé aade3541f7 Add some tests for implicit new/const instance creation.
Marked as failing everywhere.

Change-Id: I09d3502ab114c3c6b4f7f69913e34fd35377f7b5
Reviewed-on: https://dart-review.googlesource.com/33440
Reviewed-by: Erik Ernst <eernst@google.com>
2018-01-19 15:26:25 +00:00
Peter von der Ahé f8de9bb52d Update language tests to optional new on constructor invocations
Change-Id: Ibb30489a1ba14e6a336099e820247c30d1882a68
Reviewed-on: https://dart-review.googlesource.com/33721
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-01-19 15:26:25 +00:00
Erik Corry 3c2f9ea88d More SkipByDesign for tests that were moved
R=vegorov@google.com

Change-Id: I9d89ce90428d70ceb48e7eb2b16eb63f0aff8734
Reviewed-on: https://dart-review.googlesource.com/35721
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Erik Corry <erikcorry@google.com>
2018-01-19 09:11:45 +00:00
Jens Johansen 76eb861729 [fasta] Add Null on the list of classes that cannot be extended
Fixes #31817.

Bug: 31817
Change-Id: I7c2f98efee57724b65692fb0daa59ca12623dbe2
Reviewed-on: https://dart-review.googlesource.com/35601
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2018-01-19 06:53:57 +00:00
Jenny Messerly 99ff2be4f6 fix crashing issues in DDK
- fix let nodes used in top-level code
- fix super sets and gets of non-final field
- fix synthetic mixin class name using invalid characters
- add an error class to dart:core to prevent front end crash on duplicate field initializers

Change-Id: I552c8909ae2bcf957443e3dac3bd6c97c64f6ee1
Reviewed-on: https://dart-review.googlesource.com/35540
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-01-18 22:57:54 +00:00
Brian Wilkerson e95486d18e Revert "Add an error when an integer literal is out of bounds"
Change-Id: I2376904a8b92382c0f33212f41c88bafd75f3a15
Reviewed-on: https://dart-review.googlesource.com/35806
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-01-18 22:40:14 +00:00
Sigmund Cherem 2526908e27 Update status for tests not covered by the CQ
TBR=ahe@google.com,johnniwinther@google.com

Change-Id: I150c28edbd95ed1c040c3f9fd48bdd348f796db0
Reviewed-on: https://dart-review.googlesource.com/35807
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-18 22:03:27 +00:00
Sigmund Cherem e2ad2db805 Generate checks for library-is-loaded to fasta and dart2js.
Change-Id: Ibf453ca7390b81da7231dcb1be43e426c00d6eeb
Reviewed-on: https://dart-review.googlesource.com/35100
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2018-01-18 20:17:14 +00:00
Jenny Messerly 3c549480e9 fix enums in DDK
Change-Id: I637a7ddcdbd87d43b02166d443c73a94b2809d00
Reviewed-on: https://dart-review.googlesource.com/35461
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2018-01-18 18:58:45 +00:00
Brian Wilkerson cf7efddb0b Add an error when an integer literal is out of bounds
Change-Id: I8bc9e6e03d76822785f254ec346d82983ea63f2c
Reviewed-on: https://dart-review.googlesource.com/31841
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-18 17:30:54 +00:00
Peter von der Ahé 3fcede3c7f Short-term hack to work around issue with duplicated interfaces.
See dartbug.com/31656

Change-Id: I017085953c5ac41d2cfd7368752918c6fcb51144
Reviewed-on: https://dart-review.googlesource.com/33884
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-01-18 14:10:15 +00:00
Jenny Messerly 3360abe2f2 fix test for #31436 to pass on Dart 2 impls
Change-Id: I8dbd313d455f2a19a0f839de3b831c68dee1a520
Reviewed-on: https://dart-review.googlesource.com/35462
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2018-01-17 23:53:26 +00:00
Erik Corry 2c951120a9 Precompiler without new front end does not supprt Dart2
R=vegorov@google.com
TBR=vegorov@google.com

Change-Id: If8a1ce64f5628c049be0d334fbd28df670777cf4
Reviewed-on: https://dart-review.googlesource.com/35440
Reviewed-by: Erik Corry <erikcorry@google.com>
Commit-Queue: Erik Corry <erikcorry@google.com>
2018-01-17 22:12:08 +00:00
Paul Berry 23cba1d438 Issue a warning if top-level inference depends on an implicitly typed instance getter.
If an implicitly typed top level variable or field depends on an
implicitly typed instance getter or instance field, the analyzer
implementation of type inference isn't guaranteed to infer the
depended-upon field first, therefore the type might be inferred
incorrectly.

The new front end doesn't have this problem, so the user's code will
execute correctly at runtime, but they might get confusing results
from the analyzer.  To alert users of this problem, we issue a
compile-time warning whenever an implicitly typed top level variable
or field depends on an implicitly typed instance getter or instance
field.

Change-Id: I100bcbe1a76472bcb7d493eb12e4a3e2d0605e79
Reviewed-on: https://dart-review.googlesource.com/35385
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-17 21:58:28 +00:00
Jenny Messerly 6f59d5be74 Fix typed JS interop in DDK
Change-Id: Ic36d5dca3b74cd174b62f917f2f49e0920341c1b
Reviewed-on: https://dart-review.googlesource.com/34511
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-01-17 21:46:48 +00:00
Jenny Messerly 8d48151e16 fix #31541, DDC/K for async bodies declared to return FutureOr
Change-Id: I3aa1c9bbdfe95fa6f5759f80850ee8d3d6307bce
Reviewed-on: https://dart-review.googlesource.com/35383
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2018-01-17 21:40:30 +00:00
Erik Ernst 19282359fc Fixed typo in void_type_usage_test
Change-Id: Ia1f7445c35b8b10b1ac2f419a9d11285d4b4f3c7
Reviewed-on: https://dart-review.googlesource.com/35260
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
2018-01-17 19:13:27 +00:00
Paul Berry 7339e1ffe7 Fix handling of forwarding semi-stubs in the front end.
See #31649 for more details about forwarding semi-stubs.

Change-Id: I2af7fb0c5de01d7732279a6ca8254985f396683a
Reviewed-on: https://dart-review.googlesource.com/35003
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-17 17:47:58 +00:00
Paul Berry 52c036c6f8 Always infer the return type of operator[]= as void.
Fixes #31779.

Change-Id: Ib7c2b79271ce7eca7ec8143ceb425c73e72f7cc1
Reviewed-on: https://dart-review.googlesource.com/35005
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-17 13:46:08 +00:00
Erik Corry 5ed2f25f40 There is no longer a safarimobilesim test runtime.
And so there is no need to maintain status files for this platform.

R=whesse@google.com

Change-Id: Ie70e4b7308cfd9b1b179b2d1eeeb8f36dd1a62dc
Reviewed-on: https://dart-review.googlesource.com/34824
Commit-Queue: Erik Corry <erikcorry@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2018-01-17 13:13:17 +00:00
Erik Corry 0f70f94992 Don't run dart2 tests without common front end
The bare VM without the common front end (kernel) does not support Dart2
semantics, which are assumed in the corelib_2 and language_2 directories. For
now we still run the bare VM in checked mode on these tests, since that is
mostly compatible, and gives us better coverage.

R=vegorov@google.com

Change-Id: I1a1ca939d8a33503d19b683b0e5539e0fa6e9dc1
Reviewed-on: https://dart-review.googlesource.com/35160
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Erik Corry <erikcorry@google.com>
2018-01-17 09:37:17 +00:00
Johnni Winther 897114ff79 Update dart2js_with_kernel status
Change-Id: Icf935c78ba915b487c1213d59b328ab884324e5d
Reviewed-on: https://dart-review.googlesource.com/35140
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2018-01-17 08:00:40 +00:00
Sigmund Cherem 614ff2a4d7 Fix .status file for tests in strong mode
I forgot to update these two suites :(

TBR=het@google.com

Change-Id: Ia5c98ee4338e6e52ca997b581e0511042fe1b71c
Reviewed-on: https://dart-review.googlesource.com/35062
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-17 01:12:18 +00:00
Sigmund Cherem 9cdf04e8ee Mark conditional_import_tests as passing in dart2js
TBR=sjindel@google.com

Change-Id: I6310ce0f1dae916d4075453ed6fcdad2fcb1f38e
Reviewed-on: https://dart-review.googlesource.com/35061
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-17 00:58:26 +00:00
Leaf Petersen 88e02e6420 Mark 2.0 test as failing on 1.0 analyzer.
TBR=paulberry@google.com

Change-Id: I8de2cfa8ba161009d53a023307d86c90be89b325
Reviewed-on: https://dart-review.googlesource.com/35040
Reviewed-by: Leaf Petersen <leafp@google.com>
2018-01-17 00:27:28 +00:00
Samir Jindel ce1294fe3d [kernel] Lookup import conditions against the core library's loader.
Change-Id: Ib16d9f33a40ee25aed2a86a29a74bbc2b301d2e4
Reviewed-on: https://dart-review.googlesource.com/34940
Reviewed-by: Samir Jindel <sjindel@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2018-01-16 23:21:42 +00:00
Leaf Petersen 6b3576f673 Fix fuzzy arrow issues in tests.
Also fixes a variety of miscellaneous accidental strong mode compile time or runtime check violations.

Change-Id: Ia8a41ac291aff3689efae0b11a9c51a2db30ef33
Reviewed-on: https://dart-review.googlesource.com/34924
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2018-01-16 23:08:01 +00:00
Sigmund Cherem 0c04eb53c7 Disable int64 when running dart2js
The goal is to renable it as soon as we migrate our constant-evaluator and
constant folding to use Bigint.

Change-Id: I3bba1bbe07517e9cb496896b3417f58173878d62
Reviewed-on: https://dart-review.googlesource.com/34302
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2018-01-16 19:52:22 +00:00
Sigmund Cherem f1390f7660 Add missing return in loadLibrary tearoff
The code to represent a tearoff of loadLibrary looked like this:

  Future __loadLibrary__lib1 () {
    lib1.loadLibrary();
  }

but should have been like:

  Future __loadLibrary__lib1 () {
    return lib1.loadLibrary();
  }

Change-Id: I31efb5bee9f7e376660602c1b842a90a0a2659a4
Reviewed-on: https://dart-review.googlesource.com/34510
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Emily Fortuna <efortuna@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-01-16 19:35:32 +00:00
Alexander Thomas 93d8c9fe2a [gardening] Update status for passing tests on VM Kernel debug
TBR=whesse@google.com

Bug:
Change-Id: Iba2ad6e88d9e32f2c83dc22440404bf778120076
Reviewed-on: https://dart-review.googlesource.com/34941
Reviewed-by: Alexander Thomas <athom@google.com>
2018-01-16 18:49:53 +00:00
Alexander Thomas f152e19dbe [gardening] Correct status for vm-kernel-precomp
Change-Id: I1f683802142ae6a041ebe9385a3f65262a9b9158
Reviewed-on: https://dart-review.googlesource.com/34901
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-16 17:27:39 +00:00
Dan Rubel b79696982d Improve extraneous or out of position modifier recovery
In addition to improving modifier recovery, this CL
* Improves recovery when builtin keywords are used as types
* Updates ModifierContext to avoid parsing modifiers used as identifiers
* Addresses comment in https://dart-review.googlesource.com/c/sdk/+/34200
* Streamlines missing class body recovery
* Ensures the endMember event is sent during recovery

Change-Id: I87bda7c7da9d0e951427037087c7aa7e8e4da109
Reviewed-on: https://dart-review.googlesource.com/34520
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-01-16 17:24:12 +00:00
Erik Ernst d09b922203 Added noSuchMethod forwarding test and adjusted status files
Change-Id: Ifee4f2e8810efa1fd5b08fd7544b71a3d27ff263
Reviewed-on: https://dart-review.googlesource.com/34800
Commit-Queue: Erik Ernst <eernst@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-01-16 15:52:12 +00:00
Alexander Thomas 27ebef64d4 [infra] Add VM Kernel Windows x64 builders
Bug: https://github.com/dart-lang/sdk/issues/31707
Change-Id: Ie56f4c6f78c9b7c27fc4f587857e412db3e8f358
Reviewed-on: https://dart-review.googlesource.com/33960
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-16 15:39:03 +00:00
Martin Kustermann 09035067fe Update status files to get sim* builders green
Change-Id: Ib3e6b8da4ee59d83da978e44a7611388f974aa23
Reviewed-on: https://dart-review.googlesource.com/34662
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-01-16 10:04:32 +00:00
Vyacheslav Egorov ff008ca37a [vm/kernel/async] Use proper type argument when createing async* controller.
Change-Id: I40e5d2d933b83a24c9d8177437fb6df1f21b5cc1
Reviewed-on: https://dart-review.googlesource.com/34741
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-15 22:06:30 +00:00
Martin Kustermann 0bc46de838 [VM] Support spawning isolates when the main isolate was spawned from a Kernel IR file
Issue https://github.com/dart-lang/sdk/issues/31698

Change-Id: Ifc6662a3fd56245c10f5d924f771ef85ed9b222c
Reviewed-on: https://dart-review.googlesource.com/34742
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-01-15 17:51:54 +00:00
William Hesse c989cdd6ca Update status for VM kernel precompiled mode
This fixes two incorrect status changes in commit 473eb4be4.
There were duplicate lines for some tests and the wrong line
was removed for two of them.

TBR: sjindel@google.com
Change-Id: I518d444d0717f6e6b76130dd284746d6f100c54a
Reviewed-on: https://dart-review.googlesource.com/34700
Reviewed-by: William Hesse <whesse@google.com>
2018-01-15 16:02:43 +00:00
William Hesse 473eb4be4b Update status for Dart kernel precompiled VM tests after commit 42a6399
Follow-up to https://dart-review.googlesource.com/c/sdk/+/34400

Change-Id: I6d07c4a0023d4a5fc227d01fe83943f7389c9ff2
Reviewed-on: https://dart-review.googlesource.com/34587
Reviewed-by: Samir Jindel <sjindel@google.com>
Commit-Queue: William Hesse <whesse@google.com>
2018-01-15 14:38:40 +00:00
Martin Kustermann e9608b25b5 [VM] Make noSuchMethod handling on simdbc work for closure calls with generic type arguments
Currently the [Invocation] class does not actually have support for
storing the type argument vector passed on the call site of an NSM (see
issue https://github.com/dart-lang/sdk/issues/27323).

Nonetheless do we need to support calling NSM where the call site has
type arguments provided.

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

Change-Id: I0f7db12d3e8c60e45c2a3b501c39fc1d4fc796ae
Reviewed-on: https://dart-review.googlesource.com/34584
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-01-15 13:44:31 +00:00
Erik Ernst bf5b9087d2 Adjusted language_2/void_type_usage_test.dart
Adjusted return types such that `return` test cases test the intended
situation; added new `testReturnToVoid` function to test the case which
was previously overlooked (that is, "`return e;` where `e` has type
void is OK in void function).

Change-Id: I9859b5ff33f0ac5d1e33d16f40fe57a6c1a7b4d0
Reviewed-on: https://dart-review.googlesource.com/34582
Commit-Queue: Erik Ernst <eernst@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-01-15 11:46:06 +00:00
Samir Jindel 42a639973d [kernel] Support for partial tearoff type application operator in the VM, take 3.
The original change is available in patchset 1.
The changes since then are just status file updates.

Change-Id: I0c45c4b09a187bdd60c6a38bf23f6b7a0cf80c97
Reviewed-on: https://dart-review.googlesource.com/34400
Reviewed-by: Jens Johansen <jensj@google.com>
2018-01-15 11:24:11 +00:00
Paul Berry 45b02f8216 Use the new spec for Future flattening for type inference
Change Fasta type inference and Kernel type checking to use the new
definition for Future flattening, which is really unwrapping (peeling
off one layer of Future or FutureOr).  Use this for inferring types of
`await` expressions and return types from `async` functions.

Ensure that we are using the same notion of flattening for inference
and checking.  (Maybe it was a red flag that we weren't.)

This fixes await_test so that it produces a runtime error rather than
a compile time error - see #31541.

A similar change will need to be made to the analyzer - see #31887.

Change-Id: I7d936e9788969a48fdc216628eaa793389fb5e30
Reviewed-on: https://dart-review.googlesource.com/34504
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2018-01-15 07:09:36 +00:00
Jenny Messerly f17ccdfbea fix #31782, implement not-null analysis for dartdevk
Conceptually this is a port of analyzer/nullable_type_inference.dart.
It contains some refactoring and other improvements, as well as tests.

Change-Id: I448440793f11e2e87583d9d47c0e6a1e54ae21f7
Reviewed-on: https://dart-review.googlesource.com/34308
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-01-12 22:40:50 +00:00
Régis Crelier 0c2793b3db [VM runtime] Implement support for _extractTypeArguments in the VM (fixes #31805).
Update status files.

This cl includes implementing these two features on all platforms:
1) Support calling generic functions via DartEntry::InvokeFunction().
2) Support native generic functions. These are currently allowed, but type
   arguments are ignored, and therefore not accessible from the C++ side.

Change-Id: Id39e8ca46c2ba1ba3d46946c16712a8572ff64ea
Reviewed-on: https://dart-review.googlesource.com/34023
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-01-12 21:32:20 +00:00
Jens Johansen 225baefc9b Fix DDK status after revert
Change-Id: I8af8ff2152db5144517f30949e85b5adc0594cc9
Reviewed-on: https://dart-review.googlesource.com/34360
Reviewed-by: Jens Johansen <jensj@google.com>
2018-01-12 10:18:33 +00:00
Jens Johansen 68c054d27f Revert "[kernel] Unrevert "Support for the partial tearoff type application operator in VM.""
This reverts commit 784ee768d8.

Reason for revert: Turns many kernel bots red.

Original change's description:
> [kernel] Unrevert "Support for the partial tearoff type application operator in VM."
> 
> The original revision is available in the first patchset.
> 
> Change-Id: I579b4b85a19ac17088eed050680a46df7ffc5c0a
> Reviewed-on: https://dart-review.googlesource.com/34102
> Commit-Queue: Samir Jindel <sjindel@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>

TBR=kustermann@google.com,sjindel@google.com

Change-Id: I7262f9b578bf9991f1e79aacb88c446950c79bc7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/34340
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2018-01-12 08:44:05 +00:00
Jenny Messerly 9179fd5103 implement generic function instantiation in DDK
Change-Id: Id7307b7e8a31b96da3ac765a0936f7c7e675465e
Reviewed-on: https://dart-review.googlesource.com/34303
Reviewed-by: Vijay Menon <vsm@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2018-01-12 02:01:13 +00:00
Régis Crelier 0f08aababa [VM parser] Fix look-ahead parsing of void as type argument.
This is part of implementing generalized void, see #30516.
Add regression test.
Update status files.

Change-Id: I0b4730734238b4dc463ddd7835e30ea8a2bd4300
Bug:
Reviewed-on: https://dart-review.googlesource.com/34224
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-01-11 23:42:54 +00:00
Sigmund Cherem cc765499f0 Fix strong test status
TBR=efortuna@google.com

Change-Id: I03936aec3ce113d57d089265d746f7199d0adab0
Reviewed-on: https://dart-review.googlesource.com/34260
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-11 22:21:08 +00:00