Commit graph

44997 commits

Author SHA1 Message Date
Kevin Millikin
8166deb009 Mark vm/lazy_deopt_vm_test as slow
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2722113002 .
2017-03-01 11:27:48 +01:00
Vyacheslav Egorov
8e267b29c1 Update status files for debug mode dartk/dartkp.
R=kustermann@google.com
BUG=

Review-Url: https://codereview.chromium.org/2722103002 .
2017-03-01 10:31:42 +01:00
Asger Feldthaus
af10678cb3 Add source information to the covariance checks inserted for strong mode
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2718363003 .
2017-03-01 09:51:10 +01:00
danrubel
0c290ae456 echo analysis options information if dartanalyzer --verbose is specified
With this change, if the dartanalyzer --verbose option is specified
then you will see additional output indicating which analysis options
file was read:

Loaded analysis options from /path/to/.analysis_options

In addition, if there are any command line flags that specify/override
an analysis option then you will see something similar to this:

Analysis options: strong = true

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2726783002 .
2017-02-28 17:49:43 -08:00
Jacob Richman
a6a206062d Custom formatter cleanup Fix case where displaying a class constructor generated unreadable huge output. Fix case where exceptions were throw. Correct display of statics, fix indentation bugs. Add improved custom formatter test to main repro. As a drive by fix, switch hashCode to use a symbol instead of the name $identityHash as $identityHash was making custom formatter test output unstable.
BUG=
R=vsm@google.com

Review-Url: https://codereview.chromium.org/2703263002 .
2017-02-28 17:47:53 -08:00
Jennifer Messerly
fe294f3753 unfork DDC's copy of most SDK libraries
There's some changes in strong mode errors we may want to follow up on.

Unforks the following: async, collection, convert, core, developer, internal, io, isolate, math, mirrors.

Does not unfork: html, indexed_db, js, js_util, svg, typed_data, web_audio, web_gl, web_sql.

R=vsm@google.com

Review-Url: https://codereview.chromium.org/2698353003 .
2017-02-28 17:10:52 -08:00
Paul Berry
79cce42e38 Add an AST factory method for fieldDeclaration with all optional named parameters.
Also add 'covariantKeyword' to the Impl constructors and named factories.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2722033002 .
2017-02-28 16:43:31 -08:00
Paul Berry
8849a29406 Implement AstBuilder.handleOperatorName.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2723873002 .
2017-02-28 16:36:03 -08:00
Chris Bracken
c9442bb8a2 Unset GREP_OPTIONS when extracting processor count
If GREP_OPTIONS includes -n or --line-number, matches will be emitted
with a line number following the filename. Unset GREP_OPTIONS to ensure
we're getting expected output.

