| Index: pkg/compiler/lib/src/resolution/class_hierarchy.dart | 
| diff --git a/pkg/compiler/lib/src/resolution/class_hierarchy.dart b/pkg/compiler/lib/src/resolution/class_hierarchy.dart | 
| index 401835db4c464b8fd8fd76286b7725a8f9bbce46..3b867eabc10860eb90ec417a956bb0004213d16e 100644 | 
| --- a/pkg/compiler/lib/src/resolution/class_hierarchy.dart | 
| +++ b/pkg/compiler/lib/src/resolution/class_hierarchy.dart | 
| @@ -179,7 +179,7 @@ class ClassResolverVisitor extends TypeDefinitionVisitor { | 
| if (element.interfaces == null) { | 
| element.interfaces = resolveInterfaces(node.interfaces, node.superclass); | 
| } else { | 
| -      assert(invariant(element, element.hasIncompleteHierarchy)); | 
| +      assert(element.hasIncompleteHierarchy, failedAt(element)); | 
| } | 
| calculateAllSupertypes(element); | 
|  | 
| @@ -359,9 +359,9 @@ class ClassResolverVisitor extends TypeDefinitionVisitor { | 
|  | 
| if (mixinApplication.supertype != null) { | 
| // [supertype] is not null if there was a cycle. | 
| -      assert(invariant(node, reporter.hasReportedError)); | 
| +      assert(reporter.hasReportedError, failedAt(node)); | 
| supertype = mixinApplication.supertype; | 
| -      assert(invariant(node, supertype.isObject)); | 
| +      assert(supertype.isObject, failedAt(node)); | 
| } else { | 
| mixinApplication.supertype = supertype; | 
| } | 
| @@ -385,7 +385,7 @@ class ClassResolverVisitor extends TypeDefinitionVisitor { | 
| mixinApplication.interfaces = interfaces; | 
| } else { | 
| assert( | 
| -          invariant(mixinApplication, mixinApplication.hasIncompleteHierarchy)); | 
| +          mixinApplication.hasIncompleteHierarchy, failedAt(mixinApplication)); | 
| } | 
|  | 
| ClassElement superclass = supertype.element; | 
|  |