Commit Graph

2317 Commits

Author SHA1 Message Date
Dmitry Stefantsov cf2966ea0d [fasta] Generate noSuchMethod forwarders for abstract accessors
Fixes #32722

Bug: http://dartbug.com/32722
Change-Id: I5a2b29c766a82e06949028dccb69680c685e1ba4
Reviewed-on: https://dart-review.googlesource.com/62151
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
2018-06-27 13:38:07 +00:00
Kevin Millikin df2529d443 Detect when a class has a member that conflicts with a static one
In Dart 2 classes are not allowed to have an instance method, getter,
or setter that conflicts with a static method, getter, or setter
declared in the class.  Detect this at the start of top-level type
inference when we build an explicit interface for every class.

Change-Id: I39c1887a07fde0c40367d8f243a37f06dfbba353
Reviewed-on: https://dart-review.googlesource.com/60581
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-06-27 09:30:58 +00:00
Zach Anderson 5c9e9a6661 [gardening] Update status file
related #33628

Change-Id: Ifd642cedd0e4621b3eac281723bbff417dad49c1
Reviewed-on: https://dart-review.googlesource.com/62321
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-06-26 16:39:44 +00:00
Leaf Petersen e67c5953e9 Relax return restrictions.
Change-Id: Ica37ff2ac1e206fb4dfc8448af7ecead2c031dd4
Reviewed-on: https://dart-review.googlesource.com/62220
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Leaf Petersen <leafp@google.com>
2018-06-26 15:56:35 +00:00
Stephen Adams 56d57407e1 Fix status for new test
TBR=jensj@google.com

Change-Id: I03c004685371621eb5e9a7fec0b40853d62fce1b
Reviewed-on: https://dart-review.googlesource.com/62281
Reviewed-by: Stephen Adams <sra@google.com>
2018-06-26 05:50:17 +00:00
Stephen Adams ed20faa2ed Add test for rejecting inexact numbers
Change-Id: Ic206f54096dedac9de918d3840da405a6ce1f262
Reviewed-on: https://dart-review.googlesource.com/61762
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2018-06-26 04:51:44 +00:00
Mike Fairhurst 3640037164 Fix second half on #33343: disallow generic functions as type arguments.
There is a seeming parse error in typedefs, and an open question on the
issue (33343) about what to do when a generic function type is inferred.

Otherwise this seems ready to go.

Bug: 33343
Change-Id: I10d2ea9b6ca26ed2c6ff6b24ffe5008fc4797ef2
Reviewed-on: https://dart-review.googlesource.com/61109
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-06-25 18:02:04 +00:00
Martin Kustermann 2ff5f8cfcb [VM] Report an error when accessing constructor parameters inside a constructor invocation
Closes https://github.com/dart-lang/sdk/issues/33604

Change-Id: I84034499de43ea300b278f2f922bc73c565e8bcc
Reviewed-on: https://dart-review.googlesource.com/61934
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-06-25 12:05:53 +00:00
Vyacheslav Egorov f9a11ec380 [gardening] Mark language_2/const_constructor_nonconst_param_test/01 failing in dartkp
Bug: https://github.com/dart-lang/sdk/issues/33604
Change-Id: Ib3f5196f529ea91f6c55914cc697270a80e0b2d9
Reviewed-on: https://dart-review.googlesource.com/61928
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-06-25 06:39:22 +00:00
Johnni Winther a8d805055a Handle covariant parameters in function types
Closes #33575

Change-Id: I743a951f5864ca538b588441ecba2680eba2081f
Reviewed-on: https://dart-review.googlesource.com/61924
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-06-22 20:24:55 +00:00
Alexander Markov eafa9ae4b6 [vm/kernel] Fix StreamingConstantEvaluator to handle non-const variables
Fixes https://github.com/dart-lang/sdk/issues/33214

Change-Id: I7991b537204f160b2991abf9995685e4cae69f88
Reviewed-on: https://dart-review.googlesource.com/61682
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-06-22 17:16:45 +00:00
Alexander Markov c4d6ac0cbe [vm/compiler/aot] Implement non-speculative int64 shift operation
Closes https://github.com/dart-lang/sdk/issues/33364

Change-Id: I9432d82a1ee58fbbdc1b54b810a71c2c7ddd8fce
Reviewed-on: https://dart-review.googlesource.com/59821
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-06-22 15:43:28 +00:00
Dmitry Stefantsov 4fe71ec275 [fasta] Report instantiate-to-bound failure due to non-simple bounds
Fixes #33208, #31810, #32416, #32417

