Commit graph

53274 commits

Author SHA1 Message Date
Dan Rubel 8a0a6b5a98 Update analyzer fasta parser test expectations
In addition to updating test expectations, this CL also
* Streamlines parsing modifiers in 2 places
* Addresses comment in https://dart-review.googlesource.com/c/sdk/+/33500

Change-Id: Ia3d4b7db8a908455b533c1360d107d3557fbb36f
Reviewed-on: https://dart-review.googlesource.com/34200
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-01-11 21:57:58 +00:00
Mike Fairhurst 095232c71f Expansion of https://dart-review.googlesource.com/c/sdk/+/33660, which
solves the generic function type scoping problem (fixes the test).

Includes further failures documented here:
https://github.com/dart-lang/sdk/issues/31804 with @failingTests.

These do seem to fail today as is, so it should be safe to land.

Bug:
Change-Id: Ice384b6fee35f1b1c4235bb0e4de7a90e2379937
Reviewed-on: https://dart-review.googlesource.com/33582
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-01-11 21:45:48 +00:00
Sam Rawlins 279cc08051 Bump json_rpc_2 version
This is needed for fuzzy arrow and assert-closure fixes.

Change-Id: I34884e89094f2b88b12fbfdfcddc6cbcd4683bb4
Reviewed-on: https://dart-review.googlesource.com/34221
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2018-01-11 21:43:28 +00:00
Samir Jindel 784ee768d8 [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>
2018-01-11 21:37:38 +00:00
Alexander Markov 8fc7050f4f [vm/kernel] Global type flow analysis
Global type flow analysis is a whole-program type inference on
strong-mode kernel AST which is aimed at inferring various properties
useful for optimizations, such as non-nullability, exact types and
monomorphic call targets.

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

Change-Id: Ie2e6e642dfacdb562a3341f8d2bbaf69ca829319
Reviewed-on: https://dart-review.googlesource.com/30903
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-01-11 21:33:08 +00:00
Konstantin Shcheglov b7eb0241ee Push UnknownInferredType for implicitly types for-in variables.
This fixes a problem introduced in:
https://dart-review.googlesource.com/c/sdk/+/32861

R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I9c8637dd7671dbf409cabbe3a707e615b2e553a2
Reviewed-on: https://dart-review.googlesource.com/34223
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-01-11 20:56:59 +00:00
Ryan Macnak c3fc0dbb0d [vm, gc] Extend idle GC logic to compaction.
Bug: https://github.com/dart-lang/sdk/issues/30978
Change-Id: I49509c139ad1ad809dbf626492882c7fd29aff5c
Reviewed-on: https://dart-review.googlesource.com/34080
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Erik Corry <erikcorry@google.com>
2018-01-11 19:44:30 +00:00
pq 603dab87b9 Bump DEPS to pickup linter 0.1.42
* added support for external constructors in `avoid_unused_constructor_parameters`
* added code reference resolution docs for `comment_references`

Bug:
Change-Id: I844d7a50de557afe35cf9580ad06f31308359e0a
Reviewed-on: https://dart-review.googlesource.com/34220
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-11 19:28:57 +00:00
Samir Jindel 22c8aa0eba [kernel] Remove unnecessary RuntimeError status.
Change-Id: I9d15ff227de3d3136ab870de320ad8166a22cfd9
Reviewed-on: https://dart-review.googlesource.com/34161
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2018-01-11 18:15:08 +00:00
Paul Berry 379801ed11 Fix handling of forwarding semi-stubs in the front end.
See #31649 for more details about forwarding semi-stubs.

Change-Id: Iaf1153be5ac7f66503b93a362b66ac9585462f6c
Reviewed-on: https://dart-review.googlesource.com/33820
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-11 16:20:58 +00:00
Erik Ernst 673d5f0a66 Adding generic methods to the language specification.
Change-Id: I49404e81258fc688caef5c044ff70e52508a4423
Reviewed-on: https://dart-review.googlesource.com/14525
Commit-Queue: Erik Ernst <eernst@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2018-01-11 16:15:58 +00:00
Alexander Markov eb9da14a7b [vm] Correct printing of bools when printing precompiler entry points
Change-Id: I80e6fdfc13d2ccf3dccf4c24d92c90b66868a81f
Reviewed-on: https://dart-review.googlesource.com/34026
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2018-01-11 16:00:08 +00:00
Samir Jindel 96381b76bc [kernel] Introduce 'forwardingStubInterfaceTarget' field for Procedures.
First step in fixing issue #31519.

Change-Id: I8df86954993ae5edd59ad2edc57179725880c1d9
Reviewed-on: https://dart-review.googlesource.com/34143
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2018-01-11 15:31:48 +00:00
Samir Jindel e9daa98653 [fasta] Remove unnecessary unary negation for the minimum 64-bit integer.
Change-Id: I5ebf49427ac4ddd005c490d1f04880f005211d26
Reviewed-on: https://dart-review.googlesource.com/33943
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-01-11 15:31:01 +00:00
Alexander Thomas 813be084dd [infra] Normalize pkg.status
Change-Id: I656880ceb89bfe3e5588d035d2c1a452580c2e95
Reviewed-on: https://dart-review.googlesource.com/34104
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2018-01-11 14:33:48 +00:00
Erik Ernst 38dcb10543 Clarified that non-abstract noSuchMethod counts more than abstract.
Change-Id: Ic8e6fc0c43267239d385b451c571c8a4ce9340b3
Reviewed-on: https://dart-review.googlesource.com/32763
Commit-Queue: Erik Ernst <eernst@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
2018-01-11 13:13:38 +00:00
Samir Jindel b74af78ddd [kernel] Avoid unnecessary argument type-checks on static methods in strong mode.
Change-Id: I224c292cf843b6903d695048d023c7365ba9cf53
Reviewed-on: https://dart-review.googlesource.com/33360
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-11 12:44:18 +00:00
Alexander Thomas db99248e77 [infra] Normalize comments in pkg.status
Change-Id: Ia90ecd801c4d63c434c3b3fa220f59ff8c054e08
Reviewed-on: https://dart-review.googlesource.com/33886
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2018-01-11 12:13:15 +00:00
William Hesse ba6891d9be Update status of flaky timing-out test on vm-kernel configurations
Bug:  (https://github.com/dart-lang/sdk/issues/30063)
Change-Id: I8634beed7226e4e9f373b611ea2f78bbeefdbe8e
Reviewed-on: https://dart-review.googlesource.com/34103
Reviewed-by: Alexander Thomas <athom@google.com>
2018-01-11 12:13:03 +00:00
Aske Simon Christensen f265b2def5 Add section to lib_2 suite for not-checked specific status
Change-Id: Ib65acbddffc792040e6baa7adc0bcc1bd4bba558
Reviewed-on: https://dart-review.googlesource.com/33885
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2018-01-11 12:11:38 +00:00
Aske Simon Christensen 4553cdeeb6 Support data URIs in StandardFileSystem.
Closes https://github.com/dart-lang/sdk/issues/31594

Change-Id: I8dad1429d91cc5934b37cb0be60d1e4039293b71
Reviewed-on: https://dart-review.googlesource.com/33461
Reviewed-by: Peter von der Ahé <ahe@google.com>
2018-01-11 11:23:36 +00:00
Aske Simon Christensen 9bdcc40f69 Rename PhysicalFileSystem to StandardFileSystem.
Preparation for data URI support. For clarity, this is just a rename.

Change-Id: Ibbd8da05d1a7106b5ec7c0ea9c1e13a95a89d1bd
Reviewed-on: https://dart-review.googlesource.com/33460
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-11 11:23:25 +00:00
Erik Corry 95d9ca4776 Revert "Add a new boolean field "load_vmservice_library" to Dart_IsolateFlags."
This reverts commit d858aea231.

Reason for revert: This causes assertion failures on the Windows debug build.

Original change's description:
> Add a new boolean field "load_vmservice_library" to Dart_IsolateFlags.
> 
> If this field is set, then the vmservice library will be loaded into the
> isolate by the kernel loader.
> 
> Change-Id: I194bc186ce5b67f1009c7d7ca996a8b687d5f912
> Reviewed-on: https://dart-review.googlesource.com/32500
> Commit-Queue: Siva Chandra <sivachandra@google.com>
> Reviewed-by: Siva Annamalai <asiva@google.com>

TBR=sivachandra@google.com,asiva@google.com

Change-Id: I6ea8b543940d6e08d02a81e67f67248e9164b1e9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/33861
Reviewed-by: Erik Corry <erikcorry@google.com>
Commit-Queue: Erik Corry <erikcorry@google.com>
2018-01-11 09:33:38 +00:00
Erik Ernst af430f37a8 Added informal specification of super-bounded types.
Change-Id: I4764faa8250af61bf8cda9cf6a854e2bd7d726f2
Reviewed-on: https://dart-review.googlesource.com/14042
Reviewed-by: Leaf Petersen <leafp@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2018-01-11 09:16:11 +00:00
Jens Johansen 5e5550422f [kernel] Remove unnecessary "skip" of perf_test
Issue 28698 updated 3 status file entries. 2 entries are now gone,
and the last one doesn't seem to be current anymore.
This CL removes the remaining - unnecessary - entry.

Bug:
Change-Id: I38c8339e83c00d4be33ce84abc1c12f0b5ebe181
Reviewed-on: https://dart-review.googlesource.com/32771
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2018-01-11 08:17:47 +00:00
Johnni Winther c7447281f7 Handle type argument to instance members.
Change-Id: I40404d2f6da74cbaed68e23bc2fab0ebfb3e2cc8
Reviewed-on: https://dart-review.googlesource.com/33724
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-11 08:13:28 +00:00
Jens Johansen 58ed2604af Fixup DDC test on Windows (attepmt #2)
Directory.current.path on Windows uses "\" and not "/" and does not
start with a slash.

Bug:
Change-Id: Id1b75ee0e3962c3531ba964aee9300025cdbcdca
Reviewed-on: https://dart-review.googlesource.com/34101
Reviewed-by: Jens Johansen <jensj@google.com>
2018-01-11 08:06:21 +00:00
Jens Johansen a35a676f39 Revert "Fixup DDC test on Windows"
This reverts commit 70020cd30d.

Reason for revert: Didn't quite work.

Original change's description:
> Fixup DDC test on Windows
> 
> Directory.current.path on Windows uses "\" and not "/".
> 
> Bug:
> Change-Id: I6ef789d586622f78d0401c1a892f6a475bf6d93a
> Reviewed-on: https://dart-review.googlesource.com/34100
> Reviewed-by: Jens Johansen <jensj@google.com>

TBR=dmitryas@google.com,jensj@google.com

Change-Id: Ied8897801005f1a1b83075c1fb2a0b905129bb18
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/34001
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2018-01-11 08:04:38 +00:00
Johnni Winther 06e6f4d105 Add --disable-rti-optimization flag
- to separate rti implementation correctness from optimization soundness.

Change-Id: I0786dd45261d6f8cf1380f016bfb7c6f773df6b1
Reviewed-on: https://dart-review.googlesource.com/33880
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2018-01-11 07:56:56 +00:00
Jens Johansen 70020cd30d Fixup DDC test on Windows
Directory.current.path on Windows uses "\" and not "/".

Bug:
Change-Id: I6ef789d586622f78d0401c1a892f6a475bf6d93a
Reviewed-on: https://dart-review.googlesource.com/34100
Reviewed-by: Jens Johansen <jensj@google.com>
2018-01-11 07:25:43 +00:00
Siva Chandra d858aea231 Add a new boolean field "load_vmservice_library" to Dart_IsolateFlags.
If this field is set, then the vmservice library will be loaded into the
isolate by the kernel loader.

Change-Id: I194bc186ce5b67f1009c7d7ca996a8b687d5f912
Reviewed-on: https://dart-review.googlesource.com/32500
Commit-Queue: Siva Chandra <sivachandra@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2018-01-11 05:42:17 +00:00
Paul Berry f2b8efde4d Add a test demonstrating the corner case mentioned in issue #31596.
Change-Id: I34abe6993e0dc85d1234878c91ce735139b9cb47
Reviewed-on: https://dart-review.googlesource.com/31750
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-11 03:50:27 +00:00
Alexander Aprelev c352b2203b Add dart2.bat to accommodate running dart2 tests on Windows
Bug: https://github.com/dart-lang/sdk/issues/31707#issuecomment-356708044
Change-Id: I7e7f7515fec393b1403cf5f8da2d740771ff10b7
Reviewed-on: https://dart-review.googlesource.com/34025
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2018-01-11 01:35:17 +00:00
Ryan Macnak a4f3b53fe8 Reapply "Partial static mode changes for vm-service and tests (part 3)."
Remove use of castTo, which is not yet available in the prebuilt SDK used to build Observatory.

Bug: https://github.com/dart-lang/sdk/issues/31587
Change-Id: Ia118710a2c4dca1851935d284e1a78a9c6517256
Reviewed-on: https://dart-review.googlesource.com/34022
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-01-11 01:31:17 +00:00
Jenny Messerly cf38dfe0e1 Ensure strong mode flag is always set for DDC tests
This makes it easier to run DDC tests, and fixes a bug where DDC+Kernel
tests could be run without setting the strong mode flag.

Change-Id: I7b0632d903050c7385c553ba8d4562062084df28
Reviewed-on: https://dart-review.googlesource.com/34024
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2018-01-10 23:45:19 +00:00
Vijay Menon 3a4a0fae4f test.py support for tests under pkg/dev_compiler
Change-Id: Ic68359907d3c58bbebe7e368a6e4ad24017c6504
Reviewed-on: https://dart-review.googlesource.com/33620
Commit-Queue: Vijay Menon <vsm@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2018-01-10 23:31:18 +00:00
Martin Kustermann caaddd7161 Revert "[VM] Allow the inlining code to inline implicit getters even if a StaticCallInstr is used"
This reverts commit 195bd1b36c.

Reason for revert: Crashes in release-precomp.

Change-Id: Iee7206fee27c2434a4e5355ca6101e9595ad102d
Reviewed-on: https://dart-review.googlesource.com/34060
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-10 23:19:46 +00:00
Martin Kustermann 7050b79755 [VM] Use ZoneHandle instead of normal Handle when used by IR instructions
Change-Id: Ib41fa91dff0de54f96c39d98320e722c3bad0441
Reviewed-on: https://dart-review.googlesource.com/34040
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-01-10 23:08:13 +00:00
Vijay Menon 09621f6724 Try to handle int64 mode errors on literal handling
Bug:
Change-Id: I55fabb8eb359dbc91b4848d25109af9344484ee5
Reviewed-on: https://dart-review.googlesource.com/32121
Reviewed-by: Jenny Messerly <jmesserly@google.com>
Commit-Queue: Vijay Menon <vsm@google.com>
2018-01-10 22:45:59 +00:00
Alexander Markov c67be1b896 [vm/kernel/aot] Devirtualize Object methods if receiver is non-nullable
Change-Id: Ib860d7218162fc384e6a4e3f100f4179cb20fde5
Reviewed-on: https://dart-review.googlesource.com/32668
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-01-10 22:40:29 +00:00
Martin Kustermann 195bd1b36c [VM] Allow the inlining code to inline implicit getters even if a StaticCallInstr is used
We have devirtualization logic which turns [InstanceCallInst]s to
[StaticCallInstr]s (which are subject to different optimizations).

This makes the inlining decisions done in dart-aot-v2 a little
bit closer to dart-aot.

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

Change-Id: If7961ad8f05ac2544f04044d05541a86a8074984
Reviewed-on: https://dart-review.googlesource.com/34000
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2018-01-10 22:11:49 +00:00
Ryan Macnak 7855487b80 [fuchsia] Don't attempt to free an empty region.
Bug: https://github.com/dart-lang/sdk/issues/31841
Change-Id: I4344372316db09a891764423077e651259a49362
Reviewed-on: https://dart-review.googlesource.com/34020
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-01-10 21:30:48 +00:00
Zachary Anderson 379a1cf24a [infra] Roll clang toolchain forward
Change-Id: Id9c98520f47ce9660efd271bc81062b93fdc035f
Reviewed-on: https://dart-review.googlesource.com/33981
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-01-10 21:23:39 +00:00
Stephen Adams f756c5e71d Print names for generic method type parameters in function type
- Added JS_GET_FLAG('STRONG_MODE') allow the code to be tailored to
the type system version.

 - Split type stringifying code into V1 (existing logic) and V2
(strong mode Dart 2.0 logic).

The V1 code will eventually be deleted.

Change-Id: I78db91796040b6ecfa1bd5d6a9d64bd4c2bc4bcf
Reviewed-on: https://dart-review.googlesource.com/33680
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2018-01-10 21:00:48 +00:00
Samir Jindel 91cf506f03 Revert "[kernel] Support for the partial type application operator in the VM."
This reverts commit 4f265395e0.

Change-Id: I03785a4caf8a32db4a67e49c40fb80c0cfbf8c29
Reviewed-on: https://dart-review.googlesource.com/33883
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Samir Jindel <sjindel@google.com>
2018-01-10 20:51:28 +00:00
Konstantin Shcheglov 2ba489c65a Fix resynthesize tests for Windows.
Fixes #31832

R=brianwilkerson@google.com, paulberry@google.com

Bug: https://github.com/dart-lang/sdk/issues/31832
Change-Id: Ie0b1dd9742415fe9cf97b3d3843eeaf3af878308
Reviewed-on: https://dart-review.googlesource.com/33982
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-01-10 20:24:39 +00:00
Martin Kustermann 7ab210e308 [VM] Allow EqualityCompare/RelationalOp/BinaryInt64OpInstr to take constants as inputs
Issue https://github.com/dart-lang/sdk/issues/31798

Change-Id: I3a64fc9e6a038ae28e3a98149b0494ebe254fd73
Reviewed-on: https://dart-review.googlesource.com/33780
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2018-01-10 19:29:28 +00:00
Alexander Thomas 2da64efb81 [infra] Update status files for new VM Kernel opt counter builder
Bug: https://github.com/dart-lang/sdk/issues/31838
Change-Id: I703319aebc135a7b219dc576c50f26f5feaabedf
Reviewed-on: https://dart-review.googlesource.com/33881
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2018-01-10 18:49:19 +00:00
Vijay Menon bedf7121e0 Wire build rules to generate ddc-kernel versions of SDK files
Change-Id: I7d39bce7a3382c7a332ecdc4886bb08dabfdf09a
Reviewed-on: https://dart-review.googlesource.com/33900
Commit-Queue: Vijay Menon <vsm@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2018-01-10 18:34:38 +00:00
Harry Terkelsen 3c77ef6738 Ensure types seen in annotations are resolved as they are seen
Change-Id: I138bb7904ff069f1b0df6c85d63ca6b7cbdaca3e
Reviewed-on: https://dart-review.googlesource.com/33664
Reviewed-by: Emily Fortuna <efortuna@google.com>
Commit-Queue: Harry Terkelsen <het@google.com>
2018-01-10 18:08:59 +00:00