Move super class verification to class linker
Verify super classes in the class linker and chain exceptions when super
class verification fails. Add support for dumping chained exceptions to
Throwable::Dump. Improve verifier error detail messages.
Fixes problem where super class verification would leave a pending
exception that would be tripped over elsewhere.
Change-Id: I3ca850fc66674c8601132d7ec40bebbf9c108ae3
diff --git a/src/object.h b/src/object.h
index 1841042..e9556ef 100644
--- a/src/object.h
+++ b/src/object.h
@@ -2273,6 +2273,10 @@
}
std::string Dump() const;
+ // This is a runtime version of initCause, you shouldn't use it if initCause may have been
+ // overridden. Also it asserts rather than throwing exceptions. Currently this is only used
+ // in cases like the verifier where the checks cannot fail and initCause isn't overridden.
+ void SetCause(Throwable* cause);
bool IsCheckedException() const;
private:
Object* GetStackState() const {