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); |