BUG=
R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2721953004 .
2017-02-28 16:00:32 -08:00
Dan Rubel
bfb8e82c6e Document dartanalyzer analysis options changes (#28928) 2017-02-28 15:19:52 -08:00
Konstantin Shcheglov
36cec1faef Parse ParenthesizedExpression as Fasta.
R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2726693002 .
2017-02-28 15:08:23 -08:00
Paul Berry
fb1bc6ad83 Add preliminary support for method declarations to AstBuilder.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2706293014 .
2017-02-28 15:05:31 -08:00
Paul Berry
f55f111d7a Update kompile.status to reflect e260980624
Commit e260980624 changed some Fasta
tests from "crash" to "fail".

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2725683003 .
2017-02-28 15:04:03 -08:00
Jennifer Messerly
18c4f5cf08 fix future onError handler wrapping to avoid cast error
the return type was invalid, which caused a runtime cast failure. Many of the onError handlers return `void` which is not assignable to T.

This was discovered in internal testing as we attempted to run DDC against the unforked SDK sources.

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2718643003 .
2017-02-28 14:59:48 -08:00
Konstantin Shcheglov
4d4275d36e Replace the sequence isInstanceOf/assign with assist-with-cast in ExpressionParserTestMixin.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2719403004 .
2017-02-28 14:31:41 -08:00
John McCutchan
6cb83f037e Address comments from Matthias on previous CL
original CL: https://codereview.chromium.org/2692803006/

R=hausner@google.com

Review-Url: https://codereview.chromium.org/2720723006 .
2017-02-28 14:02:32 -08:00
Konstantin Shcheglov
25fb3dabdb Parse ThisExpression with Fasta.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2719083007 .
2017-02-28 13:52:01 -08:00
Konstantin Shcheglov
e260980624 Parse SuperExpression with Fasta.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2721973002 .
2017-02-28 13:48:57 -08:00
Konstantin Shcheglov
f7d379a494 Run ExpressionParserTestMixin tests with Fasta.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2726543003 .
2017-02-28 13:33:52 -08:00
Vyacheslav Egorov
9fd4823e9d VM: Fix simdbc and darkp builds.
- When generating app-aot snapshot we are currently running Kernel isolate
in the precompiler mode, which means we can't have field guards enabled.

- DBC does not support field guards so flags must be correctly initialized.

BUG=
TBR=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2720893004 .
2017-02-28 22:20:44 +01:00
Vyacheslav Egorov
a9a756df8e VM: Allow configuring use_field_guards on the per-isolate basis and include it into snapshot features.
We have tests that disable it but we train app-jit snapshot for Kernel with field guards enabled so
we need to make sure that Kernel isolate runs with correct settings matching the settings at the time
when app-jit snapshot was created.

BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2715213008 .
2017-02-28 21:17:17 +01:00
Vyacheslav Egorov
a5e1f89583 VM: Fix an app-jit related shutdown race.
IsolateData contains AppSnapshot which might own some HeapPage-s, so we can't
destroy IsolateData in the Dart_IsolateShutdownCallback, because some thread
running in the isolate (e.g. background compiler) might still touch
thoses pages or objects they host.

We need to delay destruction of AppSnapshot until after the isolate shutdown.

Current API does not allow that, so we introduce a new isolate lifecycle
callback - Dart_IsolateCleanupCallback, which is invoked at the end of the
isolote lifecycle when things like background compiler have been stopped
and no Dart code is supposed to run.

BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2720723005 .
2017-02-28 21:10:04 +01:00
Vyacheslav Egorov
ff9c17504a VM: Make Dart::FeaturesString respect isolate flags controlling asserts and type checks.
Before it simply looked at FLAG_enable_{asserts/type_checks}.

We allow disabling or enabling type checks / asserts for newly created isolates
through Dart_IsolateFlags even when they are enabled globally through
FLAG_enable_{asserts/type_checks} flags.

This change allows isolates to use app-jit snapshots trained with type checks /
asserts disabled as long as isolate itself has type check and asserts disabled,
independent of whether FLAG_enable_{asserts/type_checks} is set globally or not.

Additionally disable type checks and asserts on Kernel isolate even if flags
FLAG_enable_{asserts/type_checks} are set.

This change allows to train Kernel app-jit snapshot once and use it both for

$ dart --dfe=...

and for

$ dart --checked --dfe=...

configurations.

BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2720123004 .
2017-02-28 21:05:29 +01:00
Jennifer Messerly
373149e003 fix ListMixin _filter and sort to work in strong mode
R=lrn@google.com

Review-Url: https://codereview.chromium.org/2715833004 .
2017-02-28 10:37:28 -08:00
Florian Loitsch
169bcf98b7 Fix typo in IoSink.flush documentation.
Review-Url: https://codereview.chromium.org/2720953004 .
2017-02-28 19:34:27 +01:00
Florian Loitsch
37b7a6719a Fix typo in URI documentation.
Fixes #28556
BUG= http://dartbug.com/28556
R=lrn@google.com

Review-Url: https://codereview.chromium.org/2723563003 .
2017-02-28 19:32:50 +01:00
Stephen Adams
1ae1ec7df4 Remove HRuntimeType implementation
Use the legacy RTI format, which should be replaced with something that lets types and tests be cached and amortized.

R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2722753002 .
2017-02-28 09:33:32 -08:00
Asger Feldthaus
3a7529a363 Remove status file sections for the CPS IR.
BUG=
R=kmillikin@google.com

Committed: 2d6c90a6b3
Review-Url: https://codereview.chromium.org/2720513006 .
2017-02-28 17:11:19 +01:00
Asger Feldthaus
e7b9672b3e Revert "Remove status file sections for the CPS IR."
This reverts commit 2d6c90a6b3.

BUG=

Review-Url: https://codereview.chromium.org/2720283002 .
2017-02-28 17:08:04 +01:00
John McCutchan
6c0a2af761 Have observatory_tool always invoke pub with no HTTP_PROXY environment variable set
Fixes #28865

R=zra@google.com

Review-Url: https://codereview.chromium.org/2724483003 .
2017-02-28 07:59:55 -08:00
Zach Anderson
7af47d5ea9 [test.dart]: Fix output encoding in case of non-utf8 test output
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2721683002 .
2017-02-28 07:50:28 -08:00
Peter von der Ahé
2e0e3b918f Always provide a field for context.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2723513002 .
2017-02-28 16:49:19 +01:00
John McCutchan
7e55c12e03 Add SILENT_OBSERVATORY environment variable to Observatory web server
BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2715423002 .
2017-02-28 07:33:33 -08:00
Kevin Millikin
f31b6d5e2c Reland "Track the 'awaiter return' call stack..."
Original CL: https://codereview.chromium.org/2692803006/

Original commit message:
Tracking the awaiter return call stack:

- [x] Each async function closure now knows who is awaiting on their
return. This is effectively the asynchronous equivalent of the 'frame pointer'.
- [x] Each async* function closure now knows how is listening on their
stream. This is effectively the asynchronous equivalent of the 'frame pointer'.

Detecting uncaught exceptions in async functions:

- [x] Code object keeps a map from :await_jump_var to token position
- [x] Exception Handlers keep track if they are generated (as part of compilation) or directly from user code
- [x] Debugger maps :await_jump_var to a specific try index

R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2725623003 .
2017-02-28 16:13:41 +01:00
Peter von der Ahé
86cad48993 Create Fasta bootstrap test.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2719863003 .
2017-02-28 15:49:03 +01:00
Jens Johansen
773e90869c [Fasta] Save parent in TypeDeclarationBuilder
I get errors with library parent not set for some tests
(e.g. service tests). This fixes that.

BUG=
R=ahe@google.com

Review-Url: https://codereview.chromium.org/2726533002 .
2017-02-28 15:02:21 +01:00
Florian Loitsch
7fa4496e51 Add documentation for mutating operations of unmodifiable maps.
Simply states that the operation is not supported.

Fixed #28918
BUG= http://dartbug.com/28918
R=lrn@google.com

Review-Url: https://codereview.chromium.org/2722613004 .
2017-02-28 14:41:38 +01:00
Asger Feldthaus
2d6c90a6b3 Remove status file sections for the CPS IR.
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2720513006 .
2017-02-28 14:40:06 +01:00
Lasse R.H. Nielsen
2d137a8375 Mark analyzer test as slow. Has timeout on windows.
Is slowest test in batch even when it doesn't time out.

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2720873003 .
2017-02-28 14:10:26 +01:00
Asger Feldthaus
ccaff30f00 Fix a type error in reify/transformation/builder.dart.
A call to toList was missing after .map().

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2725623002 .
2017-02-28 13:38:10 +01:00
Kevin Millikin
b31e24f33a Update a test expectation.
A pair of tests that were crashing the front end are now passing.

BUG=
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2718203003 .
2017-02-28 13:03:54 +01:00
Kevin Millikin
a0965a641f Revert "Track the 'awaiter return' call stack..."
Revert a pair of commits that cause failure of the Kernel continuation
transformer:

  cba7e3e79a
  4fe4f177de

R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2718353002 .
2017-02-28 12:46:31 +01:00
Lasse R.H. Nielsen
804f3dfdd8 Update documentation of Object.hashCode.
Fixes #28844

BUG= http://dartbug.com/28844
R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2708233003 .
2017-02-28 11:48:40 +01:00
Lasse R.H. Nielsen
6a77f268bb Revert "Add bnf.sty to github, since it is referenced by the latex language spec file."
R=eernst@google.com

Review-Url: https://codereview.chromium.org/2723623003 .
2017-02-28 11:35:35 +01:00
Karl Klose
5df5395559 closure conversion: Do not set Context.parent if the value is null
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2716573002 .
2017-02-28 11:23:00 +01:00
Karl Klose
5a42bf8062 Support closures in initializers
Moved the code to modify the current block with context updates to its own class and added another class for context updates in initializer expressions.

R=ahe@google.com

Review-Url: https://codereview.chromium.org/2712473003 .
2017-02-28 11:16:41 +01:00
Stephen Adams
e4ffa70ba5 Redo "Flush deferred action queue"
This is 8eedb9c652 plus status file updates

TBR=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2726463002 .
2017-02-27 21:10:36 -08:00
Stephen Adams
07cd6a9f57 Revert "Flush deferred action queue"
TBR=johnniwinther@google.com
BUG=

Review-Url: https://codereview.chromium.org/2723453004 .
2017-02-27 21:06:22 -08:00
Peter von der Ahé
c2f7f52e42 Run dartfmt on pkg/front_end/lib.
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2718113003 .
2017-02-28 05:52:41 +01:00
Stephen Adams
8eedb9c652 Flush deferred action queue
It is possible for deferred actions to be queued without enqueing
classes.  This can happen when resolving a typedef for mirrors - a
cyclic check action may be added as the only change.

TBR=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2718253003 .
2017-02-27 19:12:54 -08:00