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

Unified Diff: sdk/lib/_internal/compiler/implementation/dart_backend/placeholder_collector.dart

Issue 359413006: Fix handling of type literals. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Updated cf. comments. Created 6 years, 6 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: sdk/lib/_internal/compiler/implementation/dart_backend/placeholder_collector.dart
diff --git a/sdk/lib/_internal/compiler/implementation/dart_backend/placeholder_collector.dart b/sdk/lib/_internal/compiler/implementation/dart_backend/placeholder_collector.dart
index 901af2b5080f5443f7f2c738431e47c5abd94720..a15a5b659831569788e5e54483c0055c2c51ac56 100644
--- a/sdk/lib/_internal/compiler/implementation/dart_backend/placeholder_collector.dart
+++ b/sdk/lib/_internal/compiler/implementation/dart_backend/placeholder_collector.dart
@@ -141,9 +141,16 @@ class SendVisitor extends ResolvedVisitor {
collector.internalError(reason, node: node);
}
- visitTypeReferenceSend(Send node) {
+ visitTypePrefixSend(Send node) {
collector.makeElementPlaceholder(node.selector, elements[node]);
}
+
+ visitTypeLiteralSend(Send node) {
+ DartType type = elements.getTypeLiteralType(node);
+ if (!type.isDynamic) {
+ collector.makeElementPlaceholder(node.selector, type.element);
+ }
+ }
}
class PlaceholderCollector extends Visitor {

Powered by Google App Engine
This is Rietveld 408576698