Commit Graph

4770 Commits

Author SHA1 Message Date
Samir Jindel 48a927acb2 Revert "[kernel] Introduce assert initializers."
Reverting due to several test failures.

This reverts commit 67adfe741b.

Bug:
Change-Id: Idd1aa15d47df68f2938285468dfa3d5043d8dae2
Reviewed-on: https://dart-review.googlesource.com/25520
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-12-01 17:46:05 +00:00
Paul Berry ef25e491a2 Improve type inference for for-in statements.
Fixes #31440.

There is a minor change outside of type inference: the body builder
now stores the synthetic assignment (used for for-in loops that don't
declare their own variable) in ShadowForInStatement so that type
inference doesn't have to dig through the desugared kernel objects in
order to find it.

Change-Id: I6520695336560883e2aa07bb110378b7846c2e11
Reviewed-on: https://dart-review.googlesource.com/25040
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-12-01 16:53:47 +00:00
Kevin Millikin e1bf9c3e88 Remove void as an exported name from dart:core
`void` will be a reserved word in Dart 2.0 (it always was in Dart 1.x).
Remove it as an exported name from dart:core because it could be
accidentally hidden.

Bug: https://github.com/dart-lang/sdk/issues/31480
Change-Id: Id804cccbc144f3c8ba2fc9898a3b5c79e238ab36
Reviewed-on: https://dart-review.googlesource.com/24940
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2017-12-01 16:28:16 +00:00
Brian Wilkerson 78bf0b6498 Convert three methods to accept the last consumed token
Change-Id: Ie324e0bc91fa9c311be19b6c95690ed85a3aab75
Reviewed-on: https://dart-review.googlesource.com/25100
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-12-01 14:29:18 +00:00
Samir Jindel 67adfe741b [kernel] Introduce assert initializers.
Assert initializers in Dart may be compiled directly to this form of initializer,
rather than through local initializers as is done now.

Bug:
Change-Id: Ia149ea3d1df5d1dc18be5636801604ffaf7ca7d8
Reviewed-on: https://dart-review.googlesource.com/14760
Commit-Queue: Samir Jindel <sjindel@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2017-12-01 14:04:06 +00:00
Peter von der Ahé 8e4b0bda23 Route all messages through Loader.
This ensures that all messages are passed to instrumentation.

Issues addressed in this CL:

* When I added addCompileTimeError, I forgot to remove addError.

* All messages now all arrive in a single location (Loader). SourceLoader adds instrumentation by overriding recordMessage.

* As I changed the type inferrer to use addCompileTimeError, I broke DDC. This is because the front_end API (generateKernelInternal in kernel_generator_impl.dart) returns null if there are any errors reported via addCompileTimeError (and this didn't happen with addError, that shouldn't have been there anyways).

* Due to the previous problem, I changed generateKernelInternal to ignore errors, but then I started getting missing compile-time errors. This turned out to be due to the the silent parameter used during outline- and diet-parsing.

* I've removed all the "silent" parameters. This didn't work reliably and have been confusing Brian, Dan, and me several times when making parser changes. Instead we detect duplicated messages and avoid reporting them more than once.

* Types in error messages got names that where using a global object (globalDebuggingNames in pkg/kernel/lib/text/ast_to_text.dart). This meant that the #lib prefix would vary depending on how many tests were run which affected the serialized error message in pkg/front_end/testcases/invalid_assignment.dart.strong.expect.

Change-Id: I3d89372d6593a6e7e50cce733f61eedb881e15ed
Reviewed-on: https://dart-review.googlesource.com/24481
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2017-12-01 11:38:26 +00:00
Jens Johansen 22d0696d91 [CFE] Move front-end API under src/
This CL deprecates the front-end API and moves it into src/api_prototype.

For now all usages have been updated to point to the new location,
but they should be updated to use custom-client invocations instead (e.g.
one specific way for DDC, another for dart2js etc.)

Bug:
Change-Id: I9b4f41f6ebf55d42510fd35240d942d1dc7292d6
Reviewed-on: https://dart-review.googlesource.com/24822
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2017-12-01 08:42:16 +00:00
Brian Wilkerson 8aa3a91307 Convert six methods to accept the last consumed token
Change-Id: Ia6ba6eecdbf4f8c740792f2b028130f65528d81d
Reviewed-on: https://dart-review.googlesource.com/25020
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2017-11-30 19:35:54 +00:00
Brian Wilkerson 0d09e918fe Recover from a stack overflow
Change-Id: I2f4634f1706f366ec20749961ee41550e2944c72
Reviewed-on: https://dart-review.googlesource.com/24500
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-30 18:48:55 +00:00
Brian Wilkerson 18b9fd95c9 Recover from missing semicolon when skipping a function body
Change-Id: I1645317fc0707bb1e61550031eae680fb602089d
Reviewed-on: https://dart-review.googlesource.com/24280
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2017-11-30 17:56:04 +00:00
Kevin Millikin 6cfc0558ec Stop running global transformations as build transformations
Kernel transformations are categorized as 'modular' or 'global'.

