Index: vm/class_finalizer.cc |
=================================================================== |
--- vm/class_finalizer.cc (revision 1520) |
+++ vm/class_finalizer.cc (working copy) |
@@ -912,6 +912,16 @@ |
if (cls.is_const()) { |
CheckForLegalConstClass(cls); |
} |
+ // Check to ensure we don't have classes with native fields in libraries |
+ // which do not have a native resolver. |
+ if (cls.num_native_fields() != 0) { |
+ const Library& lib = Library::Handle(cls.library()); |
+ if (lib.native_entry_resolver() == NULL) { |
+ const String& name = String::Handle(cls.Name()); |
+ ReportError("class '%s' is invalid, it is extending an invalid class.\n", |
Anton Muhin
2011/11/15 12:22:23
very nice check, but message looks slightly mislea
siva
2011/11/15 19:42:49
Done.
|
+ name.ToCString()); |
+ } |
+ } |
} |