Commit Graph

4276 Commits

Author SHA1 Message Date
Konstantin Shcheglov b1beebeb8a Support for translating inferred FunctionType(s) of members.
The goal here is to create Analyzer FunctionType that remembers the
Element a function or a method it is associated with. We could just
translate Kernel FunctionType into a "detached" Analyzer FunctionType,
but that would be a breaking change.

Alternatively, we could accept that staticInvokeType in
InvocationExpression might be detached, and it the client needs the
exact element, it can be accessed using for example
MethodInvocation.methodName.staticElement. Practically, move closer
to the front-end way of dealing with types.

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

Bug:
Change-Id: I1de0b76c53f003dca837e714df4a9eee64c4ac9b
Reviewed-on: https://dart-review.googlesource.com/25280
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2017-12-01 21:18:22 +00:00
Brian Wilkerson 35b6b5dc69 Create a constructor declaration even when the class name is wrong if there are initializers (issue 31001)
Change-Id: I33e91cd81c3b868a6aa4b50a6ca62ca28cedfffb
Reviewed-on: https://dart-review.googlesource.com/25640
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-12-01 21:09:33 +00:00
Ryan Macnak a646f51a5b Revert "Route all messages through Loader."
This reverts commit 8e4b0bda23.

Reason for revert: Failures on most kernel bots

Original change's description:
> 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>

TBR=paulberry@google.com,ahe@google.com,kmillikin@google.com

Change-Id: I9f7b345a8ff040fc7aa73c5cb605190e47fd284b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/25660
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2017-12-01 20:37:45 +00:00
Brian Wilkerson 7494ff92a0 Recover from semicolons in place of members in class bodies (issue 31078)
Change-Id: Ic6d064098a5d9d23f860c0fcd96ff33875808bb7
Reviewed-on: https://dart-review.googlesource.com/25460
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-12-01 19:50:09 +00:00
Konstantin Shcheglov e16df981c9 When applying types, treat UndefinedType as having required number of UndefinedType arguments.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: Id2428967928a823cb55dcc4348b994af5c6674bf
Reviewed-on: https://dart-review.googlesource.com/25502
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-12-01 19:10:17 +00:00
Brian Wilkerson aac81ce8a4 Parse a getter with the same name as the class as a getter rather than a constructor (issue 30981)
Change-Id: I3c00e532f831e97810ca362fc74c9ec66e50564b
Reviewed-on: https://dart-review.googlesource.com/25580
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-12-01 19:01:28 +00:00
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
Konstantin Shcheglov 22f5ce415d Translate types during ResolutionApplier.
This allows us update enclosing ExecutableElement as we enter/exit
local functions, and successfully translate references to type
parameters.

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

Bug:
Change-Id: I184123212b816740a586beee98796c28beadf6b2
Reviewed-on: https://dart-review.googlesource.com/25220
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-12-01 16:58:47 +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
Konstantin Shcheglov b524534955 Translate invocation types of generic functions.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: Iaa246148e9b9623d20e497c945ae12e0508c2617
Reviewed-on: https://dart-review.googlesource.com/25082
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-30 20:00:34 +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
Konstantin Shcheglov 4c5b7821a1 Store invocation type for static invocations.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I5b8f2b27394ecc1d0b79f4320d311cc98d275420
Reviewed-on: https://dart-review.googlesource.com/24642
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 23:33:50 +00:00
Konstantin Shcheglov 87fba233dd Apply resolution to AsExpression.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I47ccdcd837cee613076a3ce23cdab3f91abb17b1
Reviewed-on: https://dart-review.googlesource.com/24641
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 23:32:31 +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
Konstantin Shcheglov 5dc85f380d Apply resolution to IsExpression.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I9919645507e7ba699b9ed2944613d8a69e815560
Reviewed-on: https://dart-review.googlesource.com/24625
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 23:05:40 +00:00
Konstantin Shcheglov 21d3790b48 Skip the type of synthetic Not in a != b.
R=brianwilkerson@google.com

