Index: pkg/compiler/lib/src/ssa/builder.dart |
diff --git a/pkg/compiler/lib/src/ssa/builder.dart b/pkg/compiler/lib/src/ssa/builder.dart |
index e1a9d20ef94853ce1e9cf681df424da5785ed68f..540ba50ecb788da3fa36a95bf0376e7cd6538f04 100644 |
--- a/pkg/compiler/lib/src/ssa/builder.dart |
+++ b/pkg/compiler/lib/src/ssa/builder.dart |
@@ -5141,6 +5141,12 @@ class SsaBuilder extends ast.Visitor |
// mismatch. |
ClassElement cls = constructor.enclosingClass; |
if (cls.isAbstract && constructor.isGenerativeConstructor) { |
+ // However, we need to ensure that all arguments are evaluated before we |
+ // throw the ACIE exception. |
+ send.arguments.forEach((arg) { |
+ visit(arg); |
+ pop(); |
+ }); |
generateAbstractClassInstantiationError(send, cls.name); |
return; |
} |