Commit Graph

56224 Commits

Author SHA1 Message Date
Dmitry Stefantsov fe3f87f192 [fasta] Reland "Handle annotations on formals and variables"
The original CL: https://dart-review.googlesource.com/c/sdk/+/51840

Bug: http://dartbug.com/28434
Change-Id: I0812ef4223337f5bf72218dfac0f26f76a6b9df1
Reviewed-on: https://dart-review.googlesource.com/52449
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2018-05-09 09:53:42 +00:00
Johnni Winther 4c7926107e Remove support for --use-old-frontend option
Change-Id: Ia6e7ded5e312cce4841ded8170fc01a51f07b098
Reviewed-on: https://dart-review.googlesource.com/54229
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-09 09:11:01 +00:00
Martin Kustermann 039e8a1755 [vm/kernel] Enable kernel2kernel "constants" transformation in AOT mode (after running TFA)
This CL also uses the newer `onProblem` error reporting mechanism, which supports contexts.

The errors by the constant evaluator are formatted e.g. like this:

    .../language_2/compile_time_constant_o_test_01.dart:14:8: Error: Duplicate keys are not allowed in constant maps (found duplicate key "StringConstant(foo)").
      "foo": 499
       ^
    .../language_2/compile_time_constant_o_test_01.dart:32:24: Context: While analyzing:
      Expect.identical(m1, m3);

Change-Id: I463416e14686e218b0f08903bd6aa0bca7392260
Reviewed-on: https://dart-review.googlesource.com/53021
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2018-05-09 09:00:02 +00:00
Erik Ernst 2f781e46b0 Introduced support for metadata on enum values
Change-Id: Ib39a11356f0c356cdca609da0392c168d1c0f20c
Reviewed-on: https://dart-review.googlesource.com/54242
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
2018-05-09 08:27:08 +00:00
Lasse Reichstein Holst Nielsen 862a894de6 Make cast do the same things as retype.
Deprecate `retype` and forward it to `cast`.

Change-Id: Ie17ffdd1eef0d3f19582bf638c5349927c7b5ebd
Reviewed-on: https://dart-review.googlesource.com/53802
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
2018-05-09 08:00:08 +00:00
Johnni Winther b347839ee6 Remove impact_test
A replacement is in progress in another CL.

Change-Id: Ib1eda85caa10c5e5a00f4c9e1b5c1605a2a56da6
Reviewed-on: https://dart-review.googlesource.com/54227
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-09 07:55:08 +00:00
Johnni Winther 3adb731af3 Remove id equivalence test and ast id helpers
Change-Id: Icac1794fe791f75f969a04072555468ee91fb5c4
Reviewed-on: https://dart-review.googlesource.com/54226
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-09 07:55:08 +00:00
Johnni Winther d0112f4431 Remove old frontend equivalence tests
Change-Id: I18b4b9979aea44b4dec64a5f1a32e67118b54a97
Reviewed-on: https://dart-review.googlesource.com/54222
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-09 07:55:08 +00:00
Johnni Winther 17e22dfcd3 Remove unneeded kernel tests and sourcemap old-frontend tests
Change-Id: Iaf9533a812df5c872f223bce17ec7127f0b46318
Reviewed-on: https://dart-review.googlesource.com/54200
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-09 07:55:08 +00:00
Alexander Thomas a0d3bef5fb [release] Prepare changelog for 2.0.0-dev.54.0
TBR=sortie@google.com

Change-Id: I42a914ba39a6744b1940639ce4833f8869ca9a6f
Reviewed-on: https://dart-review.googlesource.com/54381
Reviewed-by: Alexander Thomas <athom@google.com>
2018-05-09 07:39:05 +00:00
Alexander Thomas 2f924e457e Revert "[infra] Temporarily remove windows builder from the CQ"
This reverts commit 95fab34cdf.

Reason for revert: https://crbug.com/840836 is fixed.

Original change's description:
> [infra] Temporarily remove windows builder from the CQ
> 
> TBR=whesse@google.com
> 
> Change-Id: I78eedc9ecfaead1823fcb2d0d204fe4c31b9cad7
> Reviewed-on: https://dart-review.googlesource.com/54224
> Reviewed-by: Alexander Thomas <athom@google.com>

TBR=whesse@google.com,athom@google.com