Bug:
Change-Id: I9beacc690aafd9a0367934800ae472dfe4fc5b9a
Reviewed-on: https://dart-review.googlesource.com/24503
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 22:25:30 +00:00
Konstantin Shcheglov 8fd8819748 Support for local variables/parameters of nested local functions.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: Iec6b55c93467e77fb9077b21cd07668c9283b05b
Reviewed-on: https://dart-review.googlesource.com/24600
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 21:47:15 +00:00
Konstantin Shcheglov b0ace18fbb Apply resolution to PrefixExpression.
Not test for `!`, I will get back to the previous CL once this lands.

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

Bug:
Change-Id: I4d5d107e3f3544b1daae8ed4327a1c165467f589
Reviewed-on: https://dart-review.googlesource.com/24505
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 20:17:30 +00:00
Konstantin Shcheglov 3b3537a35c Skip empty strings while applying resolution to StringInterpolation.
This is not related to the failing VM test as far I see.

R=brianwilkerson@google.com

Bug:
Change-Id: Id5799b4b55e75da021c64a949d4084c44689a175
Reviewed-on: https://dart-review.googlesource.com/24502
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 19:20:11 +00:00
Konstantin Shcheglov f147596f42 Apply resolution to StringInterpolation.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I2e05c1aedf30bd8a6ace149f2cc39d819e709e56
Reviewed-on: https://dart-review.googlesource.com/24381
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 15:02:00 +00:00
Konstantin Shcheglov fe3de034fb Apply resolution to PrefixExpression.
R=brianwilkerson@google.com

Bug:
Change-Id: Ib8bfac731751ede8ce1c34e1457b13505148d344
Reviewed-on: https://dart-review.googlesource.com/24360
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-29 15:01:01 +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
Konstantin Shcheglov 13cf9cca8a Convert parameter VariableDeclaration into ParameterElement.
R=brianwilkerson@google.com

Bug:
Change-Id: I809c78159851204d9f9c5b5ce6a247e1e119bdd8
Reviewed-on: https://dart-review.googlesource.com/24300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-28 23:46:06 +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
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
Konstantin Shcheglov 1f9b27771c Apply resolution for BinaryExpression.
I changed the offset the resulting type for invocations. If there are
arguments (usually there are) we record with the offset of `(`. If there
are no arguments (binary operator), we record with the fileOffset of
the invocation, which is then the offset of the operator.

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

Bug:
Change-Id: Ib5b531440e0782a00764ad68c20e2f1d52ff92d0
Reviewed-on: https://dart-review.googlesource.com/24020
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-27 22:10:41 +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
Konstantin Shcheglov cf4db2be5e Apply resolution to InstanceCreationExpression.
R=brianwilkerson@google.com

Bug:
Change-Id: I213f58fd8c71eb9933c13f696f6d1a407f4553bb
Reviewed-on: https://dart-review.googlesource.com/23727
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-11-27 03:00:51 +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
Konstantin Shcheglov f85a962d97 Apply types to field declarations.
R=brianwilkerson@google.com

Bug:
Change-Id: Ia7e95459fd926ba384e89910589b914c8f94bf86
Reviewed-on: https://dart-review.googlesource.com/23723
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-25 21:36:48 +00:00
Konstantin Shcheglov 7e6ff7eb6e Use implementation from ResolutionApplier to apply types in DeclarationResolver.
If this conflicts with any change you have in flight, I'm fine with
delaying this one until your changes land.

R=brianwilkerson@google.com

Bug:
Change-Id: Ic1dca27035562e74c9f4dfdd68319be16daea93b
Reviewed-on: https://dart-review.googlesource.com/23721
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-25 18:03:19 +00:00
Konstantin Shcheglov 1eaf6d9fe5 Translate references to Kernel Field(s).
R=brianwilkerson@google.com

Bug:
Change-Id: I3cff476bd7160a0ea39cf1919b3a297634bb517b
Reviewed-on: https://dart-review.googlesource.com/23720
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-25 04:53:28 +00:00
Konstantin Shcheglov 435fd394bd Apply created local parameter elements to nodes.
R=brianwilkerson@google.com

Bug:
Change-Id: Ia8431cbbdfd2fa31b30edff6d6a7d901975a71da
Reviewed-on: https://dart-review.googlesource.com/23642
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-25 00:50:19 +00:00
Brian Wilkerson 042af775af Apply some element data, improve handling of generic function types, improve tests
Change-Id: I501a5273834cc2f7f73465377bf145da183cd207
Reviewed-on: https://dart-review.googlesource.com/23241
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-24 15:44:09 +00:00
Konstantin Shcheglov 57f652d5d5 Associate invocation arguments with parameters.
R=brianwilkerson@google.com

