Exception Classes

In a CL program, you can monitor for a selected group of exceptions, or a single exception, based on the exception identifier. The only class2 values the exception handler will monitor for are _C2_MH_ESCAPE, _C2_MH_STATUS, _C2_MH_NOTIFY, and _C2_MH_FUNCTION_CHECK. For more information about using the #pragma exception handler directive, see the IBM Rational Development Studio for i: ILE C/C++ Compiler Reference. This table defines all the exception classes you can specify.

Table 20. Exception Classes
Bit position Header File Constant in <except.h> Exception class
0 _C1_BINARY_OVERFLOW Binary overflow or divide by zero
1 _C1_DECIMAL_OVERFLOW Decimal overflow or divide by zero
2 _C1_DECIMAL_DATA_ERROR Decimal data error
3 _C1_FLOAT_OVERFLOW Floating-point overflow or divide by zero
4 _C1_FLOAT_UNDERFLOW Floating-point underflow or inexact result
5 _C1_INVALID_FLOAT_OPERAND Floating-point invalid operand or conversion error
6 _C1_OTHER_DATA_ERROR Other data error, for example edit mask
7 _C1_SPECIFICATION_ERROR Specification (operand alignment) error
8 _C1_POINTER_NOT_VALID Pointer not set/pointer type invalid
9 _C1_OBJECT_NOT_FOUND Object not found
10 _C1_OBJECT_DESTROYED Object destroyed
11 _C1_ADDRESS_COMP_ERROR Address computation underflow or overflow
12 _C1_SPACE_ALLOC_ERROR Space not allocated at specified offset
13 _C1_DOMAIN_OR_STATE_VIOLATION Domain/State protection violation
14 _C1_AUTHORIZATION_VIOLATION Authorization violation
15 _C1_JAVA_THROWN_CLASS Exception thrown for a Java™ class.
16-28 _C1_VLIC_RESERVED VLIC reserved
29 _C1_OTHER_MI_EXCEPTION Remaining MI-generated exceptions (other than function check)
30 _C1_MI_GEN_FC_OR_MC MI-generated function check or machine check
31 _C1_MI_SIGEXP_EXCEPTION Message generated via Signal Exception instruction
32-39 n/a reserved
40 _C2_MH_ESCAPE *ESCAPE
41 _C2_MH_NOTIFY *NOTIFY
42 _C2_MH_STATUS *STATUS
43 _C2_MH_FUNCTION_CHECK function check
44-63 n/a reserved


[ Top of Page | Previous Page | Next Page | Contents | Index ]