Modular transformations are run at a granularity finer than a whole program
(e.g., a library, a class, or even a method).  They cannot make closed-world
assumptions.  One can think of them as running at 'compile time'.

Global transformations are run on a whole (closed) program.  They should be
optimizations only, not required for the implementation correctness of the
back end, because they are not guaranteed to be performed.  A simple linker
might just concatenate .dill files.  One can think of them as running at
'link time'.

The front end was applying global transformations to (open) bundles of
libraries, which violates the closed-world assumptions that these
transformations are allowed to make.  We no longer do that.

Bug:
Change-Id: If50faa78c3cfbcd8a3bc2f45b922c90d11761117
Reviewed-on: https://dart-review.googlesource.com/24740
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2017-11-30 14:08:25 +00:00
Brian Wilkerson d3aeb1cd1f Re-work parseType to make it possible to convert several methods invoked in it
Change-Id: Ifc2b8f1f6f2d958daef763e357feaf006a8ebe38
Reviewed-on: https://dart-review.googlesource.com/24680
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-30 13:37:25 +00:00
Jens Johansen b65d63e8b8 [kernel] Add position to catch
Bug:
Change-Id: Ie4a931ab55e923a3ed2bbf247535bc151c766272
Reviewed-on: https://dart-review.googlesource.com/23671
Reviewed-by: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2017-11-30 09:50:01 +00:00
Paul Berry f01b2217ac Create special type inference listener methods for invocations of Function.call.
This makes it possible to tighten up the types for the methods that
don't deal with Function.call.

Fixes #31435.