Bug:
Change-Id: I675a7dd2dcfc61f1b0d46d49dbb40e4679598ffb
Reviewed-on: https://dart-review.googlesource.com/23461
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-11-24 05:26:27 +00:00
Konstantin Shcheglov be2bf3f126 Create local function parameters.
R=brianwilkerson@google.com

Bug:
Change-Id: I58715cc989d346d525a55e01dc14f91c8a436a82
Reviewed-on: https://dart-review.googlesource.com/23280
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-23 21:23:37 +00:00
Konstantin Shcheglov 14552f4cfd Initial support for local functions.
We can create new FunctionElement(s), set its types from the existing
KernelType, and resolve references to it from invocations.

No formal paramerers, no type parameters, no assignment yet.
No tests for context element.
Will work on this later.

R=brianwilkerson@google.com

Bug:
Change-Id: I0d8d36601916727d11e43160f9c9392fc75854ba
Reviewed-on: https://dart-review.googlesource.com/23223
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-23 01:35:36 +00:00
Brian Wilkerson afbcb4a1fc Convert kernel procedures
Change-Id: I746252cf2c9334ae1190dacf6cbe354aba1602c1
Reviewed-on: https://dart-review.googlesource.com/23200
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-22 20:55:14 +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 a8af34f467 Add a couple of tests around applying function types
Change-Id: I33e836ab09e1f37fbadc3628b949fc6b588db62f
Reviewed-on: https://dart-review.googlesource.com/22780
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2017-11-22 02:06:17 +00:00
Brian Wilkerson 96ba131d30 Enhance ResolutionApplier to allow elements to be applied
Change-Id: I7006000bb72592866edd641b8b614fe73c8f18c2
Reviewed-on: https://dart-review.googlesource.com/22820
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-11-22 00:02:57 +00:00
Konstantin Shcheglov 5fb49a27f5 Support for analyzing parts with front-end based resolution.
R=brianwilkerson@google.com

Bug:
Change-Id: I9695254e8fe013073f732651c4448c3987df06a8
Reviewed-on: https://dart-review.googlesource.com/22661
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-11-21 20:28:44 +00:00
Konstantin Shcheglov 5186182eb4 Apply types and elements to executable elements in DeclarationResolver.
R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I0a5460dada2e17167d02d095d9eb70e1939037f8
Reviewed-on: https://dart-review.googlesource.com/22601
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-11-21 20:13:43 +00:00
Konstantin Shcheglov 8693b10172 Use _deferType() and record deferred offsets in InstrumentedResolutionStorer.
R=brianwilkerson@google.com

Bug:
Change-Id: Ie5b84a8d039d0cceb505c7bd44068f67791dcd53
Reviewed-on: https://dart-review.googlesource.com/22660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-21 20:05:38 +00:00
Brian Wilkerson 4bb1d1f442 Handle type annotations in ResolutionApplier
Change-Id: Idd20aee5c05971a717ea1e1c380c940d0e3d4b09
Reviewed-on: https://dart-review.googlesource.com/22560
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-21 19:19:48 +00:00
Brian Wilkerson 83d98f98ac Address comments from previous CLs
Change-Id: I89081dcdab88ee396ef316104e18b933f95aa98a
Reviewed-on: https://dart-review.googlesource.com/22580
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-21 17:30:39 +00:00
Peter von der Ahé a689397a36 Revert "Implement support for generic comment syntax in Fasta."
This reverts commit f1959d6cd4.

Reason for revert: insufficient approval.

Original change's description:
> Implement support for generic comment syntax in Fasta.
> 
> Change-Id: I4c15a4adf2dbb50efd799b801dcb75a538bbe7d6
> Reviewed-on: https://dart-review.googlesource.com/21223
> Commit-Queue: Paul Berry <paulberry@google.com>
> Reviewed-by: Dan Rubel <danrubel@google.com>

TBR=paulberry@google.com,danrubel@google.com,sigmund@google.com

Change-Id: I047e4e87913002c6bd77e455599189349c123146
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/22460
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2017-11-21 10:08:39 +00:00