Dmitry Stefantsov
fad786769d
[fasta] Reject generic function types in bounds of type variables
...
Fixes #33423 .
Bug: http://dartbug.com/33423
Change-Id: Iff2a23ef456ebc05fcce8ea804b478db313cac1e
Reviewed-on: https://dart-review.googlesource.com/64544
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-07-12 13:08:53 +00:00
Dmitry Stefantsov
d3e241d14f
[fasta] Clone missing default values of formals in forwarding stubs
...
Fixes #31027 .
For additional details see http://dartbug.com/33820 .
Bug: http://dartbug.com/31027
Change-Id: I8eb3fb0c5d1bb6cdfc4115e3efaa5255cbd68e5b
Reviewed-on: https://dart-review.googlesource.com/64540
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2018-07-12 10:42:43 +00:00
Konstantin Shcheglov
2aea197aa8
Fix write into top-level variables of deferred libraries.
...
This fixes language_2/deferred_global_test
R=brianwilkerson@google.com , paulberry@google.com
Change-Id: I13d41ce1c1d01821100e1af49ee7f4e59e320d01
Reviewed-on: https://dart-review.googlesource.com/64647
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2018-07-12 04:05:10 +00:00
Brian Wilkerson
f0560a8d66
Add error code ArgumentTypeNotAssignable to improve messaging (issue 33712)
...
Change-Id: I9a6e039efdf396f838ae99926877658f5570e380
Reviewed-on: https://dart-review.googlesource.com/63960
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2018-07-09 16:35:48 +00:00
Jens Johansen
3a1b09dc63
Fix for bug #33660
...
Fix for #33660 that doesn't try to use fewer temporaries.
This fix could be revisited and possibly improved later.
Bug: #33660
Change-Id: I966d2756d74e9f041d043e839487bee8a3cc5aa2
Reviewed-on: https://dart-review.googlesource.com/63823
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-07-09 12:20:54 +00:00
Jens Johansen
810cdf8649
Add tests for bug #33660
...
Change-Id: I46ddc241ff4b9f33380f80ca641b27089ccbd736
Reviewed-on: https://dart-review.googlesource.com/63821
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-07-09 11:38:17 +00:00
Dmitry Stefantsov
aa6dc1e2d5
[fasta] Resolve redirecting factories invocations after bodies are built
...
Fixes #32130
Bug: http://dartbug.com/32130
Change-Id: I6773bdf71de3887911daa42bd6ea5bf16052cf35
Reviewed-on: https://dart-review.googlesource.com/63826
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-07-06 09:06:56 +00:00
Peter von der Ahé
149c5a0e0e
Improve formatting of errors in golden files
...
Change-Id: I72930f0785b4b451c23e9cd2ebed2fa8290df760
Reviewed-on: https://dart-review.googlesource.com/63840
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2018-07-05 13:42:42 +00:00
Peter von der Ahé
a600171def
Update expectations after parser updates
...
Change-Id: Ibb3e693ae9eae00327b4307cf54a617eb7b6d77b
Reviewed-on: https://dart-review.googlesource.com/63827
Reviewed-by: Jens Johansen <jensj@google.com >
2018-07-05 13:42:42 +00:00
Jens Johansen
1467909921
Call _completeOnAsyncReturn instead of .complete directly
...
The VM debugger expects _completeOnAsyncReturn to be called when
returning from an async function for stepping out of the async function
to work.
This CL does just that.
Note that `_completeOnAsyncReturn` only exists in the VM, but as
the async transformation is only run for the VM target that shouldn't
be a problem.
Change-Id: Id71344310de918f743dcb1ad66e165fc649516ba
Reviewed-on: https://dart-review.googlesource.com/63383
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Kevin Millikin <kmillikin@google.com >
2018-07-03 06:24:49 +00:00
Dmitry Stefantsov
c98c92f800
[fasta] Fix default argument values in noSuchMethod forwarders
...
Fixes #33459
Bug: http://dartbug.com/33459
Change-Id: I194535d8d8893429ee0e6870c35e7b9ec84dde5c
Reviewed-on: https://dart-review.googlesource.com/62808
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2018-07-02 15:37:03 +00:00
danrubel
5953e62c69
Improve parse literal string recovery
...
This fixes another fasta parser exception
and improves recovery when parsing string literals.
Change-Id: I704b7fcb9dcb2cd01e75623a179f95e6097ccec4
Reviewed-on: https://dart-review.googlesource.com/63000
Commit-Queue: Dan Rubel <danrubel@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2018-07-02 14:58:45 +00:00
Peter von der Ahé
6df580420b
Handle prefixes with generators
...
Change-Id: I05de9cd8a743483b21ca1ec8508b5301a8d6b7f9
Reviewed-on: https://dart-review.googlesource.com/62526
Reviewed-by: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Aske Simon Christensen <askesc@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2018-06-29 08:54:21 +00:00
Peter von der Ahé
ea07157a0f
Allow top-level method named library
...
Change-Id: I52ac5bcd38198c1b060cd9223828f59b7e9199f8
Reviewed-on: https://dart-review.googlesource.com/62807
Reviewed-by: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2018-06-29 05:49:53 +00:00
Ryan Macnak
72747f6205
[build] Remove absolute paths from object files and vm_platform.dill.
...
The only remaining absolute paths in the VM binary are from kernel_service.dill.
Bug: https://github.com/dart-lang/sdk/issues/31427
Change-Id: Ie002e0f6e64c289dab475ca60b240c13f8316ae6
Reviewed-on: https://dart-review.googlesource.com/62728
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2018-06-28 18:21:27 +00:00
Dmitry Stefantsov
b0b1020588
[fasta] Add more tests for noSuchMethod forwarders
...
Change-Id: Ic748e848e0a9dff6d8c616d9e1d09c94818976e9
Reviewed-on: https://dart-review.googlesource.com/62804
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2018-06-28 12:06:53 +00:00
Kevin Millikin
b0cbc4e9cd
Fix a bug in top-level type inference dependency tracking
...
When there was a top-level type inference dependency from a declared
field to an overridden getter or setter, the dependency was not
recorded in the field. This caused initializing formals to sometimes
fail to infer the field type, because they did not see that it needed
to be inferred.
Fixes https://github.com/dart-lang/sdk/issues/32866
Change-Id: If75658d087c099787f74af5f5c6db2ee6837febe
Reviewed-on: https://dart-review.googlesource.com/62800
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-06-28 11:47:24 +00:00
Aske Simon Christensen
bd9aa5139a
Error on cyclic constructor redirect.
...
Fixes https://github.com/dart-lang/sdk/issues/30856
Change-Id: Ib0cb851904fdcb12fff11bae92fe177739fe793f
Reviewed-on: https://dart-review.googlesource.com/60429
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-06-28 10:37:23 +00:00
Dmitry Stefantsov
e13b9e8a75
[fasta] Update expectation files after cf2966ea
...
Change-Id: I91edb7cfd654901273f5b91da9095e6a89c276b0
Reviewed-on: https://dart-review.googlesource.com/62300
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2018-06-27 14:44:07 +00:00
Dmitry Stefantsov
cf2966ea0d
[fasta] Generate noSuchMethod forwarders for abstract accessors
...
Fixes #32722
Bug: http://dartbug.com/32722
Change-Id: I5a2b29c766a82e06949028dccb69680c685e1ba4
Reviewed-on: https://dart-review.googlesource.com/62151
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2018-06-27 13:38:07 +00:00
Jens Johansen
8e4d5c0a38
Update formated error for nonexisting constructor
...
Before:
```
wrong-offset.dart:4:15: Error: Method not found: 'C.wrongOffset'.
var x = new C.wrongOffset();
^^^^^^^^^^^
```
Now:
```
wrong-offset.dart:4:17: Error: Method not found: 'C.wrongOffset'.
var x = new C.wrongOffset();
^^^^^^^^^^^
```
Testcase added.
Closes #33452 .
Change-Id: I9910c9e510bbe32562df67ec0fb46060ab674e6c
Reviewed-on: https://dart-review.googlesource.com/62062
Reviewed-by: Aske Simon Christensen <askesc@google.com >
Commit-Queue: Jens Johansen <jensj@google.com >
2018-06-26 08:06:05 +00:00
Dmitry Stefantsov
b27b62e182
[fasta] Update .expect files for non-simple bound tests
...
Change-Id: I88866d54f97455fd9b14fef7def20d6dd958b878
Reviewed-on: https://dart-review.googlesource.com/59088
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-06-25 12:43:13 +00:00
Dmitry Stefantsov
4fe71ec275
[fasta] Report instantiate-to-bound failure due to non-simple bounds
...
Fixes #33208 , #31810 , #32416 , #32417
Bug: http://dartbug.com/33208
Bug: http://dartbug.com/31810
Bug: http://dartbug.com/32416
Bug: http://dartbug.com/32417
Change-Id: Id178daf35be459fdefe04091bf929b5743d89e81
Reviewed-on: https://dart-review.googlesource.com/41264
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Aske Simon Christensen <askesc@google.com >
2018-06-22 13:41:55 +00:00
Konstantin Shcheglov
7b68a4516f
Wrap Let with ShadowSyntheticExpression in wrapInLocatedCompileTimeError().
...
So, that ExpressionStatementJudgment is created with an ExpressionJudgment, not with raw Let.
Change-Id: I648b1b6053b90b315064535237122be6289f8e6e
Reviewed-on: https://dart-review.googlesource.com/61105
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2018-06-20 15:44:44 +00:00
Dmitry Stefantsov
a3a8d8bbd5
[VM][kernel] Don't mix in noSuchMethod forwarders
...
Bug: http://dartbug.com/33380
Change-Id: I57f85e1e33105c4ffcb6a9c8a970cfbc42318936
Reviewed-on: https://dart-review.googlesource.com/60924
Reviewed-by: Kevin Millikin <kmillikin@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2018-06-20 12:57:41 +00:00
Kevin Millikin
a049e340eb
Revert the fix for issue #31770
...
Back in January we wanted to strip the call to unary- in the minimum
int64 literal. Now we have decided we want to keep it for the back
ends.
Change-Id: I06b3e20e63a59c84828eb5bdba4613f1c226ecbb
Reviewed-on: https://dart-review.googlesource.com/60444
Reviewed-by: Stephen Adams <sra@google.com >
2018-06-20 08:18:19 +00:00
Dmitry Stefantsov
ef49436487
[fasta] Update expectation files after noSuchMethod forwarders change
...
The CL with the change:
https://dart-review.googlesource.com/c/sdk/+/60847
Change-Id: I9b9694798b6611bda16c88e30357302a6c721f89
Reviewed-on: https://dart-review.googlesource.com/60900
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2018-06-19 15:20:33 +00:00
Dmitry Stefantsov
6db5f38d4e
[fasta] Don't generate noSuchMethod forwarders in abstract classes
...
Bug: http://dartbug.com/33482
Change-Id: I4c9b2e9a43fdcd37238ede5814b2ad471f7b2c4d
Reviewed-on: https://dart-review.googlesource.com/60847
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2018-06-19 14:18:33 +00:00
Aske Simon Christensen
20fe2f0ada
Indent error pointer correctly in the presence of tabs.
...
Change-Id: I8e8aa9bcc70e9c4a0e951376f24db51aa51069b2
Reviewed-on: https://dart-review.googlesource.com/60426
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-06-19 11:18:33 +00:00
Johnni Winther
c84a9f46b2
Recompute ClassHierarchy after adding noSuchMethod forwarding stubs
...
Change-Id: Idcd1ba9e43a917a526d0687be8e5b84a267042a2
Reviewed-on: https://dart-review.googlesource.com/60422
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-06-18 08:12:06 +00:00
Kevin Millikin
e22706793d
Treat objects with .call as "subtypes" of function types
...
There were a pair of TODOs in constraint gathering in type inference,
where objects with .call methods should be considered as if they were
subtypes of function types. Fix them.
This is a partial fix for
https://github.com/dart-lang/sdk/issues/33298 because it does not
yet handle the case of generic .call methods.
Bug: https://github.com/dart-lang/sdk/issues/33298
Change-Id: Ib9803db9a152cdc6f2108e717bb0934c38016a94
Reviewed-on: https://dart-review.googlesource.com/58206
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-06-18 07:10:26 +00:00
Kevin Millikin
2bc9025be3
Consider initializing formals during top-level type inference
...
The previous implementation assumed that initializing formals without
type annotations could be inferred after the rest of top-level type
inference was completely done. This is not necessarily the case
because inferred types for initializing formals depend on inferred
types for fields which in turn depend on inferred types for
constructors used in their initializers.
Fixes https://github.com/dart-lang/sdk/issues/32866
Change-Id: I9de0b865c740d7542e5f5ad3d62c4c47c4532266
Reviewed-on: https://dart-review.googlesource.com/60140
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-06-14 16:57:49 +00:00
danrubel
695aa1fc00
Improve recovery of missing method parameters
...
... and consolidate insertion of synthetic parenthesis
Change-Id: I08a3ce04bd11fc6201862c9ee101ca9c8538c14c
Reviewed-on: https://dart-review.googlesource.com/60040
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2018-06-13 17:41:20 +00:00
Peter von der Ahé
3d98cce456
Replace Severity.nit by Severity.ignored
...
Change-Id: Ib249c2e383c25173bd25b965bdb0d67c9a487cb4
Reviewed-on: https://dart-review.googlesource.com/59085
Reviewed-by: Aske Simon Christensen <askesc@google.com >
2018-06-13 08:12:34 +00:00
Aske Simon Christensen
f20672e00a
Parse name of factory as method name instead of constructor reference.
...
Report an error when a factory constructor has type parameters.
Report a better error than the old "couldn't find constructor" or
"illegal method name" when the name of a constructor does not match
the name of the enclosing class.
Fixes https://github.com/dart-lang/sdk/issues/31196
Change-Id: Ie46a5b4cbe07ba05ce2936e1f8f9ca2cad0208f7
Reviewed-on: https://dart-review.googlesource.com/57620
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
2018-06-11 09:55:24 +00:00
danrubel
fb7a124e0c
Additional type variable resolution tests
...
Change-Id: Idbe1eb50395354e66b0017207e5ed60b0c0b882f
Reviewed-on: https://dart-review.googlesource.com/58760
Commit-Queue: Dan Rubel <danrubel@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-06-08 18:13:44 +00:00
Dmitry Stefantsov
05f11aa74c
[kernel] Account for defaultType in some of the Kernel visitors
...
Fixes #33324
Bug: http://dartbug.com/33324
Change-Id: I6c6a503a1fe016d7a8743df1597660c979ce27ea
Reviewed-on: https://dart-review.googlesource.com/58720
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Kevin Millikin <kmillikin@google.com >
2018-06-06 12:44:51 +00:00
Dan Rubel
daee781179
Revise beginTypeVariable event in event sequence
...
This is the first CL in a series aimed at removing the need to reparse type variables in
https://github.com/dart-lang/sdk/blob/master/pkg/front_end/lib/src/fasta/kernel/body_builder.dart#L3669
and ultimately improving recovery by removing parseType.
* Move calls to listener.beginTypeVariable after parsing metadata and identifier
* Pass variable name via beginTypeVariable rather than via handleIdentifier
* Add additional check in test for issue 31846
Change-Id: I983b9d17675fc899c83df69fa1777059903e3f52
Reviewed-on: https://dart-review.googlesource.com/58300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2018-06-05 15:11:00 +00:00
Kevin Millikin
6ac6baae8e
Record interfaceTargets for calls on dynamic receivers
...
When calling Object methods on dynamic receivers, record the
interfaceTarget it Kernel. Back ends will use this to treat the call
as a statically typed one. This is half of the problem in
https://github.com/dart-lang/sdk/issues/33293
Bug: https://github.com/dart-lang/sdk/issues/33293
Change-Id: I8d05903e5b85370a4e697ad3afc494cbc14bcc6a
Reviewed-on: https://dart-review.googlesource.com/57820
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-06-04 09:47:21 +00:00
Aske Simon Christensen
4fb6395058
Report error when a constructor has type parameters.
...
Fixes https://github.com/dart-lang/sdk/issues/30678
Fixes https://github.com/dart-lang/sdk/issues/33110
Change-Id: I7d3fcd56d408fefce7a0b43ffd68cc5427eb0940
Reviewed-on: https://dart-review.googlesource.com/57507
Commit-Queue: Aske Simon Christensen <askesc@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
2018-06-01 12:48:09 +00:00
Kevin Millikin
b62b438e8a
Infer Object members for dynamic receivers
...
For method, getter, and setter invocations with names of methods on
Object on expressions with static type `dynamic`, if the invocation
cannot possibly be an invocation of noSuchMethod, infer the type of
the invocation using the type of the member of Object.
This implements the feature spec
https://github.com/dart-lang/sdk/commit/472ec7780f1bb38f049d0fcc903a69bfb8ef9133
Fixes https://github.com/dart-lang/sdk/issues/32414
Change-Id: I135156346fe1468561d56a01cf3c5f0efde30739
Reviewed-on: https://dart-review.googlesource.com/56942
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2018-05-31 12:43:22 +00:00
Dan Rubel
796f5301dd
Report FieldInitializerOutsideConstructor error in BodyBuilder
...
Change-Id: I357b6164abc4d47ac558496ed3dbb149550e6f43
Reviewed-on: https://dart-review.googlesource.com/57180
Reviewed-by: Peter von der Ahé <ahe@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2018-05-31 11:44:02 +00:00
Dmitry Stefantsov
5ecd78222e
[kernel] Add an option to the cloner for cloning annotations
...
Fixes #33099
Bug: http://dartbug.com/33099
Change-Id: I291e75fa49fb6bf62557cfeab0c874c5de9b618d
Reviewed-on: https://dart-review.googlesource.com/57264
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Kevin Millikin <kmillikin@google.com >
2018-05-31 10:11:52 +00:00
Peter von der Ahé
bb0808db80
Replace Builder by Declaration
...
Change-Id: I1d9997ab22290e9fc882b64b0934f70c6aed2261
Reviewed-on: https://dart-review.googlesource.com/57505
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Peter von der Ahé <ahe@google.com >
2018-05-31 09:19:33 +00:00
Peter von der Ahé
032925c4ff
Remove obsolete features
...
Remove tree-shaker as we're not using it, and it creates problems
when the SDK changes.
Remove scopes from AstBuilder as we will be phasing out AstBuilder
in favor of using BodyBuilder and the Forest API.
Change-Id: I51950c5d8bfb0493587336325f9da8f5bf8ecea6
Reviewed-on: https://dart-review.googlesource.com/57261
Commit-Queue: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
2018-05-31 07:24:54 +00:00
Dmitry Stefantsov
7dc4fbf5a2
[fasta] Add support for annotations on enum values
...
Fixes #33083
Bug: https://github.com/dart-lang/sdk/issues/33083
Change-Id: If278ee3c59489944e2e821ae48ba3cb363dbbdd1
Reviewed-on: https://dart-review.googlesource.com/56496
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Peter von der Ahé <ahe@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
2018-05-29 10:41:55 +00:00
Alexander Aprelev
f981f09760
Revert "Clone annotations when cloning nodes that have them"
...
This reverts commit 75a75263d3 as it breaks Flutter
Bug: https://github.com/dart-lang/sdk/issues/33242
Change-Id: I825b0da4757f1ff9a318f8203605761d61d25e01
Reviewed-on: https://dart-review.googlesource.com/56722
Reviewed-by: Todd Volkert <tvolkert@google.com >
Commit-Queue: Alexander Aprelev <aam@google.com >
2018-05-26 03:16:14 +00:00
Kevin Millikin
75a75263d3
Clone annotations when cloning nodes that have them
...
Annotations were not cloned.
Fixes https://github.com/dart-lang/sdk/issues/33099
Change-Id: I2d2b2153be9efcf1be4b39815eb8ac15b7cacd38
Reviewed-on: https://dart-review.googlesource.com/56494
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Kevin Millikin <kmillikin@google.com >
2018-05-24 15:59:54 +00:00
Kevin Millikin
0a042a270f
Fix a bug in the async transformation of let expressions
...
The transformation worked as if there was never an await "to the
right" of the body of a let expression (i.e., an expression evaluated
after the let expression's body but before the value of the let
expression's body is used). This is obviously not right.
Fixes https://github.com/dart-lang/sdk/issues/33206
Change-Id: Idc175dc8c65f3d520de8b65f2285164d361ff38e
Reviewed-on: https://dart-review.googlesource.com/56492
Commit-Queue: Kevin Millikin <kmillikin@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-05-24 13:16:09 +00:00
Kevin Millikin
51fa5c1662
Correctly transform async functions with FutureOr return types
...
The async transformer did not allocate a completer with the correct
type in the case for async functions with a FutureOr return type.
Fixes https://github.com/dart-lang/sdk/issues/33196
Change-Id: I72654f24576295e38e8d79dff30aae5c90cb2564
Reviewed-on: https://dart-review.googlesource.com/56488
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Kevin Millikin <kmillikin@google.com >
2018-05-24 10:54:03 +00:00