Change-Id: Iadde3e57bdb5e836a3561953531f111ca7f661ab
Reviewed-on: https://dart-review.googlesource.com/24640
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-29 23:18:00 +00:00
Paul Berry 327adac235 Insert implicit downcasts for function expressions.
Note that there are currently some inconsistencies between how
function expressions are inferred depending whether they are defined
using `{}` or `=>` (see issue #31436).  This CL preserves the existing
inconsistencies.  Once we decide how we want to resolve issue #31436,
I'll revisit this code to ensure that it is still correct.

Change-Id: I3926a4b3dc51155d8f03adaae380b50aab39ca60
Reviewed-on: https://dart-review.googlesource.com/24622
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-29 22:24:31 +00:00
Paul Berry d358897ab2 Insert implicit downcasts for for-in loops.
Note that this CL makes a minor change outside of type inference: it
changes the BodyBuilder so that when it desugars a for-in loop that
assigns to a variable declared elsewhere, the desugared assignment is
expressed using shadow objects; this is necessary to ensure that the
type inference engine can walk the desugared assignment and insert an
implicit downcast if necessary.

Change-Id: I4d87f83b8a4b3b72e7ba8042ccd711f0d012fac0
Reviewed-on: https://dart-review.googlesource.com/24340
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 19:20:31 +00:00
Brian Wilkerson bcf190978e Recover from missing required arguments
Change-Id: I4c5affa760221663466583fc70c37b0ec71f46f7
Reviewed-on: https://dart-review.googlesource.com/24281
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2017-11-29 14:28:11 +00:00
Konstantin Shcheglov 69d1301388 Apply resolution for IndexExpression, read/write.
This also changes the order of information for invocations:
1. Target / receiver.
2. Reference to the procedure.
3. The actual type of the procedure.
4. The type of the returned result.
5. Arguments.

  This makes reading and assigning by index consistent.

  Unfortunately we need to provide the offset associate with the
defered returned result in methodInvocationBeforeArgs(), where we
don't have access to Arguments yet. So, I have to implement replacing
offsets with _replaceType().

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

Bug:
Change-Id: Ib86c57efce8fa194b11a6979633243054c8ab7c9
Reviewed-on: https://dart-review.googlesource.com/24221
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 00:31:49 +00:00
Paul Berry 2b567c53d4 Insert implicit downcasts for parameter default values.
No language_2 tests are added to validate this behavior yet, because
we are still deciding what we want the semantics to be.  I will follow
up with language_2 tests once the semantics have been decided upon.

Tests that have begun failing due to this change are marked with a
reference to issue #31402.

Change-Id: Ia24c9789220d09682b4b3ade9374d279ff2a4b6e
Reviewed-on: https://dart-review.googlesource.com/24320
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-29 00:00:09 +00:00
Konstantin Shcheglov a4e619a63f Apply resolution for compound assignments.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I9d22dd8317babc0ce26cc54b2c5e974e547733a2
Reviewed-on: https://dart-review.googlesource.com/24220
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2017-11-28 22:07:04 +00:00
Brian Wilkerson 20c9565b3d Recover from a missing function body
Change-Id: Ie9091f856fdff2e2fceaa34cd29ce787f092b6e0
Reviewed-on: https://dart-review.googlesource.com/24160
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-28 19:11:44 +00:00
Konstantin Shcheglov 0599ed3e90 Apply resolution for simple (not compound) assignments.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: Icc3ae14f30b23dd6e092f7a9e067f98248d681ea
Reviewed-on: https://dart-review.googlesource.com/24080
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-28 17:08:25 +00:00
danrubel 8f60ea9841 Add fasta parser type parameter recovery
Change-Id: I42999e26feca62906a7003baf040daf957284f2a
Reviewed-on: https://dart-review.googlesource.com/24060
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-11-28 13:36:54 +00:00
Paul Berry a36da30529 Insert implicit downcasts for indexed assignments.
Change-Id: Ic6b5732100908fe6ce5abfc8c577e9f5ad8245b7
Reviewed-on: https://dart-review.googlesource.com/24021
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-28 01:28:06 +00:00
danrubel 4857e8df8f Add fasta parser prefixed formal parameter recovery
Change-Id: I2878ac94d9abb26816621c0b6b3c92bc21db5c77
Reviewed-on: https://dart-review.googlesource.com/24040
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2017-11-28 00:41:14 +00:00
Brian Wilkerson 75a2f235a0 Recover from missing blocks
Change-Id: I3c1618b48469b74fdae28e8a4297329aba08bba3
Reviewed-on: https://dart-review.googlesource.com/23921
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 21:03:12 +00:00
Konstantin Shcheglov aaece788b5 Skip implicit Null type for absent default value of optional formal parameters.
This CL also makes following changes to front-end:

1. We report inference for default values of formal parameters before body for
both local and non-local functions.

2. We set NullLiteral for missing default values of formal parameters of
local functions, and perform inference for them, as it is done for non-local
functions.

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

Bug:
Change-Id: I8acdbce9e1ff1477ab52d9382a631932db9eb3f3
Reviewed-on: https://dart-review.googlesource.com/23940
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 20:25:01 +00:00
Brian Wilkerson 51949c2b82 Convert parseType to accept the last consumed token
Change-Id: Iee469c646db925494c359f7cb654986a8b73a6b4
Reviewed-on: https://dart-review.googlesource.com/23900
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 19:13:12 +00:00
Brian Wilkerson 3b1bbe19e9 Recover from missing class body when diet parsing
Change-Id: Ia638235e38f7aa47eea8d026e9b9d19511f115a4
Reviewed-on: https://dart-review.googlesource.com/23920
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 19:02:22 +00:00
Paul Berry 0eefa06d14 Insert implicit downcasts for the conditions of while statements.
Change-Id: Ieb1bc13de5afb16e75ab810de35002bb3b966ea8
Reviewed-on: https://dart-review.googlesource.com/23742
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-27 17:07:41 +00:00
Brian Wilkerson dc09f13efc Convert parseFields, parseMethod and parseTopLevelMethod
Change-Id: I39b24b6ef4fa600416fc4888665979430368ce73
Reviewed-on: https://dart-review.googlesource.com/23840
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 17:04:02 +00:00
Brian Wilkerson e04cb522e8 Convert findMemberName to return the tokens before the previously returned tokens
Change-Id: I1a4644f2c87cb01e2a452f05003b83c4e01a6463
Reviewed-on: https://dart-review.googlesource.com/23741
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 14:17:02 +00:00
Brian Wilkerson ce477d7f93 Convert parseArguments and rewriteAndRecover
Change-Id: I375e9782fa2f9a28389c62f2011bfa3cb1c2adcc
Reviewed-on: https://dart-review.googlesource.com/23740
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-26 22:48:52 +00:00
Paul Berry b47ef6bdeb Insert implicit downcasts for the conditions of assert statements.
Tests that have begun failing due to this change are marked with a
reference to issue #31402.

Change-Id: Ife1531ee029dda32e91f7aa0d5720353de7996d5
Reviewed-on: https://dart-review.googlesource.com/23726
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-26 17:06:00 +00:00
Brian Wilkerson 866519999d Convert Parser.skipExpression to accept and return the last consumed token
Change-Id: Iefee099badddc5dc2791d30553c600ed3e49bf56
Reviewed-on: https://dart-review.googlesource.com/23722
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-26 16:31:12 +00:00
Paul Berry 419a8c342e Insert implicit downcasts for field initializers.
Tests that have begun failing due to this change are marked with a
reference to issue #31402.

Change-Id: I0ea8fcf94728e70d92f4be771f3ca5d10c366375
Reviewed-on: https://dart-review.googlesource.com/23725
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-26 06:33:50 +00:00
Brian Wilkerson c946d31b79 Convert parseCascadeExpression and parseArgumentOrIndexStar
Change-Id: I030cdaff5fc44d0c491f7146c84150105b10a66a
Reviewed-on: https://dart-review.googlesource.com/23641
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-24 20:31:29 +00:00
Brian Wilkerson 45a41f7fbe Accept the last consumed token in several methods
Change-Id: Ib6d4b134cfcc85ab2421f88a0ed6fa14246b330b
Reviewed-on: https://dart-review.googlesource.com/23460
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-24 17:11:18 +00:00
Paul Berry 5ce5811216 Insert implicit downcasts for the conditions of for statements.
Change-Id: I213617cb4ea1a5c29f8a6a56f54792c59cc4e132
Reviewed-on: https://dart-review.googlesource.com/23221
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-23 16:47:32 +00:00
Paul Berry 9255de668e Insert implicit downcasts for constructor initializer expressions.
Change-Id: Ic258db9c353a4a0ab33a96c3847b174937fcf9e5
Reviewed-on: https://dart-review.googlesource.com/23220
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-23 16:39:28 +00:00
Brian Wilkerson 934c6239d5 Return the last consumed token from three methods
Change-Id: I53acff5bef2fc22212333e3866ae6ddf43d21b76
Reviewed-on: https://dart-review.googlesource.com/23161
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-23 15:09:07 +00:00
Paul Berry 501872471c Insert implicit downcasts for the conditions of do statements.
Change-Id: I8bfffa0796775434cea767ec9ad13cf5697812d2
Reviewed-on: https://dart-review.googlesource.com/23140
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-22 21:47:14 +00:00
Paul Berry 245340dd7f Insert implicit downcasts for the conditions of if statements.
Change-Id: I788d50dc3d95bb4652ff122a993cd092d7262c31
Reviewed-on: https://dart-review.googlesource.com/23160
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-22 19:29:24 +00:00
Paul Berry 6786f1944a Insert implicit downcasts for the operands of "not" expressions.
Tests that have begun failing due to this change are marked with a
reference to issue #31402.

Change-Id: I3d29a1058af5ba43bc2868d85de1e9d87b666ee2
Reviewed-on: https://dart-review.googlesource.com/23080
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-22 17:55:27 +00:00
Konstantin Shcheglov ad7bc62921 Store and apply elements for SimpleIdentifier.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: Ie5f7a5b963dab8a731b9c60ae3a9440ef09b68f0
Reviewed-on: https://dart-review.googlesource.com/22902
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-22 17:36:39 +00:00
Brian Wilkerson d975c5f990 Prepare Parser.parsePrecedenceExpression for being converted to return the last consumed token
Change-Id: I8e10cb89db57c1ba2a90f7bd0af5a709a98e31ca
Reviewed-on: https://dart-review.googlesource.com/23120
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2017-11-22 17:36:09 +00:00
Paul Berry 9693e47d89 Insert implicit downcasts for the expressions in a return or yield statement.
Tests that have begun failing due to this change are marked with a
reference to issue #31402.

Change-Id: Id570bf354583a3780087ffc820eefc3619573af4
Reviewed-on: https://dart-review.googlesource.com/22842
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-22 15:33:07 +00:00
Dan Rubel 9ba4054bb9 Address comments
https://dart-review.googlesource.com/c/sdk/+/22760/1/pkg/front_end/lib/src/fasta/parser/parser.dart#4991
Change-Id: I63b0e0940376d04fdcaeecd11df3d04bf800a2d3
Reviewed-on: https://dart-review.googlesource.com/22881
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2017-11-22 14:19:28 +00:00
Peter von der Ahé c05b5fb62c Remove unused method
Change-Id: I3fcea6cc5cbce30092bc96a322d5d4a3866c3d37
Reviewed-on: https://dart-review.googlesource.com/22960
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2017-11-22 13:57:18 +00:00
Peter von der Ahé eed0e70510 Detect missing export dependencies
Change-Id: I9fa3d34cc23430763ea7b314c03ed860650b9cd6
Reviewed-on: https://dart-review.googlesource.com/22620
Reviewed-by: Aske Simon Christensen <askesc@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2017-11-22 13:56:09 +00:00