Change-Id: Iba974cd634a404fd977c8cdd50bf00600cb2bb84
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/54380
Reviewed-by: Alexander Thomas <athom@google.com>
2018-05-09 07:34:04 +00:00
Konstantin Shcheglov fd9823ae9e Issue 21965. Add Quick Fix for adding missing named parameter.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/21965
Change-Id: I81a39df6fd38f9f562b494483b3fe0f67f9a627b
Reviewed-on: https://dart-review.googlesource.com/54360
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-09 06:44:38 +00:00
Konstantin Shcheglov 964dae472c Issue 30577. Use AST to find position for the first directive.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/30577
Change-Id: If69df5f49228a3b698544dcf82ad0c34c1be84e8
Reviewed-on: https://dart-review.googlesource.com/54307
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-09 06:00:59 +00:00
Alexander Aprelev 74d03e7a75 Add a test that reproduces hot reload issue when class type arguments change.
Bug: https://github.com/dart-lang/sdk/issues/32942
Change-Id: I7f10a327a82ddf23a946b1ba98c63c2e7947d99f
Reviewed-on: https://dart-review.googlesource.com/54313
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2018-05-08 23:31:39 +00:00
Sigmund Cherem 3beb7fe860 Fix how we pass the type-parameter to StreamIterator in for-in
Change-Id: If2b33bc9bbee93e67f6da621db0287730b61b223
Reviewed-on: https://dart-review.googlesource.com/54311
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-05-08 23:01:58 +00:00
Konstantin Shcheglov cc034472bb Fix LineInfo.getOffsetOfLineAfter().
Or we could remove it altogether.
It is not used outside of analyzer/analysis_server/analyzer_plugin.

R=brianwilkerson@google.com

