Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Unified Diff: pkg/front_end/testcases/inference/generic_methods_iterable_and_future.dart

Issue 2874033003: Set MethodInvocation.interfaceTarget during type inference. (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/front_end/testcases/inference/generic_methods_iterable_and_future.dart
diff --git a/pkg/front_end/testcases/inference/generic_methods_iterable_and_future.dart b/pkg/front_end/testcases/inference/generic_methods_iterable_and_future.dart
index 0f48f25d5630d792b9c40c54549d6fbadabeed0a..bbfe0453d958383972028d374b02775a8dd5189f 100644
--- a/pkg/front_end/testcases/inference/generic_methods_iterable_and_future.dart
+++ b/pkg/front_end/testcases/inference/generic_methods_iterable_and_future.dart
@@ -12,36 +12,39 @@ Future<int> make(int x) => (new /*@typeArgs=int*/ Future(
main() {
Iterable<Future<int>> list =
- <int>[1, 2, 3]. /*@typeArgs=Future<int>*/ map(make);
+ <int>[1, 2, 3]. /*@typeArgs=Future<int>*/ /*@target=List::map*/ map(make);
Future<List<int>> results =
- Future. /*@typeArgs=int*/ wait(/*@promotedType=none*/ list);
+ Future. /*@typeArgs=int*/ /*@target=Future::wait*/ wait(
+ /*@promotedType=none*/ list);
Future<String> results2 = /*@promotedType=none*/ results
- . /*@typeArgs=String*/ then(
+ . /*@typeArgs=String*/ /*@target=Future::then*/ then(
/*@returnType=FutureOr<String>*/ (List<int> list) => /*@promotedType=none*/ list
- . /*@typeArgs=FutureOr<String>*/ fold(
+ . /*@typeArgs=FutureOr<String>*/ /*@target=List::fold*/ fold(
'',
/*@returnType=FutureOr<String>*/ (/*@type=FutureOr<String>*/ x,
/*@type=int*/ y) => /*info:DYNAMIC_CAST,info:DYNAMIC_INVOKE*/ /*@promotedType=none*/ x /*error:UNDEFINED_OPERATOR*/ +
- /*@promotedType=none*/ y.toString()));
+ /*@promotedType=none*/ y
+ . /*@target=Object::toString*/ toString()));
Future<String> results3 = /*@promotedType=none*/ results
- . /*@typeArgs=String*/ then(
+ . /*@typeArgs=String*/ /*@target=Future::then*/ then(
/*@returnType=FutureOr<String>*/ (List<int> list) => /*@promotedType=none*/ list
- . /*@typeArgs=FutureOr<String>*/ fold(
+ . /*@typeArgs=FutureOr<String>*/ /*@target=List::fold*/ fold(
'',
/*info:INFERRED_TYPE_CLOSURE,error:ARGUMENT_TYPE_NOT_ASSIGNABLE*/ /*@returnType=String*/ (String
x,
/*@type=int*/ y) =>
- /*@promotedType=none*/ x + /*@promotedType=none*/ y
- .toString()));
+ /*@promotedType=none*/ x /*@target=String::+*/ + /*@promotedType=none*/ y
+ . /*@target=Object::toString*/ toString()));
Future<String> results4 = /*@promotedType=none*/ results
- . /*@typeArgs=String*/ then(
- /*@returnType=String*/ (List<int> list) => /*@promotedType=none*/ list
- .fold<String>(
- '',
- /*@returnType=String*/ (/*@type=String*/ x,
- /*@type=int*/ y) =>
- /*@promotedType=none*/ x + /*@promotedType=none*/ y
- .toString()));
+ . /*@typeArgs=String*/ /*@target=Future::then*/ then(
+ /*@returnType=String*/ (List<int>
+ list) => /*@promotedType=none*/ list. /*@target=List::fold*/ fold<
+ String>(
+ '',
+ /*@returnType=String*/ (/*@type=String*/ x,
+ /*@type=int*/ y) =>
+ /*@promotedType=none*/ x /*@target=String::+*/ + /*@promotedType=none*/ y
+ . /*@target=Object::toString*/ toString()));
}

Powered by Google App Engine
This is Rietveld 408576698