Bug: http://dartbug.com/33208
Bug: http://dartbug.com/31810
Bug: http://dartbug.com/32416
Bug: http://dartbug.com/32417
Change-Id: Id178daf35be459fdefe04091bf929b5743d89e81
Reviewed-on: https://dart-review.googlesource.com/41264
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-06-22 13:41:55 +00:00
Jens Johansen 6888bc2824 Compile time error for web int literals that cannot be represented exactly
Bug: #33351
Change-Id: I2b99858dfc276dc70c3a36c289030e801145af86
Reviewed-on: https://dart-review.googlesource.com/61180
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2018-06-22 10:47:54 +00:00
Johnni Winther 075c713a93 Register type arguments on inlining
Closes #33529

Change-Id: I992552a400199490959d10de8c838e56015159e5
Reviewed-on: https://dart-review.googlesource.com/61522
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2018-06-22 08:24:13 +00:00
Ben Konyi d5d5daf411 Fixed cascade_test failure due to return type of operator []= being non-void.
Change-Id: I0e9bdc77442b3f566f1e4a7653c2d4564507e726
Reviewed-on: https://dart-review.googlesource.com/60700
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2018-06-21 17:31:33 +00:00
Dmitry Stefantsov 10641cbf42 Update status files after 52b2a869bc
Change-Id: Icf921a4159d296ee86bfcee61deee06259886085
Reviewed-on: https://dart-review.googlesource.com/61561
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2018-06-21 14:21:33 +00:00
Dmitry Stefantsov 52b2a869bc Update some noSuchMethod based tests to the currently desired behavior.
Fixes #33498

Bug: http://dartbug.com/33498
Change-Id: I4a62a830cc8993748da816967753a8ce9a025d46
Reviewed-on: https://dart-review.googlesource.com/61500
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-06-21 12:54:42 +00:00
Dmitry Stefantsov 71ac67aed1 [kernel] Recognize noSuchMethod forwarders in class hierarchy analysis
Fixes #33517

Bug: http://dartbug.com/33517
Change-Id: Icc357724d83197a630e9c6b4dad38b509343f0b1
Reviewed-on: https://dart-review.googlesource.com/61261
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2018-06-21 10:24:12 +00:00
asiva 34bbb1da30 [Gardening] Move status line to the correct section.
Change-Id: Id17768278ac3671667440a01a13da26621aa1b37
Reviewed-on: https://dart-review.googlesource.com/61309
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2018-06-20 19:49:42 +00:00
asiva 075027b130 Added super_no_such_method5_test also to the issue list for 33517
Change-Id: I9641a90ee2601422f53574014782f3263a8ede02
Reviewed-on: https://dart-review.googlesource.com/61303
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-06-20 17:17:46 +00:00
Dmitry Stefantsov a3a8d8bbd5 [VM][kernel] Don't mix in noSuchMethod forwarders
Bug: http://dartbug.com/33380
Change-Id: I57f85e1e33105c4ffcb6a9c8a970cfbc42318936
Reviewed-on: https://dart-review.googlesource.com/60924
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2018-06-20 12:57:41 +00:00
Johnni Winther 1c4b362ba5 Support noSuchMethod forwarders in dart2js
Closes #32750

Change-Id: Ib2f358b14ae5a079e3df8413013ecfc006f0e69b
Reviewed-on: https://dart-review.googlesource.com/60250
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-06-20 10:15:41 +00:00
Jens Johansen 276598199e Make DDK interpret IntLiteral.value as uint64
As per bug #33351, and based upon what dart2js does.

Change-Id: I18fec2685b22b094d191f4c70a58553a9132b86c
Reviewed-on: https://dart-review.googlesource.com/60841
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2018-06-20 08:18:19 +00:00
Alexander Markov 437b492042 [gardening] Update status for reload-kernel bots
Change-Id: Ic0b4e9917e43d673ce0781ec1873804011cb0252
Reviewed-on: https://dart-review.googlesource.com/61040
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-06-19 19:02:46 +00:00
Martin Kustermann f3960a0111 Fix language_2/vm/optimized_guarded_field_isolates_test
This fixes some hot reload/rollback builders.

Issue https://github.com/dart-lang/sdk/issues/31402

Change-Id: I6f9f3c80f1f70b0f7084bd0c162affa125f43ba1
Reviewed-on: https://dart-review.googlesource.com/60963
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-06-19 15:48:47 +00:00
Martin Kustermann e496efb611 [VM] Adjust status file after 6db5f38d4e
Change-Id: Ibdf04c5cc2b60858f108199e5cd18b6c4a6fb19f
Reviewed-on: https://dart-review.googlesource.com/60962
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-06-19 15:31:41 +00:00
Dmitry Stefantsov 6db5f38d4e [fasta] Don't generate noSuchMethod forwarders in abstract classes
Bug: http://dartbug.com/33482
Change-Id: I4c9b2e9a43fdcd37238ede5814b2ad471f7b2c4d
Reviewed-on: https://dart-review.googlesource.com/60847
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2018-06-19 14:18:33 +00:00
Martin Kustermann 856c7c67ea Skip standalone_2 on !strong configurations (for JIT / AOT VM)
This should make vm-precomp-win-simarm64-2-4-be go green.