Change-Id: I89c90fc0881f2b1602128f8aacdda2762c4e7920
Reviewed-on: https://dart-review.googlesource.com/54306
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-08 20:28:07 +00:00
Vyacheslav Egorov f2b137343c Do not run analyzer benchmarks in checked mode.
Change-Id: Ib591a981d29ae671c6c6ea3b4f1e64e098607a5a
Reviewed-on: https://dart-review.googlesource.com/54230
Reviewed-by: Jonas Termansen <sortie@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
2018-05-08 19:44:37 +00:00
Ryan Macnak 702aca4ab1 [vm] Address TODOs for warn on unused result.
Change-Id: Ie4124277271e2d784b4b5bd1ec87c67f9b2f2790
Reviewed-on: https://dart-review.googlesource.com/54301
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-05-08 19:36:28 +00:00
Zach Anderson ac6ea06fd2 [dart:io] Switch ProcessStartMode back to an enum
Switching ProcessStartMode back to an enum due to problems with
package:process (https://github.com/google/process.dart/blob/master/lib/src/record_replay/run_manifest_entry.dart#L11)

Change-Id: I7db55a6a2107c9469d264e0539844363d729e0bf
Reviewed-on: https://dart-review.googlesource.com/54063
Commit-Queue: Zach Anderson <zra@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-05-08 19:13:19 +00:00
Konstantin Shcheglov 0bab7e6bfa Issue 32765. Improve guess for type name identifier.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/32765
Change-Id: I7587fd2aaba50e4e07c9192d95141ece80d423b1
Reviewed-on: https://dart-review.googlesource.com/54303
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-08 18:57:58 +00:00
Danny Tuppeny b73541cffe Add a skeleton for Dart Folding
Only currently adds a single region around Directives.

Bug: https://github.com/dart-lang/sdk/issues/33033
Change-Id: Ibde0400c5815c00b1f94bf592d8cc9eb7cb592cf
Reviewed-on: https://dart-review.googlesource.com/54232
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-05-08 16:59:03 +00:00
danrubel ebcf5bec30 Update Analyzer/CFE type resolution test to use AstBuildingForest
This updates the BodyBuilder to accept a Forest for either Kernel or Analyzer.
More work needs to be done to update the Forest type arguments specified in BodyBuilder.

Change-Id: I595535dc05572515a0b7cca5621de35146944ed3
Reviewed-on: https://dart-review.googlesource.com/54180
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-05-08 16:08:52 +00:00
danrubel 316b10216f Fix Analyzer warning
Change-Id: I5bd2c2f7cdf3c218f2079c4f836e3e934aaace68
Reviewed-on: https://dart-review.googlesource.com/54280
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-05-08 16:03:31 +00:00
danrubel 1d8620044a Call computeTypeVar rather than parseTypeArguments when parsing expressions
Change-Id: I4423d1fc4941d7e7fc93c02d89ab81ade46ecf1d
Reviewed-on: https://dart-review.googlesource.com/52720
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-08 15:17:02 +00:00
Kevin Millikin 8f6c6c2a8e Implement some missing override checking
Detect the following conflicts:

  - declaring a method and inheriting a setter or getter with the same
    name

  - declaring a getter or setter and inheriting a method with the same
    name

  - inheriting both a method and a getter or setter (or both) with the
    same name

Declaring a method and a getter with the same name is already
detected.  Declaring a method and a setter with the same name is not
yet detected, because it should be done in the same way as
method/getter declaration conflicts.

Bug: https://github.com/dart-lang/sdk/issues/32613
Change-Id: I2d168894453d7032372388faa0872d3fc7aa9ef7
Reviewed-on: https://dart-review.googlesource.com/53803
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2018-05-08 13:40:51 +00:00
Samir Jindel 2296f9d637 Run transformations on expression compilation.
Change-Id: Ie0107d908f9e83050e83fbcf1384818100f334b9
Reviewed-on: https://dart-review.googlesource.com/44427
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2018-05-08 13:35:52 +00:00
Brian Wilkerson c9cd32fb58 Clean up Forest.literalList and Forest.literalMap
Change-Id: Iba64ae132a98297466962f0ed8e4bfbe8535611b
Reviewed-on: https://dart-review.googlesource.com/54161
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-05-08 13:23:21 +00:00
Jens Johansen 2ccafe7a54 [kernel] Change dill representation of doubles
This is the second try. First commit failed because another reading of
the binary was added after the change was originally made and before
actually landing it (and wasn't noticed when rebasing).
This reverts commit b298fc6d8f.

See 6e2536f585 for more information.

Change-Id: Ia0e7f8921de2cec8088654fa24950df13d846237
Reviewed-on: https://dart-review.googlesource.com/53560
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
2018-05-08 13:15:13 +00:00
Johnni Winther 51fa3f3b0c Decouple HNode from TypeMask
Change-Id: Ie13d928d51ad7e080ad13402bed3c974da66a2c4
Reviewed-on: https://dart-review.googlesource.com/54020
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2018-05-08 11:20:44 +00:00
Johnni Winther d3c7df35b4 Revive AbstractValueDomain
- to decouple inference results from TypeMask.

Change-Id: Ibe2ec234e84262c5bff169ec7068ca1419706029
Reviewed-on: https://dart-review.googlesource.com/53942
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-08 11:20:44 +00:00
Samir Jindel 03abbc73d2 CFE support for expression evaluation, refactored.
Change-Id: I7eac1020b7aa11ea0276f909d7b11ee6388b1aa7
Reviewed-on: https://dart-review.googlesource.com/53209
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-05-08 11:20:35 +00:00
Samir Jindel 054559c5f3 Revert "CFE support for compiling individual expressions in a context."
This reverts commit 9038b8f45f.

Revert "Refactoring to allow compilation inside a library loaded from Dill."

This reverts commit 12d697b2ea.

Change-Id: Ia617e464d0c34a6685d351b73abf20def75021ad
Reviewed-on: https://dart-review.googlesource.com/53420
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-05-08 11:20:35 +00:00
Alexander Thomas 95fab34cdf [infra] Temporarily remove windows builder from the CQ
TBR=whesse@google.com

Change-Id: I78eedc9ecfaead1823fcb2d0d204fe4c31b9cad7
Reviewed-on: https://dart-review.googlesource.com/54224
Reviewed-by: Alexander Thomas <athom@google.com>
2018-05-08 10:59:49 +00:00
Dmitry Stefantsov 4f586e265e [fasta] Update expectation files after CL 50941
Change-Id: I85aba2501a7b8a911e122f0a802dfc21b7e87e1e
Reviewed-on: https://dart-review.googlesource.com/51620
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2018-05-08 10:53:47 +00:00
Dmitry Stefantsov 9c6c3dcd89 [fasta] Store calculated bounds of type variables as their defaults
Change-Id: I92336a3dfbd4e0079680f5cb1df3f3e974200618
Reviewed-on: https://dart-review.googlesource.com/50941
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-05-08 10:53:47 +00:00
Johnni Winther 831a6ba598 Remove useOldFrontend testing from various tests
Change-Id: Iff97dd60756ae18cb0a3203cffd87c8da9e53757
Reviewed-on: https://dart-review.googlesource.com/53944
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2018-05-08 08:31:43 +00:00
Johnni Winther 9bac9ee596 Remove useOldFrontend from compiler_helper
Change-Id: Ief047cc08b3df47be3381336ec37ed24c53e6302
Reviewed-on: https://dart-review.googlesource.com/53980
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-08 08:31:43 +00:00
Johnni Winther 4b53f7e0d2 Remove useOldFrontend testing from TypeEnvironment
Change-Id: I0d62b83073ce5c7008f85c0c32b74c9b70cc4eb0
Reviewed-on: https://dart-review.googlesource.com/53960
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-08 08:31:43 +00:00
Johnni Winther 8e885f4393 Remove CompileMode
Change-Id: I7622231c3c81152236d671324fa58816c540d5b4
Reviewed-on: https://dart-review.googlesource.com/53941
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-05-08 08:31:43 +00:00
Johnni Winther 27ae11e4d8 Filter instantiation stubs
Closes #32992

Change-Id: Ib0521f24eb734b42a1a55663119204220f263265
Reviewed-on: https://dart-review.googlesource.com/53740
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2018-05-08 07:46:33 +00:00
Sigmund Cherem 2e1c17e5c1 Revert "dump-info: Use relative paths for library canonicalUri..."
This reverts commit 7fe8659613.

Reason for revert: we decided to take an alternative approach to solve the problem.

Original change's description:
> dump-info: Use relative paths for library canonicalUri...
> 
> ...if they are within the working directory
> 
> Makes output from dump-info more stable, especially with pkg:build
> 
> Change-Id: I3e6c444a0aa7df55c10e1bdff4b59ef035d2acc3
> Reviewed-on: https://dart-review.googlesource.com/53168
> Reviewed-by: Harry Terkelsen <het@google.com>
> Commit-Queue: Kevin Moore <kevmoo@google.com>

TBR=kevmoo@google.com,het@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I701847cf8879599c3d129a83809b8fe1c9d9d172
Reviewed-on: https://dart-review.googlesource.com/54141
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2018-05-08 02:00:52 +00:00
Jenny Messerly e10f0717d2 fix test status for a few tests changed in 3002e47e
In particular:
super_call4_test/01
mirrors/deferred_constraints_constants_test

Change-Id: I8b0a32c4ce760e757f94d0d82b0b3123c55c3551
Reviewed-on: https://dart-review.googlesource.com/54163
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2018-05-08 01:04:47 +00:00
danrubel 95c29e6fb0 First cut test for Analyzer/BodyBuilder integration test
Change-Id: Ie5f956a9a24beb1922b3f7c93603edf28d35d907
Reviewed-on: https://dart-review.googlesource.com/54080
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-05-08 00:30:12 +00:00
Régis Crelier b017db1e8c [corelib_2 tests] Bigint computations are slow on simulated architectures.
An added regression test for modPow increased computation time.

Change-Id: Icdd2cb4790333b1c1255b85f93217eddd3797d22
Reviewed-on: https://dart-review.googlesource.com/54120
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2018-05-08 00:19:58 +00:00
Brian Wilkerson 446668e95c Add required information for three more cases
Change-Id: I3c7093f14eb0164bf8a282f21f2917f1cb3f36a2
Reviewed-on: https://dart-review.googlesource.com/54069
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-05-07 23:55:03 +00:00
Jenny Messerly 3002e47e36 cleanup language_2 and corelib_2 tests that import dart:mirrors
Preserves tests that didn't really need mirrors, and moves tests for
mirror functionality into lib_2/mirrors tests.

Change-Id: Ie16dee1a4b508e3f14da53499f57c5dae2d1e513
Reviewed-on: https://dart-review.googlesource.com/49624
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-05-07 23:50:56 +00:00
Nate Bosch 4da831fd3a Latest pub_semver
Bug: #33030
Change-Id: I7155482cbba12e9e5501feebac8ff31c6d8071ff
Reviewed-on: https://dart-review.googlesource.com/54140
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2018-05-07 23:32:32 +00:00
Konstantin Shcheglov 179b31c157 Allow built-in identifiers for non-type entities, with a warning.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/32893
Change-Id: I0d3d25b24d68e9cf30bfd69e6818aaa2a24b6f90
Reviewed-on: https://dart-review.googlesource.com/54100
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-07 23:22:53 +00:00
Stephen Adams 603d832371 Test for sync* checks
dart2js has a bug where the sync* method entry type tests are placed in the iterator instead of the iterable.

Change-Id: Iea46c1fa31e80c6364b8405167d036cd59afcba2
Reviewed-on: https://dart-review.googlesource.com/53862
Reviewed-by: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2018-05-07 22:49:12 +00:00
Jenny Messerly d87642df9c fix #33036, dartdevk now uses CFE for patching its SDK
Change-Id: I65e7df5373c359019b4b7c5714ae71a80d60df13
Reviewed-on: https://dart-review.googlesource.com/53682
Reviewed-by: Vijay Menon <vsm@google.com>
2018-05-07 22:01:52 +00:00