hotspot/src/share/vm/classfile/verifier.hpp
changeset 24424 2658d7834c6e
parent 21768 b7dba4cde1c6
child 25505 9bd829aeb960
equal deleted inserted replaced
24358:8528b67f6562 24424:2658d7834c6e
     1 /*
     1 /*
     2  * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   373   // Return status modes
   373   // Return status modes
   374   Symbol* result() const { return _exception_type; }
   374   Symbol* result() const { return _exception_type; }
   375   bool has_error() const { return result() != NULL; }
   375   bool has_error() const { return result() != NULL; }
   376   char* exception_message() {
   376   char* exception_message() {
   377     stringStream ss;
   377     stringStream ss;
   378     ss.print(_message);
   378     ss.print("%s", _message);
   379     _error_context.details(&ss, _method());
   379     _error_context.details(&ss, _method());
   380     return ss.as_string();
   380     return ss.as_string();
   381   }
   381   }
   382 
   382 
   383   // Called when verify or class format errors are encountered.
   383   // Called when verify or class format errors are encountered.
   384   // May throw an exception based upon the mode.
   384   // May throw an exception based upon the mode.
   385   void verify_error(ErrorContext ctx, const char* fmt, ...);
   385   void verify_error(ErrorContext ctx, const char* fmt, ...) ATTRIBUTE_PRINTF(3, 4);
   386   void class_format_error(const char* fmt, ...);
   386   void class_format_error(const char* fmt, ...) ATTRIBUTE_PRINTF(2, 3);
   387 
   387 
   388   Klass* load_class(Symbol* name, TRAPS);
   388   Klass* load_class(Symbol* name, TRAPS);
   389 
   389 
   390   int change_sig_to_verificationType(
   390   int change_sig_to_verificationType(
   391     SignatureStream* sig_type, VerificationType* inference_type, TRAPS);
   391     SignatureStream* sig_type, VerificationType* inference_type, TRAPS);