Change-Id: I9d3f54312751ff0c00a40078c71e72e11048e3e9
Reviewed-on: https://dart-review.googlesource.com/60922
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-06-19 13:07:13 +00:00
Peter von der Ahé bd94de8e48 Use dynamic to fix string_interpolate_test
Change-Id: I48f7b1127e5c61f9c399ac32d7118adc110a6519
Reviewed-on: https://dart-review.googlesource.com/60846
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-06-19 10:58:45 +00:00
Martin Kustermann b172a42881 [VM] Catch errors for integer operations in kernel2kernel constant evaluator
Issue https://github.com/dart-lang/sdk/issues/33481

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

Change-Id: I7ca9825a0aa5f062732a759b4dd116e716a0d1b3
Reviewed-on: https://dart-review.googlesource.com/60580
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-06-19 10:28:05 +00:00
Mike Fairhurst 0a59b2ff90 Fix test cases that await "void." Blocks #33415, making that an error
Change-Id: I758d66d5112de631283adc791c0e33b3b98edfc1
Reviewed-on: https://dart-review.googlesource.com/60707
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-06-18 20:33:13 +00:00
Johnni Winther c84a9f46b2 Recompute ClassHierarchy after adding noSuchMethod forwarding stubs
Change-Id: Idcd1ba9e43a917a526d0687be8e5b84a267042a2
Reviewed-on: https://dart-review.googlesource.com/60422
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-06-18 08:12:06 +00:00
Leaf Petersen 8e9e8e1da0 Fix various bugs and regularize behavior of returns statements in
various kinds of functions.

Closes-bug: #31887
Closes-bug: #30638
Closes-bug: #32233
Closes-bug: #32881
Closes-bug: #31278
Change-Id: I4ebd7e71096d611e189b571ba5de2998dd11c98b
Reviewed-on: https://dart-review.googlesource.com/60300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Leaf Petersen <leafp@google.com>
2018-06-15 16:07:44 +00:00
Aske Simon Christensen 08de1b30aa Error when a file is a part of more than one library
Fixes https://github.com/dart-lang/sdk/issues/32999

Corresponding spec issue: https://github.com/dart-lang/sdk/issues/33225
Issue for co19 fix: https://github.com/dart-lang/co19/issues/149

The code contains a temporary hack that works around the co19 use.
This hack can be removed when the co19 fix rolls in.

Change-Id: I61b50c9142f4b215fc4d9258f1259e24ab4c052f
Reviewed-on: https://dart-review.googlesource.com/56521
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-06-13 12:55:20 +00:00
Johnni Winther 7321f938d5 Use default type for type variable bounds.
Change-Id: I5d21a16a76eb6cd898e8e11104d0be0f7e669426
Reviewed-on: https://dart-review.googlesource.com/59420
Reviewed-by: Stephen Adams <sra@google.com>
2018-06-12 09:05:09 +00:00
Stephen Adams 1fb845c2f4 [dart2js] Apply stub should default type parameters
Change-Id: Ie01ade9b6e561a96a3ac06bf13617bb679122c63
Reviewed-on: https://dart-review.googlesource.com/59020
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2018-06-12 01:10:39 +00:00
Aske Simon Christensen f20672e00a Parse name of factory as method name instead of constructor reference.
Report an error when a factory constructor has type parameters.

Report a better error than the old "couldn't find constructor" or
"illegal method name" when the name of a constructor does not match
the name of the enclosing class.

Fixes https://github.com/dart-lang/sdk/issues/31196

Change-Id: Ie46a5b4cbe07ba05ce2936e1f8f9ca2cad0208f7
Reviewed-on: https://dart-review.googlesource.com/57620
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-06-11 09:55:24 +00:00
Samir Jindel b45482a989 [kernel/vm/precomp] Update status file for duplicate_interface_implements_test/01.
Change-Id: I27ddf1ee2d53033f376c8404c5aec7dac0d5275c
Reviewed-on: https://dart-review.googlesource.com/59620
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
2018-06-10 16:53:03 +00:00
Bob Nystrom 67525aef37 Convert a batch of negative tests to multitests.
Change-Id: I380c12ef633ec8c40de982782623d3e3659a4834
Reviewed-on: https://dart-review.googlesource.com/57162
Reviewed-by: Leaf Petersen <leafp@google.com>
2018-06-08 19:43:34 +00:00
Jenny Messerly 976aa4074b Run dartdevk against its own compiled SDK and packages
Currently we test dartdevk against SDK/packages that were compiled with
dartdevc (DDC+Analyzer). This CL migrates to having those files compiled
with DDC+Kernel. dartdevc testing is unchanged.

