Mike Fairhurst
689388525c
[nnbd_migration] Handle do while
...
Change-Id: I97071b6b59c9450fddcf7f3ea2da19c99bff4682
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112407
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Mike Fairhurst <mfairhurst@google.com >
2019-08-08 21:46:02 +00:00
Brian Wilkerson
c565fbf9d6
Fix a couple of hints in the nnbd migrator
...
Change-Id: Iaa2442432fe300fd116224a2c2d75e9d76d4e1e2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112260
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2019-08-07 19:27:54 +00:00
Paul Berry
83ab0a5ea9
Migration: handle an assignment from a type parameter's bound to its type.
...
Change-Id: Iceda253691735fa3b8104f76f14b596aa4bd621a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112145
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-08-07 15:15:00 +00:00
Paul Berry
6103ecd6f1
Migration: add support for nullability propagation through implicit downcasts.
...
We don't yet translate implicit downcasts into explicit ones; that
will be added in a future CL.
Change-Id: If601a0ab185707864094d5da3f898cecf7171054
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112163
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-08-06 22:03:37 +00:00
Paul Berry
9139de8b88
Migration: handle an assignment from a type parameter type to its bound.
...
Change-Id: I1a022030a4991be6ca2ae70592ec2d60d254baf3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112162
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-08-06 22:03:37 +00:00
Paul Berry
595f5c9b3e
Migration: add support to EdgeBuilder for assignment of complex generic types.
...
Change-Id: Ia1a754c0174b71dfeb420309324307b391e3eb4e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112160
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-08-06 22:03:37 +00:00
Paul Berry
2a7a9b5572
Migration: don't make hard edges for function parameter and return types.
...
I don't see a clear justification for using hard edges here, so I'd
rather err on the side of caution and wait to see if a need arises
when we start trying to do trial migrations.
Change-Id: Id72c3a08827adfcfa92aedeb80d5304879822147
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112141
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-08-06 22:03:37 +00:00
Paul Berry
bcb9d1582a
Migration: Move EdgeBuilder._checkAssignment to a mixin so it can be unit tested.
...
Change-Id: Iad865fac809b872c8dbd5b40f21e8dde2f3f0aa8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112140
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-08-06 22:03:37 +00:00
Paul Berry
a2d0f6bd74
Migration: fix DecoratedType.toString for bottom types.
...
Change-Id: I0cce10ddbfefc80ddb94a703a4086847f5fac891
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112048
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-08-06 22:03:37 +00:00
Paul Berry
8248e9edb2
Migration: fix DecoratedType.toString for generic interface types.
...
Change-Id: Ic882ea84cdb6bbe80802a4d29d07edc78ac362d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112045
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-08-06 19:24:19 +00:00
Mike Fairhurst
c0f23ce8bc
[nnbd_migration] fix kind -> description, drop empty, tests
...
Change-Id: I7224167ae26344336f665827b145c57319076d73
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111382
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2019-08-02 07:35:41 +00:00
Paul Berry
7582d344d6
Migration: handle assignment of null to generic type.
...
Change-Id: I439095cf3d3abb3e780084561e4fc620d47ad492
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111660
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-08-01 16:08:23 +00:00
Paul Berry
776f2d34e9
Migration: implement "exact nullability" propagation.
...
This allows us to properly handle contraviariant uses of generics,
where the nullability of a generic parameter needs to be propagated in
the reverse of the usual dependency direction.
Change-Id: Id31f906bb7e3fbbf0846144a4715b9a6591aceda
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111303
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-31 03:56:28 +00:00
Paul Berry
fc3d23de80
Migration: change graph propagation variables into fields.
...
This should make it easier to expand the graph propagation algorithm
in follow-up CLs.
Change-Id: I5540d37716d5d617d768ea62d9ab1f0fcdca47c6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-07-30 18:13:30 +00:00
Paul Berry
e147c3e0c8
Migration: ensure that NodeBuilder visits executable metadata and constructor initializers.
...
Change-Id: I9969e9f35f89a91890f9ef15d6505df5c36c1b0a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111181
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-30 12:43:37 +00:00
Paul Berry
60029e19fa
Migration: add support for constructor field initializers.
...
Change-Id: I69642d52a0ff996c73806731d4ed4d3df260efbc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111001
Reviewed-by: Mike Fairhurst <mfairhurst@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-29 20:10:03 +00:00
Konstantin Shcheglov
1a0fe21fb2
Add ExecutableElement(s) based InheritanceManager3, and switch analyzer to it.
...
This reverts commit b8614ca613 .
Change-Id: Ic31ee323b21311d8a89f50bcb533316eb55f75e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110941
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2019-07-29 19:02:24 +00:00
Paul Berry
436a505e00
Migration: fix handling of constructors that redirect to the unnamed constructor.
...
Change-Id: I08786c9f209a93d71c877cdf9552de7f854e9883
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111080
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-29 18:17:33 +00:00
Paul Berry
b8614ca613
Revert InheritanceManager3 changes.
...
These changes were inadvertenly rolled out in a way that breaks
clients, so we need to stage them out more gradually. See discussion
at
https://dart-review.googlesource.com/c/sdk/+/110552/2/pkg/analyzer/lib/src/generated/resolver.dart#3768
This reverts commit 5b5ddeda92 .
This reverts commit e76879acc4 .
This reverts commit 27bec56744 .
Change-Id: Ic80a577b1cdc4a6c89ca06afceae01af6621d3e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110841
Auto-Submit: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-28 13:54:09 +00:00
Konstantin Shcheglov
5b5ddeda92
Switch EdgeBuilder to InheritanceManager3.
...
R=brianwilkerson@google.com , paulberry@google.com
Change-Id: Iea71517556d7dbd274aa36bc11ceb659e1af469e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110742
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2019-07-26 21:46:11 +00:00
Paul Berry
baaeafa2bb
Flow analysis: move into front_end.
...
This will allow it to be used by both the front end and the analyzer.
Change-Id: I3af67aaf3ad7ff2cca0cb245518570892ad473e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109986
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-07-23 12:55:11 +00:00
Paul Berry
722b505316
NNBD migration: Fix an implicit downcast error.
...
Change-Id: I2762d60dc739adc046d7c438ae8eadae550bfa97
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109941
Reviewed-by: Mike Fairhurst <mfairhurst@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-22 20:25:59 +00:00
Paul Berry
b912aebf5c
Flow analysis: change tryPromoteToNonNull to promoteToNonNull.
...
The flow analysis engine is now responsible for figuring out whether a
promotion actually occurred; this is less error prone.
Change-Id: Idce8af01fae982a9cc240ec4675812f8d7fd68a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109883
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-07-22 15:58:48 +00:00
Paul Berry
c8587ce199
Flow analysis: don't use == to compare types.
...
Includes an integration test illustrating where this would have caused
incorrect behavior (due to the fact that the analyzer's `DartType.==`
doesn't yet distinguish nullabilities - see #37587 ), as well as unit
tests that will ensure we don't regress even after #37587 is fixed.
Change-Id: Ief92cf5a052bc2b96e4e74f69f2268b0565d920f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109820
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-07-21 20:33:55 +00:00
Paul Berry
7b6c667863
Flow analysis: rework tracking of nullability.
...
We now track nullability via type promotion, e.g. by promoting from
`int?` to `int` to represent a non-nullable value.
I've added a few more unit tests of flow analysis that were helpful
while preparing this CL. I plan to add more tests in follow-up CLs.
A few behaviors are lost by this change:
- We no longer track whether a variable's value is exactly null
(previously the tests annotated such variables as "nullable", which
was a bit misleading). I'm not sure whether we really want this
feature or not; I've filed
https://github.com/dart-lang/language/issues/461 for discussion.
- Assignment of a non-null value to a nullable-typed variable no
longer promotes it to non-nullable. I think we want to get this
behavior back, but we'll need to add a little bit more machinery to
get it back (we need to allow assignments in general to promote.
I'll address in follow-up CLs. See
https://github.com/dart-lang/language/issues/440 for discussion.
- A promotion to non-nullable that happens during a "try" block is
lost if there is a "finally" block. I think we want to get this
behavior back, but we'll need to add a little bit more machinery to
do so, to allow promotions in general to be preserved by
try/finally. I'll address in follow-up CLs.
Change-Id: Ibc45d70043725697fbee063a8dcefb1179506e9b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109780
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-07-21 04:09:14 +00:00
Paul Berry
851eaad61a
Flow analysis: Rename Element to Variable.
...
The "elements" used by flow analysis always represent variables
anyway, and the front end has no notion called "element", so just
calling them variables is clearer.
Change-Id: Ibd450742b97aafea77d3339609f5a83090405b0d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109743
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-07-20 05:01:43 +00:00
Devon Carew
ddc9b9d492
[analyzer] tweaks to the dartfix UI
...
Change-Id: I32b61f1331b6c3c4fe37ced3dd1a5d68ebcb9d4c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109547
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Devon Carew <devoncarew@google.com >
2019-07-18 20:47:00 +00:00
Brian Wilkerson
97587b554f
Update the element model to support extension methods
...
Change-Id: Ia3bd6a19514368b3e046fead2eed0a4d0bfb133d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108504
Reviewed-by: Phil Quitslund <pquitslund@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2019-07-11 13:28:37 +00:00
danrubel
766e542e53
handle return in async function
...
This updates EdgeBuilder to handle return statements in async functions
when the return value is not a Future...
Future<int> f() async { return 1; }
Change-Id: Icc2a375546d01592c99ababb9652ce8108ae7dd6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108181
Commit-Queue: Dan Rubel <danrubel@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2019-07-03 20:14:37 +00:00
danrubel
86ce74caaa
update NodeBuilder for default value type arguments
...
This updates NodeBuilder to build nodes for type arguments
in default parameter values.
Change-Id: I8999bdfca9a60d9e1d3feff5cdbd1cdc62cdb4fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108120
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2019-07-03 17:52:41 +00:00
danrubel
9b53686ffb
update NodeBuilder for declared identifier implicit type
...
This updates NodeBuilder to handle for loops of the form
for (var i in <int>[1, 2, 3]) ...
Change-Id: If796379ff4c95df1e2e5087ca71d3d4cac5c0853
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108040
Commit-Queue: Dan Rubel <danrubel@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2019-07-03 12:39:27 +00:00
danrubel
851958ee54
update NodeBuilder to handle for loop
...
This updates NodeBUilder to build a node for the identifier in
for (int i in <int>[1, 2, 3]) ...
Change-Id: Ifcb90f7b1511dc29ecedceb043986f6705bdbe1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107980
Commit-Queue: Dan Rubel <danrubel@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2019-07-02 23:40:43 +00:00
danrubel
7a73682c6a
update NodeBuilder to handle catch clause
...
This updates NodeBuilder to create a node for the exception parameter
in a catch clause. Not doing so creates an exception downstream
in the EdgeBuilder.
Change-Id: Idaf0ab62e47018a634ff028af0e3af1d504c02ba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107923
Reviewed-by: Paul Berry <paulberry@google.com >
2019-07-02 23:40:43 +00:00
danrubel
e0eeffaf9b
update NodeBuilder parameter tracking when visiting executable declarations
...
This updates NodeBuilder so that when it visits a method declaration,
it does not count any parameters defined in body statements
as part of the parameters defined in the method signature.
Change-Id: I4da3989eb2bc65c422d94fa264885910850b0ed2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107921
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2019-07-02 17:39:33 +00:00
danrubel
1427a218f3
update DecoratedType asserts
...
Once https://dart-review.googlesource.com/c/sdk/+/107901 lands
to implement FunctionTypes in conditional expressions,
this CL can land to updates the DecoratedType asserts
Change-Id: Ia9924859243e6621dcbbd61ac471bd013069e5a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107920
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2019-07-02 17:15:50 +00:00
Paul Berry
f4dc001729
Migration: begin adding support for LUB computations in conditional expressions.
...
A number of corner cases still need to be addressed, and I need to
generalize the logic to work for `??` expressions.
Change-Id: I6998058698c8b293f7d7b99f3c231a9173b9ff58
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107901
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-07-02 16:12:07 +00:00
Paul Berry
26f369eb8e
Fix doc comment for NullabilityNode.forLUB
...
Change-Id: Ibc87629b81eea7d2e56dfe143d037d10e6cfbe32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-02 14:35:57 +00:00
Paul Berry
fc7049ae7d
Migration: implement support for user-definable prefix expressions.
...
Change-Id: Ie2316625d8ed6fd9ab3aee3b592ce5b82b0cb1e8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107750
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-07-02 10:23:21 +00:00
Paul Berry
77aa5f0c02
Migration: Add support for function-typed formal parameters.
...
Change-Id: Iae4ba1c052e854bc832fdba7a2e2f53635d5033d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107749
Reviewed-by: Dan Rubel <danrubel@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-07-02 10:23:21 +00:00
Paul Berry
326e970b81
Migration: handle method invocations that resolve to a getter.
...
Change-Id: I9a41190d883ee50a63d8cd60699da14084da09d7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107748
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-07-02 07:41:45 +00:00
danrubel
686742585a
Migration: add a more robust assertion to the DecoratedType constructor
...
This CL takes https://dart-review.googlesource.com/c/sdk/+/107740
and add the following condition so that all the current tests pass.
if (positionalParameters.length <= positionalParameterCount) {
// TODO(danrubel): Track down why this happens
// and remove this if statement
} else {
...
My next task is to track down and fix the underlying issue
then remove the temporary code above from the asserts.
Change-Id: I683beac46835ed7b8c1a7b856804db84a74142f2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107860
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2019-07-01 20:41:49 +00:00
danrubel
2fd4ca570b
set DecoratedType.returnType for FunctionType
...
This CL updates creation of DecoratedType to ensure that the return type
is set if the DecoratedType's type is FunctionType.
Change-Id: I9fd031693f5fd07ea5f0e6e16723b7c9659410ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107702
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Dan Rubel <danrubel@google.com >
2019-07-01 19:49:49 +00:00
Paul Berry
0c6b3d1277
Migration: do better function type formatting in DecoratedType.toString.
...
We now wrap named argument types in `{}` and optional positional
argument types in `[]`.
A few unit tests have been added to verify this functionality; I
didn't exhaustively test the implementation of DecoratedType though.
Change-Id: I1e3135adc3abc966f8a41d90c1c6e95e9c7c1eda
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107747
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2019-07-01 15:36:14 +00:00
Paul Berry
a76c459239
Migration: Remove unnecessary duplicate type test
...
Change-Id: Ia99aabee8e5aa40ac301786d5b0b129a932209fb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107744
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-07-01 14:14:32 +00:00
Paul Berry
79f276e07d
Migration: handle field formal parameters.
...
Change-Id: I15fb64a2cb7ed9bc56593fc8b27170aaa34af8a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107743
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2019-06-30 16:39:17 +00:00
Paul Berry
c0c15c1283
Migration: build nullability node for default type parameter bounds directly.
...
Change-Id: I29e9aa8004641a3ef24e44e13b8ee233d8ffb521
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107741
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-06-30 16:39:17 +00:00
Paul Berry
b57ff85906
Migration: clean up and test implicit dynamic return type of Function() syntax.
...
Change-Id: I6a010f5aa32cee4ece094188992ba472444293c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107519
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-06-30 16:39:17 +00:00
Paul Berry
0f2eda8644
Migration: add support for function expression invocations.
...
Change-Id: Icf92c81f677421b00f023c02ce784122dd570e87
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107518
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-06-30 16:39:17 +00:00
Paul Berry
a200980da0
Migration: add support for variable and field type inference.
...
Change-Id: Iae66992d4f9734438776af34b68aabf20f5c15d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107517
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-06-30 16:39:17 +00:00
Paul Berry
ca25f56883
Migration: add support for type inference of function types.
...
Change-Id: Ic0ebbc4d412e7273127564089431ebe9058ee790
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107516
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-06-30 16:39:17 +00:00