| Index: runtime/vm/class_finalizer.cc
|
| diff --git a/runtime/vm/class_finalizer.cc b/runtime/vm/class_finalizer.cc
|
| index f2396612d13b5928bc9e164dd0fd595aa8e16d0f..be24a412b4e6cedd580541084fa323ae30e6ec64 100644
|
| --- a/runtime/vm/class_finalizer.cc
|
| +++ b/runtime/vm/class_finalizer.cc
|
| @@ -2518,8 +2518,9 @@ void ClassFinalizer::FinalizeClass(const Class& cls) {
|
| cls.SetFunctions(functions);
|
| }
|
| // Every class should have at least a constructor, unless it is a top level
|
| - // class or a typedef class.
|
| - ASSERT(cls.IsTopLevel() || cls.IsTypedefClass() ||
|
| + // class or a typedef class. The Kernel frontend does not create an implicit
|
| + // constructor for abstract classes.
|
| + ASSERT(cls.IsTopLevel() || cls.IsTypedefClass() || cls.is_abstract() ||
|
| (Array::Handle(cls.functions()).Length() > 0));
|
| // Resolve and finalize all member types.
|
| ResolveAndFinalizeMemberTypes(cls);
|
|
|