Most of the fixes are around things like special optimized annotations
used in our SDK code, that were not understood by DDK. Also some inline
JS type annoations were not correct.

Change-Id: Iccf4427e4b9beffd6d97a4be654253d91f6cb89e
Reviewed-on: https://dart-review.googlesource.com/57800
Reviewed-by: Vijay Menon <vsm@google.com>
2018-06-08 19:18:34 +00:00
Régis Crelier 7302222c6d [VM runtime] FutureOrTypeTest code does not account for TypeRef's (fixes #33392)
Change-Id: I62d67b80e1da1ace6a16b89c3d533d3d37a9d6b2
Reviewed-on: https://dart-review.googlesource.com/59380
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-06-08 17:21:38 +00:00
Martin Kustermann a4af44b470 [VM] Do not invoke any functions during AOT compilation
In Dart 2.0 AOT compilations we give dart_bootstrap/gen_snapshot the
fully linked Kernel IR file (*.dill file) with evaluated constants.

This CL will make the 2.0 AOT compiler

   * only accept .dill files as input
   * no longer invoke various functions during startup
   * no longer start the VM service
   * hit unreachable in DartEntry::InvokeFunction()

Issue https://github.com/dart-lang/sdk/issues/33185

Change-Id: Iaba44386633856774a0c29be043780b9b262df0f
Reviewed-on: https://dart-review.googlesource.com/56520
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2018-06-06 10:56:10 +00:00
Emily Fortuna 134e00fd73 Treat 64 bit ints as unsigned until conversion to JS.
Change-Id: Idb9c5d4a3562f59bc75a5bb7eef4b7af8f5df992
Reviewed-on: https://dart-review.googlesource.com/57714
Commit-Queue: Emily Fortuna <efortuna@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2018-06-06 00:28:28 +00:00
Vyacheslav Egorov 7b972a653b [vm/linearscan] Account for definitions with no SSA name when processing PairLocation outputs.
ToSecondPairVreg(kNoVirtualRegister) should be kNoVirtualRegister not 0.

Revert fe28a2939a which updated statuses for
crashing tests.

Fixes https://github.com/dart-lang/sdk/issues/33329

Bug: https://github.com/dart-lang/sdk/issues/33329
Change-Id: I48e95bcb6f95555ec9ac51adc1f61619fbf40139
Reviewed-on: https://dart-review.googlesource.com/58461
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2018-06-05 17:41:34 +00:00
Alexander Markov fe28a2939a [Test Status] filter crashes for #33329
Issue: https://github.com/dart-lang/sdk/issues/33329
Change-Id: I16a9241631b081cf9db97d7a6065ed805daaac95
Reviewed-on: https://dart-review.googlesource.com/58420
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-06-04 23:57:19 +00:00
Alexander Thomas a9257d05fb [vm] Prepare status files for dartk reload/rollback builders (#33126)
Change-Id: I954debb9f258eb94de227f6772ff08b53daba322
Reviewed-on: https://dart-review.googlesource.com/57623
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-06-04 11:30:21 +00:00
Kevin Millikin 6ac6baae8e Record interfaceTargets for calls on dynamic receivers
When calling Object methods on dynamic receivers, record the
interfaceTarget it Kernel.  Back ends will use this to treat the call
as a statically typed one.  This is half of the problem in
https://github.com/dart-lang/sdk/issues/33293

Bug: https://github.com/dart-lang/sdk/issues/33293
Change-Id: I8d05903e5b85370a4e697ad3afc494cbc14bcc6a
Reviewed-on: https://dart-review.googlesource.com/57820
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-06-04 09:47:21 +00:00
Alexander Markov c8860b4ca2 Remove all uses of --limit-ints-to-64-bits VM option
VM option --limit-ints-to-64-bits was enabled by default a while ago,
and now we're preparing to remove it from Dart VM.

This CL removes all uses of this option in preparation for this cleanup.

Issue: https://github.com/dart-lang/sdk/issues/33306
Change-Id: I8f33cf4ca8ce7ef9a171a982346e43dd8cb722a9
Reviewed-on: https://dart-review.googlesource.com/57960
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-06-01 19:32:24 +00:00
Aske Simon Christensen e9818eefd8 Update analyzer status about type parameters on constructors.
Change-Id: I3e7a48b608246dc512e415d8b6a11e16ac42e48f
Reviewed-on: https://dart-review.googlesource.com/57824
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-06-01 15:28:22 +00:00