|
#define | CB_BEFORE cb_int0 |
|
#define | CB_AFTER cb_int1 |
|
#define | COB_MAX_SUBSCRIPTS 16 |
|
#define | CB_PREFIX_ATTR "a_" /* Field attribute (cob_field_attr) */ |
|
#define | CB_PREFIX_BASE "b_" /* Base address (unsigned char *) */ |
|
#define | CB_PREFIX_CONST "c_" /* Constant or literal (cob_field) */ |
|
#define | CB_PREFIX_DECIMAL "d_" /* Decimal number (cob_decimal) */ |
|
#define | CB_PREFIX_FIELD "f_" /* Field (cob_field) */ |
|
#define | CB_PREFIX_FILE "h_" /* File (cob_file) */ |
|
#define | CB_PREFIX_KEYS "k_" /* File keys (cob_file_key []) */ |
|
#define | CB_PREFIX_LABEL "l_" /* Label */ |
|
#define | CB_PREFIX_SEQUENCE "s_" /* Collating sequence */ |
|
#define | CB_PREFIX_STRING "st_" /* String */ |
|
#define | CB_PROGRAM_TYPE 0 |
|
#define | CB_FUNCTION_TYPE 1 |
|
#define | CB_CALL_BY_REFERENCE 1 |
|
#define | CB_CALL_BY_CONTENT 2 |
|
#define | CB_CALL_BY_VALUE 3 |
|
#define | CB_SIZE_AUTO 0 |
|
#define | CB_SIZE_1 1 |
|
#define | CB_SIZE_2 2 |
|
#define | CB_SIZE_4 3 |
|
#define | CB_SIZE_8 4 |
|
#define | CB_SIZE_UNSIGNED 8 |
|
#define | CB_WORD_HASH_SIZE (1U << 11) |
|
#define | CB_WORD_HASH_MASK (CB_WORD_HASH_SIZE - 1U) |
|
#define | CB_ALPHABET_NATIVE 0 |
|
#define | CB_ALPHABET_ASCII 1 |
|
#define | CB_ALPHABET_EBCDIC 2 |
|
#define | CB_ALPHABET_CUSTOM 3 |
|
#define | CB_CONV_L_TO_R (1 << 0) |
|
#define | CB_CONV_CALLEE_STACK (1 << 1) |
|
#define | CB_CONV_NO_RET_UPD (1 << 2) |
|
#define | CB_CONV_STATIC_LINK (1 << 3) |
|
#define | CB_CONV_OPT_LINK (1 << 4) |
|
#define | CB_CONV_THUNK_16 (1 << 5) |
|
#define | CB_CONV_STDCALL (1 << 6) |
|
#define | CB_DEVICE_SYSIN 0 |
|
#define | CB_DEVICE_SYSOUT 1 |
|
#define | CB_DEVICE_SYSERR 2 |
|
#define | CB_DEVICE_CONSOLE 3 |
|
#define | CB_SWITCH_0 0 |
|
#define | CB_SWITCH_1 1 |
|
#define | CB_SWITCH_2 2 |
|
#define | CB_SWITCH_3 3 |
|
#define | CB_SWITCH_4 4 |
|
#define | CB_SWITCH_5 5 |
|
#define | CB_SWITCH_6 6 |
|
#define | CB_SWITCH_7 7 |
|
#define | CB_SWITCH_8 8 |
|
#define | CB_SWITCH_9 9 |
|
#define | CB_SWITCH_10 10 |
|
#define | CB_SWITCH_11 11 |
|
#define | CB_SWITCH_12 12 |
|
#define | CB_SWITCH_13 13 |
|
#define | CB_SWITCH_14 14 |
|
#define | CB_SWITCH_15 15 |
|
#define | CB_FEATURE_FORMFEED 0 |
|
#define | CB_FEATURE_CONVENTION 1 |
|
#define | CB_FEATURE_C01 2 |
|
#define | CB_FEATURE_C02 3 |
|
#define | CB_FEATURE_C03 4 |
|
#define | CB_FEATURE_C04 5 |
|
#define | CB_FEATURE_C05 6 |
|
#define | CB_FEATURE_C06 7 |
|
#define | CB_FEATURE_C07 8 |
|
#define | CB_FEATURE_C08 9 |
|
#define | CB_FEATURE_C09 10 |
|
#define | CB_FEATURE_C10 11 |
|
#define | CB_FEATURE_C11 12 |
|
#define | CB_FEATURE_C12 13 |
|
#define | CB_TREE(x) ((struct cb_tree_common *) (x)) |
|
#define | CB_TREE_TAG(x) (CB_TREE (x)->tag) |
|
#define | CB_TREE_CLASS(x) cb_tree_class (CB_TREE (x)) |
|
#define | CB_TREE_CATEGORY(x) cb_tree_category (CB_TREE (x)) |
|
#define | CB_VALID_TREE(x) (x && CB_TREE (x) != cb_error_node) |
|
#define | CB_INVALID_TREE(x) (!(x) || CB_TREE (x) == cb_error_node) |
|
#define | CB_TREE_CAST(tg, ty, x) ((ty *) (x)) |
|
#define | CB_CONST(x) (CB_TREE_CAST (CB_TAG_CONST, struct cb_const, x)) |
|
#define | CB_CONST_P(x) (CB_TREE_TAG (x) == CB_TAG_CONST) |
|
#define | CB_DIRECT(x) (CB_TREE_CAST (CB_TAG_DIRECT, struct cb_direct, x)) |
|
#define | CB_DIRECT_P(x) (CB_TREE_TAG (x) == CB_TAG_DIRECT) |
|
#define | CB_DEBUG(x) (CB_TREE_CAST (CB_TAG_DEBUG, struct cb_debug, x)) |
|
#define | CB_DEBUG_P(x) (CB_TREE_TAG (x) == CB_TAG_DEBUG) |
|
#define | CB_DEBUG_CALL(x) (CB_TREE_CAST (CB_TAG_DEBUG_CALL, struct cb_debug_call, x)) |
|
#define | CB_DEBUG_CALL_P(x) (CB_TREE_TAG (x) == CB_TAG_DEBUG_CALL) |
|
#define | CB_INTEGER(x) (CB_TREE_CAST (CB_TAG_INTEGER, struct cb_integer, x)) |
|
#define | CB_INTEGER_P(x) (CB_TREE_TAG (x) == CB_TAG_INTEGER) |
|
#define | CB_STRING(x) (CB_TREE_CAST (CB_TAG_STRING, struct cb_string, x)) |
|
#define | CB_STRING_P(x) (CB_TREE_TAG (x) == CB_TAG_STRING) |
|
#define | CB_ALPHABET_NAME(x) (CB_TREE_CAST (CB_TAG_ALPHABET_NAME, struct cb_alphabet_name, x)) |
|
#define | CB_ALPHABET_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_ALPHABET_NAME) |
|
#define | CB_CLASS_NAME(x) (CB_TREE_CAST (CB_TAG_CLASS_NAME, struct cb_class_name, x)) |
|
#define | CB_CLASS_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_CLASS_NAME) |
|
#define | CB_LOCALE_NAME(x) (CB_TREE_CAST (CB_TAG_LOCALE_NAME, struct cb_locale_name, x)) |
|
#define | CB_LOCALE_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_LOCALE_NAME) |
|
#define | CB_SYSTEM_NAME(x) (CB_TREE_CAST (CB_TAG_SYSTEM_NAME, struct cb_system_name, x)) |
|
#define | CB_SYSTEM_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_SYSTEM_NAME) |
|
#define | CB_LITERAL(x) (CB_TREE_CAST (CB_TAG_LITERAL, struct cb_literal, x)) |
|
#define | CB_LITERAL_P(x) (CB_TREE_TAG (x) == CB_TAG_LITERAL) |
|
#define | CB_NUMERIC_LITERAL_P(x) (CB_LITERAL_P (x) && CB_TREE_CATEGORY (x) == CB_CATEGORY_NUMERIC) |
|
#define | CB_DECIMAL(x) (CB_TREE_CAST (CB_TAG_DECIMAL, struct cb_decimal, x)) |
|
#define | CB_DECIMAL_P(x) (CB_TREE_TAG (x) == CB_TAG_DECIMAL) |
|
#define | CB_PICTURE(x) (CB_TREE_CAST (CB_TAG_PICTURE, struct cb_picture, x)) |
|
#define | CB_PICTURE_P(x) (CB_TREE_TAG (x) == CB_TAG_PICTURE) |
|
#define | CB_FIELD(x) (CB_TREE_CAST (CB_TAG_FIELD, struct cb_field, x)) |
|
#define | CB_FIELD_P(x) (CB_TREE_TAG (x) == CB_TAG_FIELD) |
|
#define | CB_REF_OR_FIELD_P(x) (CB_REFERENCE_P (x) || CB_FIELD_P (x)) |
|
#define | CB_FIELD_PTR(x) (CB_REFERENCE_P (x) ? CB_FIELD (cb_ref (x)) : CB_FIELD (x)) |
|
#define | CB_INDEX_P(x) cb_check_index_p (x) |
|
#define | CB_LABEL(x) (CB_TREE_CAST (CB_TAG_LABEL, struct cb_label, x)) |
|
#define | CB_LABEL_P(x) (CB_TREE_TAG (x) == CB_TAG_LABEL) |
|
#define | CB_FILE(x) (CB_TREE_CAST (CB_TAG_FILE, struct cb_file, x)) |
|
#define | CB_FILE_P(x) (CB_TREE_TAG (x) == CB_TAG_FILE) |
|
#define | CB_WORD_TABLE_SIZE (CB_WORD_HASH_SIZE * sizeof (struct cb_word)) |
|
#define | CB_REFERENCE(x) (CB_TREE_CAST (CB_TAG_REFERENCE, struct cb_reference, x)) |
|
#define | CB_REFERENCE_P(x) (CB_TREE_TAG (x) == CB_TAG_REFERENCE) |
|
#define | CB_NAME(x) (CB_REFERENCE (x)->word->name) |
|
#define | CB_WORD_COUNT(x) (CB_REFERENCE (x)->word->count) |
|
#define | CB_WORD_ITEMS(x) (CB_REFERENCE (x)->word->items) |
|
#define | CB_BINARY_OP(x) (CB_TREE_CAST (CB_TAG_BINARY_OP, struct cb_binary_op, x)) |
|
#define | CB_BINARY_OP_P(x) (CB_TREE_TAG (x) == CB_TAG_BINARY_OP) |
|
#define | CB_FUNCALL(x) (CB_TREE_CAST (CB_TAG_FUNCALL, struct cb_funcall, x)) |
|
#define | CB_FUNCALL_P(x) (CB_TREE_TAG (x) == CB_TAG_FUNCALL) |
|
#define | CB_CAST(x) (CB_TREE_CAST (CB_TAG_CAST, struct cb_cast, x)) |
|
#define | CB_CAST_P(x) (CB_TREE_TAG (x) == CB_TAG_CAST) |
|
#define | CB_ASSIGN(x) (CB_TREE_CAST (CB_TAG_ASSIGN, struct cb_assign, x)) |
|
#define | CB_ASSIGN_P(x) (CB_TREE_TAG (x) == CB_TAG_ASSIGN) |
|
#define | CB_INTRINSIC(x) (CB_TREE_CAST (CB_TAG_INTRINSIC, struct cb_intrinsic, x)) |
|
#define | CB_INTRINSIC_P(x) (CB_TREE_TAG (x) == CB_TAG_INTRINSIC) |
|
#define | CB_INITIALIZE(x) (CB_TREE_CAST (CB_TAG_INITIALIZE, struct cb_initialize, x)) |
|
#define | CB_INITIALIZE_P(x) (CB_TREE_TAG (x) == CB_TAG_INITIALIZE) |
|
#define | CB_SEARCH(x) (CB_TREE_CAST (CB_TAG_SEARCH, struct cb_search, x)) |
|
#define | CB_SEARCH_P(x) (CB_TREE_TAG (x) == CB_TAG_SEARCH) |
|
#define | CB_CALL(x) (CB_TREE_CAST (CB_TAG_CALL, struct cb_call, x)) |
|
#define | CB_CALL_P(x) (CB_TREE_TAG (x) == CB_TAG_CALL) |
|
#define | CB_CANCEL(x) (CB_TREE_CAST (CB_TAG_CANCEL, struct cb_cancel, x)) |
|
#define | CB_CANCEL_P(x) (CB_TREE_TAG (x) == CB_TAG_CANCEL) |
|
#define | CB_ALTER(x) (CB_TREE_CAST (CB_TAG_ALTER, struct cb_alter, x)) |
|
#define | CB_ALTER_P(x) (CB_TREE_TAG (x) == CB_TAG_ALTER) |
|
#define | CB_GOTO(x) (CB_TREE_CAST (CB_TAG_GOTO, struct cb_goto, x)) |
|
#define | CB_GOTO_P(x) (CB_TREE_TAG (x) == CB_TAG_GOTO) |
|
#define | CB_IF(x) (CB_TREE_CAST (CB_TAG_IF, struct cb_if, x)) |
|
#define | CB_IF_P(x) (CB_TREE_TAG (x) == CB_TAG_IF) |
|
#define | CB_PERFORM_VARYING(x) (CB_TREE_CAST (CB_TAG_PERFORM_VARYING, struct cb_perform_varying, x)) |
|
#define | CB_PERFORM(x) (CB_TREE_CAST (CB_TAG_PERFORM, struct cb_perform, x)) |
|
#define | CB_PERFORM_P(x) (CB_TREE_TAG (x) == CB_TAG_PERFORM) |
|
#define | CB_STATEMENT(x) (CB_TREE_CAST (CB_TAG_STATEMENT, struct cb_statement, x)) |
|
#define | CB_STATEMENT_P(x) (CB_TREE_TAG (x) == CB_TAG_STATEMENT) |
|
#define | CB_CONTINUE(x) (CB_TREE_CAST (CB_TAG_CONTINUE, struct cb_continue, x)) |
|
#define | CB_CONTINUE_P(x) (CB_TREE_TAG (x) == CB_TAG_CONTINUE) |
|
#define | CB_SET_ATTR(x) (CB_TREE_CAST (CB_TAG_SET_ATTR, struct cb_set_attr, x)) |
|
#define | CB_SET_ATTR_P(x) (CB_TREE_TAG (x) == CB_TAG_SET_ATTR) |
|
#define | CB_LIST(x) (CB_TREE_CAST (CB_TAG_LIST, struct cb_list, x)) |
|
#define | CB_LIST_P(x) (CB_TREE_TAG (x) == CB_TAG_LIST) |
|
#define | CB_PURPOSE(x) (CB_LIST (x)->purpose) |
|
#define | CB_VALUE(x) (CB_LIST (x)->value) |
|
#define | CB_CHAIN(x) (CB_LIST (x)->chain) |
|
#define | CB_SIZES(x) (CB_LIST (x)->sizes) |
|
#define | CB_PURPOSE_INT(x) (CB_INTEGER (CB_PURPOSE (x))->val) |
|
#define | CB_SIZES_INT(x) ((CB_LIST (x)->sizes) & 0x07) |
|
#define | CB_SIZES_INT_UNSIGNED(x) ((CB_LIST (x)->sizes) & CB_SIZE_UNSIGNED) |
|
#define | CB_PAIR_P(x) (CB_LIST_P (x) && CB_PAIR_X (x)) |
|
#define | CB_PAIR_X(x) CB_PURPOSE (x) |
|
#define | CB_PAIR_Y(x) CB_VALUE (x) |
|
#define | CB_REPORT(x) (CB_TREE_CAST (CB_TAG_REPORT, struct cb_report, x)) |
|
#define | CB_REPORT_P(x) (CB_TREE_TAG (x) == CB_TAG_REPORT) |
|
#define | CB_BUILD_FUNCALL_0(f) |
|
#define | CB_BUILD_FUNCALL_1(f, a1) |
|
#define | CB_BUILD_FUNCALL_2(f, a1, a2) |
|
#define | CB_BUILD_FUNCALL_3(f, a1, a2, a3) |
|
#define | CB_BUILD_FUNCALL_4(f, a1, a2, a3, a4) |
|
#define | CB_BUILD_FUNCALL_5(f, a1, a2, a3, a4, a5) |
|
#define | CB_BUILD_FUNCALL_6(f, a1, a2, a3, a4, a5, a6) |
|
#define | CB_BUILD_FUNCALL_7(f, a1, a2, a3, a4, a5, a6, a7) |
|
#define | CB_BUILD_FUNCALL_8(f, a1, a2, a3, a4, a5, a6, a7, a8) |
|
#define | CB_BUILD_FUNCALL_9(f, a1, a2, a3, a4, a5, a6, a7, a8, a9) |
|
#define | CB_BUILD_CAST_ADDRESS(x) cb_build_cast (CB_CAST_ADDRESS, x) |
|
#define | CB_BUILD_CAST_ADDR_OF_ADDR(x) cb_build_cast (CB_CAST_ADDR_OF_ADDR, x) |
|
#define | CB_BUILD_CAST_LENGTH(x) cb_build_cast (CB_CAST_LENGTH, x) |
|
#define | CB_BUILD_CAST_PPOINTER(x) cb_build_cast (CB_CAST_PROGRAM_POINTER, x) |
|
#define | CB_BUILD_PARENTHESIS(x) cb_build_binary_op (x, '@', NULL) |
|
#define | CB_BUILD_NEGATION(x) cb_build_binary_op (x, '!', NULL) |
|
#define | CB_BUILD_STRING0(str) cb_build_string (str, strlen ((char *)(str))) |
|
#define | CB_LIST_INIT(x) cb_build_list (NULL, x, NULL) |
|
#define | CB_BUILD_CHAIN(x, y) cb_build_list (NULL, x, y) |
|
#define | CB_BUILD_PAIR(x, y) cb_build_list (x, y, NULL) |
|
#define | CB_ADD_TO_CHAIN(x, y) y = CB_BUILD_CHAIN (x, y) |
|
#define | CB_CHAIN_PAIR(x, y, z) x = cb_pair_add (x, y, z) |
|
#define | CB_FIELD_ADD(x, y) x = cb_field_add (x, y) |
|
#define | CB_BEFORE cb_int0 |
|
#define | CB_AFTER cb_int1 |
|
#define | COB_MAX_SUBSCRIPTS 16 |
|
#define | CB_PREFIX_ATTR "a_" /* Field attribute (cob_field_attr) */ |
|
#define | CB_PREFIX_BASE "b_" /* Base address (unsigned char *) */ |
|
#define | CB_PREFIX_CONST "c_" /* Constant or literal (cob_field) */ |
|
#define | CB_PREFIX_DECIMAL "d_" /* Decimal number (cob_decimal) */ |
|
#define | CB_PREFIX_FIELD "f_" /* Field (cob_field) */ |
|
#define | CB_PREFIX_FILE "h_" /* File (cob_file) */ |
|
#define | CB_PREFIX_KEYS "k_" /* File keys (cob_file_key []) */ |
|
#define | CB_PREFIX_LABEL "l_" /* Label */ |
|
#define | CB_PREFIX_SEQUENCE "s_" /* Collating sequence */ |
|
#define | CB_PREFIX_STRING "st_" /* String */ |
|
#define | CB_PROGRAM_TYPE 0 |
|
#define | CB_FUNCTION_TYPE 1 |
|
#define | CB_CALL_BY_REFERENCE 1 |
|
#define | CB_CALL_BY_CONTENT 2 |
|
#define | CB_CALL_BY_VALUE 3 |
|
#define | CB_SIZE_AUTO 0 |
|
#define | CB_SIZE_1 1 |
|
#define | CB_SIZE_2 2 |
|
#define | CB_SIZE_4 3 |
|
#define | CB_SIZE_8 4 |
|
#define | CB_SIZE_UNSIGNED 8 |
|
#define | CB_WORD_HASH_SIZE (1U << 11) |
|
#define | CB_WORD_HASH_MASK (CB_WORD_HASH_SIZE - 1U) |
|
#define | CB_ALPHABET_NATIVE 0 |
|
#define | CB_ALPHABET_ASCII 1 |
|
#define | CB_ALPHABET_EBCDIC 2 |
|
#define | CB_ALPHABET_CUSTOM 3 |
|
#define | CB_CONV_L_TO_R (1 << 0) |
|
#define | CB_CONV_CALLEE_STACK (1 << 1) |
|
#define | CB_CONV_NO_RET_UPD (1 << 2) |
|
#define | CB_CONV_STATIC_LINK (1 << 3) |
|
#define | CB_CONV_OPT_LINK (1 << 4) |
|
#define | CB_CONV_THUNK_16 (1 << 5) |
|
#define | CB_CONV_STDCALL (1 << 6) |
|
#define | CB_DEVICE_SYSIN 0 |
|
#define | CB_DEVICE_SYSOUT 1 |
|
#define | CB_DEVICE_SYSERR 2 |
|
#define | CB_DEVICE_CONSOLE 3 |
|
#define | CB_SWITCH_0 0 |
|
#define | CB_SWITCH_1 1 |
|
#define | CB_SWITCH_2 2 |
|
#define | CB_SWITCH_3 3 |
|
#define | CB_SWITCH_4 4 |
|
#define | CB_SWITCH_5 5 |
|
#define | CB_SWITCH_6 6 |
|
#define | CB_SWITCH_7 7 |
|
#define | CB_SWITCH_8 8 |
|
#define | CB_SWITCH_9 9 |
|
#define | CB_SWITCH_10 10 |
|
#define | CB_SWITCH_11 11 |
|
#define | CB_SWITCH_12 12 |
|
#define | CB_SWITCH_13 13 |
|
#define | CB_SWITCH_14 14 |
|
#define | CB_SWITCH_15 15 |
|
#define | CB_FEATURE_FORMFEED 0 |
|
#define | CB_FEATURE_CONVENTION 1 |
|
#define | CB_FEATURE_C01 2 |
|
#define | CB_FEATURE_C02 3 |
|
#define | CB_FEATURE_C03 4 |
|
#define | CB_FEATURE_C04 5 |
|
#define | CB_FEATURE_C05 6 |
|
#define | CB_FEATURE_C06 7 |
|
#define | CB_FEATURE_C07 8 |
|
#define | CB_FEATURE_C08 9 |
|
#define | CB_FEATURE_C09 10 |
|
#define | CB_FEATURE_C10 11 |
|
#define | CB_FEATURE_C11 12 |
|
#define | CB_FEATURE_C12 13 |
|
#define | CB_TREE(x) ((struct cb_tree_common *) (x)) |
|
#define | CB_TREE_TAG(x) (CB_TREE (x)->tag) |
|
#define | CB_TREE_CLASS(x) cb_tree_class (CB_TREE (x)) |
|
#define | CB_TREE_CATEGORY(x) cb_tree_category (CB_TREE (x)) |
|
#define | CB_VALID_TREE(x) (x && CB_TREE (x) != cb_error_node) |
|
#define | CB_INVALID_TREE(x) (!(x) || CB_TREE (x) == cb_error_node) |
|
#define | CB_TREE_CAST(tg, ty, x) ((ty *) (x)) |
|
#define | CB_CONST(x) (CB_TREE_CAST (CB_TAG_CONST, struct cb_const, x)) |
|
#define | CB_CONST_P(x) (CB_TREE_TAG (x) == CB_TAG_CONST) |
|
#define | CB_DIRECT(x) (CB_TREE_CAST (CB_TAG_DIRECT, struct cb_direct, x)) |
|
#define | CB_DIRECT_P(x) (CB_TREE_TAG (x) == CB_TAG_DIRECT) |
|
#define | CB_DEBUG(x) (CB_TREE_CAST (CB_TAG_DEBUG, struct cb_debug, x)) |
|
#define | CB_DEBUG_P(x) (CB_TREE_TAG (x) == CB_TAG_DEBUG) |
|
#define | CB_DEBUG_CALL(x) (CB_TREE_CAST (CB_TAG_DEBUG_CALL, struct cb_debug_call, x)) |
|
#define | CB_DEBUG_CALL_P(x) (CB_TREE_TAG (x) == CB_TAG_DEBUG_CALL) |
|
#define | CB_INTEGER(x) (CB_TREE_CAST (CB_TAG_INTEGER, struct cb_integer, x)) |
|
#define | CB_INTEGER_P(x) (CB_TREE_TAG (x) == CB_TAG_INTEGER) |
|
#define | CB_STRING(x) (CB_TREE_CAST (CB_TAG_STRING, struct cb_string, x)) |
|
#define | CB_STRING_P(x) (CB_TREE_TAG (x) == CB_TAG_STRING) |
|
#define | CB_ALPHABET_NAME(x) (CB_TREE_CAST (CB_TAG_ALPHABET_NAME, struct cb_alphabet_name, x)) |
|
#define | CB_ALPHABET_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_ALPHABET_NAME) |
|
#define | CB_CLASS_NAME(x) (CB_TREE_CAST (CB_TAG_CLASS_NAME, struct cb_class_name, x)) |
|
#define | CB_CLASS_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_CLASS_NAME) |
|
#define | CB_LOCALE_NAME(x) (CB_TREE_CAST (CB_TAG_LOCALE_NAME, struct cb_locale_name, x)) |
|
#define | CB_LOCALE_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_LOCALE_NAME) |
|
#define | CB_SYSTEM_NAME(x) (CB_TREE_CAST (CB_TAG_SYSTEM_NAME, struct cb_system_name, x)) |
|
#define | CB_SYSTEM_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_SYSTEM_NAME) |
|
#define | CB_LITERAL(x) (CB_TREE_CAST (CB_TAG_LITERAL, struct cb_literal, x)) |
|
#define | CB_LITERAL_P(x) (CB_TREE_TAG (x) == CB_TAG_LITERAL) |
|
#define | CB_NUMERIC_LITERAL_P(x) (CB_LITERAL_P (x) && CB_TREE_CATEGORY (x) == CB_CATEGORY_NUMERIC) |
|
#define | CB_DECIMAL(x) (CB_TREE_CAST (CB_TAG_DECIMAL, struct cb_decimal, x)) |
|
#define | CB_DECIMAL_P(x) (CB_TREE_TAG (x) == CB_TAG_DECIMAL) |
|
#define | CB_PICTURE(x) (CB_TREE_CAST (CB_TAG_PICTURE, struct cb_picture, x)) |
|
#define | CB_PICTURE_P(x) (CB_TREE_TAG (x) == CB_TAG_PICTURE) |
|
#define | CB_FIELD(x) (CB_TREE_CAST (CB_TAG_FIELD, struct cb_field, x)) |
|
#define | CB_FIELD_P(x) (CB_TREE_TAG (x) == CB_TAG_FIELD) |
|
#define | CB_REF_OR_FIELD_P(x) (CB_REFERENCE_P (x) || CB_FIELD_P (x)) |
|
#define | CB_FIELD_PTR(x) (CB_REFERENCE_P (x) ? CB_FIELD (cb_ref (x)) : CB_FIELD (x)) |
|
#define | CB_INDEX_P(x) cb_check_index_p (x) |
|
#define | CB_LABEL(x) (CB_TREE_CAST (CB_TAG_LABEL, struct cb_label, x)) |
|
#define | CB_LABEL_P(x) (CB_TREE_TAG (x) == CB_TAG_LABEL) |
|
#define | CB_FILE(x) (CB_TREE_CAST (CB_TAG_FILE, struct cb_file, x)) |
|
#define | CB_FILE_P(x) (CB_TREE_TAG (x) == CB_TAG_FILE) |
|
#define | CB_WORD_TABLE_SIZE (CB_WORD_HASH_SIZE * sizeof (struct cb_word)) |
|
#define | CB_REFERENCE(x) (CB_TREE_CAST (CB_TAG_REFERENCE, struct cb_reference, x)) |
|
#define | CB_REFERENCE_P(x) (CB_TREE_TAG (x) == CB_TAG_REFERENCE) |
|
#define | CB_NAME(x) (CB_REFERENCE (x)->word->name) |
|
#define | CB_WORD_COUNT(x) (CB_REFERENCE (x)->word->count) |
|
#define | CB_WORD_ITEMS(x) (CB_REFERENCE (x)->word->items) |
|
#define | CB_BINARY_OP(x) (CB_TREE_CAST (CB_TAG_BINARY_OP, struct cb_binary_op, x)) |
|
#define | CB_BINARY_OP_P(x) (CB_TREE_TAG (x) == CB_TAG_BINARY_OP) |
|
#define | CB_FUNCALL(x) (CB_TREE_CAST (CB_TAG_FUNCALL, struct cb_funcall, x)) |
|
#define | CB_FUNCALL_P(x) (CB_TREE_TAG (x) == CB_TAG_FUNCALL) |
|
#define | CB_CAST(x) (CB_TREE_CAST (CB_TAG_CAST, struct cb_cast, x)) |
|
#define | CB_CAST_P(x) (CB_TREE_TAG (x) == CB_TAG_CAST) |
|
#define | CB_ASSIGN(x) (CB_TREE_CAST (CB_TAG_ASSIGN, struct cb_assign, x)) |
|
#define | CB_ASSIGN_P(x) (CB_TREE_TAG (x) == CB_TAG_ASSIGN) |
|
#define | CB_INTRINSIC(x) (CB_TREE_CAST (CB_TAG_INTRINSIC, struct cb_intrinsic, x)) |
|
#define | CB_INTRINSIC_P(x) (CB_TREE_TAG (x) == CB_TAG_INTRINSIC) |
|
#define | CB_INITIALIZE(x) (CB_TREE_CAST (CB_TAG_INITIALIZE, struct cb_initialize, x)) |
|
#define | CB_INITIALIZE_P(x) (CB_TREE_TAG (x) == CB_TAG_INITIALIZE) |
|
#define | CB_SEARCH(x) (CB_TREE_CAST (CB_TAG_SEARCH, struct cb_search, x)) |
|
#define | CB_SEARCH_P(x) (CB_TREE_TAG (x) == CB_TAG_SEARCH) |
|
#define | CB_CALL(x) (CB_TREE_CAST (CB_TAG_CALL, struct cb_call, x)) |
|
#define | CB_CALL_P(x) (CB_TREE_TAG (x) == CB_TAG_CALL) |
|
#define | CB_CANCEL(x) (CB_TREE_CAST (CB_TAG_CANCEL, struct cb_cancel, x)) |
|
#define | CB_CANCEL_P(x) (CB_TREE_TAG (x) == CB_TAG_CANCEL) |
|
#define | CB_ALTER(x) (CB_TREE_CAST (CB_TAG_ALTER, struct cb_alter, x)) |
|
#define | CB_ALTER_P(x) (CB_TREE_TAG (x) == CB_TAG_ALTER) |
|
#define | CB_GOTO(x) (CB_TREE_CAST (CB_TAG_GOTO, struct cb_goto, x)) |
|
#define | CB_GOTO_P(x) (CB_TREE_TAG (x) == CB_TAG_GOTO) |
|
#define | CB_IF(x) (CB_TREE_CAST (CB_TAG_IF, struct cb_if, x)) |
|
#define | CB_IF_P(x) (CB_TREE_TAG (x) == CB_TAG_IF) |
|
#define | CB_PERFORM_VARYING(x) (CB_TREE_CAST (CB_TAG_PERFORM_VARYING, struct cb_perform_varying, x)) |
|
#define | CB_PERFORM(x) (CB_TREE_CAST (CB_TAG_PERFORM, struct cb_perform, x)) |
|
#define | CB_PERFORM_P(x) (CB_TREE_TAG (x) == CB_TAG_PERFORM) |
|
#define | CB_STATEMENT(x) (CB_TREE_CAST (CB_TAG_STATEMENT, struct cb_statement, x)) |
|
#define | CB_STATEMENT_P(x) (CB_TREE_TAG (x) == CB_TAG_STATEMENT) |
|
#define | CB_CONTINUE(x) (CB_TREE_CAST (CB_TAG_CONTINUE, struct cb_continue, x)) |
|
#define | CB_CONTINUE_P(x) (CB_TREE_TAG (x) == CB_TAG_CONTINUE) |
|
#define | CB_SET_ATTR(x) (CB_TREE_CAST (CB_TAG_SET_ATTR, struct cb_set_attr, x)) |
|
#define | CB_SET_ATTR_P(x) (CB_TREE_TAG (x) == CB_TAG_SET_ATTR) |
|
#define | CB_LIST(x) (CB_TREE_CAST (CB_TAG_LIST, struct cb_list, x)) |
|
#define | CB_LIST_P(x) (CB_TREE_TAG (x) == CB_TAG_LIST) |
|
#define | CB_PURPOSE(x) (CB_LIST (x)->purpose) |
|
#define | CB_VALUE(x) (CB_LIST (x)->value) |
|
#define | CB_CHAIN(x) (CB_LIST (x)->chain) |
|
#define | CB_SIZES(x) (CB_LIST (x)->sizes) |
|
#define | CB_PURPOSE_INT(x) (CB_INTEGER (CB_PURPOSE (x))->val) |
|
#define | CB_SIZES_INT(x) ((CB_LIST (x)->sizes) & 0x07) |
|
#define | CB_SIZES_INT_UNSIGNED(x) ((CB_LIST (x)->sizes) & CB_SIZE_UNSIGNED) |
|
#define | CB_PAIR_P(x) (CB_LIST_P (x) && CB_PAIR_X (x)) |
|
#define | CB_PAIR_X(x) CB_PURPOSE (x) |
|
#define | CB_PAIR_Y(x) CB_VALUE (x) |
|
#define | CB_REPORT(x) (CB_TREE_CAST (CB_TAG_REPORT, struct cb_report, x)) |
|
#define | CB_REPORT_P(x) (CB_TREE_TAG (x) == CB_TAG_REPORT) |
|
#define | CB_BUILD_FUNCALL_0(f) |
|
#define | CB_BUILD_FUNCALL_1(f, a1) |
|
#define | CB_BUILD_FUNCALL_2(f, a1, a2) |
|
#define | CB_BUILD_FUNCALL_3(f, a1, a2, a3) |
|
#define | CB_BUILD_FUNCALL_4(f, a1, a2, a3, a4) |
|
#define | CB_BUILD_FUNCALL_5(f, a1, a2, a3, a4, a5) |
|
#define | CB_BUILD_FUNCALL_6(f, a1, a2, a3, a4, a5, a6) |
|
#define | CB_BUILD_FUNCALL_7(f, a1, a2, a3, a4, a5, a6, a7) |
|
#define | CB_BUILD_FUNCALL_8(f, a1, a2, a3, a4, a5, a6, a7, a8) |
|
#define | CB_BUILD_FUNCALL_9(f, a1, a2, a3, a4, a5, a6, a7, a8, a9) |
|
#define | CB_BUILD_CAST_ADDRESS(x) cb_build_cast (CB_CAST_ADDRESS, x) |
|
#define | CB_BUILD_CAST_ADDR_OF_ADDR(x) cb_build_cast (CB_CAST_ADDR_OF_ADDR, x) |
|
#define | CB_BUILD_CAST_LENGTH(x) cb_build_cast (CB_CAST_LENGTH, x) |
|
#define | CB_BUILD_CAST_PPOINTER(x) cb_build_cast (CB_CAST_PROGRAM_POINTER, x) |
|
#define | CB_BUILD_PARENTHESIS(x) cb_build_binary_op (x, '@', NULL) |
|
#define | CB_BUILD_NEGATION(x) cb_build_binary_op (x, '!', NULL) |
|
#define | CB_BUILD_STRING0(str) cb_build_string (str, strlen ((char *)(str))) |
|
#define | CB_LIST_INIT(x) cb_build_list (NULL, x, NULL) |
|
#define | CB_BUILD_CHAIN(x, y) cb_build_list (NULL, x, y) |
|
#define | CB_BUILD_PAIR(x, y) cb_build_list (x, y, NULL) |
|
#define | CB_ADD_TO_CHAIN(x, y) y = CB_BUILD_CHAIN (x, y) |
|
#define | CB_CHAIN_PAIR(x, y, z) x = cb_pair_add (x, y, z) |
|
#define | CB_FIELD_ADD(x, y) x = cb_field_add (x, y) |
|
#define | CB_BEFORE cb_int0 |
|
#define | CB_AFTER cb_int1 |
|
#define | COB_MAX_SUBSCRIPTS 16 |
|
#define | CB_PREFIX_ATTR "a_" /* Field attribute (cob_field_attr) */ |
|
#define | CB_PREFIX_BASE "b_" /* Base address (unsigned char *) */ |
|
#define | CB_PREFIX_CONST "c_" /* Constant or literal (cob_field) */ |
|
#define | CB_PREFIX_DECIMAL "d_" /* Decimal number (cob_decimal) */ |
|
#define | CB_PREFIX_FIELD "f_" /* Field (cob_field) */ |
|
#define | CB_PREFIX_FILE "h_" /* File (cob_file) */ |
|
#define | CB_PREFIX_KEYS "k_" /* File keys (cob_file_key []) */ |
|
#define | CB_PREFIX_LABEL "l_" /* Label */ |
|
#define | CB_PREFIX_SEQUENCE "s_" /* Collating sequence */ |
|
#define | CB_PREFIX_STRING "st_" /* String */ |
|
#define | CB_PROGRAM_TYPE 0 |
|
#define | CB_FUNCTION_TYPE 1 |
|
#define | CB_CALL_BY_REFERENCE 1 |
|
#define | CB_CALL_BY_CONTENT 2 |
|
#define | CB_CALL_BY_VALUE 3 |
|
#define | CB_SIZE_AUTO 0 |
|
#define | CB_SIZE_1 1 |
|
#define | CB_SIZE_2 2 |
|
#define | CB_SIZE_4 3 |
|
#define | CB_SIZE_8 4 |
|
#define | CB_SIZE_UNSIGNED 8 |
|
#define | CB_WORD_HASH_SIZE (1U << 11) |
|
#define | CB_WORD_HASH_MASK (CB_WORD_HASH_SIZE - 1U) |
|
#define | CB_ALPHABET_NATIVE 0 |
|
#define | CB_ALPHABET_ASCII 1 |
|
#define | CB_ALPHABET_EBCDIC 2 |
|
#define | CB_ALPHABET_CUSTOM 3 |
|
#define | CB_CONV_L_TO_R (1 << 0) |
|
#define | CB_CONV_CALLEE_STACK (1 << 1) |
|
#define | CB_CONV_NO_RET_UPD (1 << 2) |
|
#define | CB_CONV_STATIC_LINK (1 << 3) |
|
#define | CB_CONV_OPT_LINK (1 << 4) |
|
#define | CB_CONV_THUNK_16 (1 << 5) |
|
#define | CB_CONV_STDCALL (1 << 6) |
|
#define | CB_DEVICE_SYSIN 0 |
|
#define | CB_DEVICE_SYSOUT 1 |
|
#define | CB_DEVICE_SYSERR 2 |
|
#define | CB_DEVICE_CONSOLE 3 |
|
#define | CB_SWITCH_0 0 |
|
#define | CB_SWITCH_1 1 |
|
#define | CB_SWITCH_2 2 |
|
#define | CB_SWITCH_3 3 |
|
#define | CB_SWITCH_4 4 |
|
#define | CB_SWITCH_5 5 |
|
#define | CB_SWITCH_6 6 |
|
#define | CB_SWITCH_7 7 |
|
#define | CB_SWITCH_8 8 |
|
#define | CB_SWITCH_9 9 |
|
#define | CB_SWITCH_10 10 |
|
#define | CB_SWITCH_11 11 |
|
#define | CB_SWITCH_12 12 |
|
#define | CB_SWITCH_13 13 |
|
#define | CB_SWITCH_14 14 |
|
#define | CB_SWITCH_15 15 |
|
#define | CB_FEATURE_FORMFEED 0 |
|
#define | CB_FEATURE_CONVENTION 1 |
|
#define | CB_FEATURE_C01 2 |
|
#define | CB_FEATURE_C02 3 |
|
#define | CB_FEATURE_C03 4 |
|
#define | CB_FEATURE_C04 5 |
|
#define | CB_FEATURE_C05 6 |
|
#define | CB_FEATURE_C06 7 |
|
#define | CB_FEATURE_C07 8 |
|
#define | CB_FEATURE_C08 9 |
|
#define | CB_FEATURE_C09 10 |
|
#define | CB_FEATURE_C10 11 |
|
#define | CB_FEATURE_C11 12 |
|
#define | CB_FEATURE_C12 13 |
|
#define | CB_TREE(x) ((struct cb_tree_common *) (x)) |
|
#define | CB_TREE_TAG(x) (CB_TREE (x)->tag) |
|
#define | CB_TREE_CLASS(x) cb_tree_class (CB_TREE (x)) |
|
#define | CB_TREE_CATEGORY(x) cb_tree_category (CB_TREE (x)) |
|
#define | CB_VALID_TREE(x) (x && CB_TREE (x) != cb_error_node) |
|
#define | CB_INVALID_TREE(x) (!(x) || CB_TREE (x) == cb_error_node) |
|
#define | CB_TREE_CAST(tg, ty, x) ((ty *) (x)) |
|
#define | CB_CONST(x) (CB_TREE_CAST (CB_TAG_CONST, struct cb_const, x)) |
|
#define | CB_CONST_P(x) (CB_TREE_TAG (x) == CB_TAG_CONST) |
|
#define | CB_DIRECT(x) (CB_TREE_CAST (CB_TAG_DIRECT, struct cb_direct, x)) |
|
#define | CB_DIRECT_P(x) (CB_TREE_TAG (x) == CB_TAG_DIRECT) |
|
#define | CB_DEBUG(x) (CB_TREE_CAST (CB_TAG_DEBUG, struct cb_debug, x)) |
|
#define | CB_DEBUG_P(x) (CB_TREE_TAG (x) == CB_TAG_DEBUG) |
|
#define | CB_DEBUG_CALL(x) (CB_TREE_CAST (CB_TAG_DEBUG_CALL, struct cb_debug_call, x)) |
|
#define | CB_DEBUG_CALL_P(x) (CB_TREE_TAG (x) == CB_TAG_DEBUG_CALL) |
|
#define | CB_INTEGER(x) (CB_TREE_CAST (CB_TAG_INTEGER, struct cb_integer, x)) |
|
#define | CB_INTEGER_P(x) (CB_TREE_TAG (x) == CB_TAG_INTEGER) |
|
#define | CB_STRING(x) (CB_TREE_CAST (CB_TAG_STRING, struct cb_string, x)) |
|
#define | CB_STRING_P(x) (CB_TREE_TAG (x) == CB_TAG_STRING) |
|
#define | CB_ALPHABET_NAME(x) (CB_TREE_CAST (CB_TAG_ALPHABET_NAME, struct cb_alphabet_name, x)) |
|
#define | CB_ALPHABET_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_ALPHABET_NAME) |
|
#define | CB_CLASS_NAME(x) (CB_TREE_CAST (CB_TAG_CLASS_NAME, struct cb_class_name, x)) |
|
#define | CB_CLASS_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_CLASS_NAME) |
|
#define | CB_LOCALE_NAME(x) (CB_TREE_CAST (CB_TAG_LOCALE_NAME, struct cb_locale_name, x)) |
|
#define | CB_LOCALE_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_LOCALE_NAME) |
|
#define | CB_SYSTEM_NAME(x) (CB_TREE_CAST (CB_TAG_SYSTEM_NAME, struct cb_system_name, x)) |
|
#define | CB_SYSTEM_NAME_P(x) (CB_TREE_TAG (x) == CB_TAG_SYSTEM_NAME) |
|
#define | CB_LITERAL(x) (CB_TREE_CAST (CB_TAG_LITERAL, struct cb_literal, x)) |
|
#define | CB_LITERAL_P(x) (CB_TREE_TAG (x) == CB_TAG_LITERAL) |
|
#define | CB_NUMERIC_LITERAL_P(x) (CB_LITERAL_P (x) && CB_TREE_CATEGORY (x) == CB_CATEGORY_NUMERIC) |
|
#define | CB_DECIMAL(x) (CB_TREE_CAST (CB_TAG_DECIMAL, struct cb_decimal, x)) |
|
#define | CB_DECIMAL_P(x) (CB_TREE_TAG (x) == CB_TAG_DECIMAL) |
|
#define | CB_PICTURE(x) (CB_TREE_CAST (CB_TAG_PICTURE, struct cb_picture, x)) |
|
#define | CB_PICTURE_P(x) (CB_TREE_TAG (x) == CB_TAG_PICTURE) |
|
#define | CB_FIELD(x) (CB_TREE_CAST (CB_TAG_FIELD, struct cb_field, x)) |
|
#define | CB_FIELD_P(x) (CB_TREE_TAG (x) == CB_TAG_FIELD) |
|
#define | CB_REF_OR_FIELD_P(x) (CB_REFERENCE_P (x) || CB_FIELD_P (x)) |
|
#define | CB_FIELD_PTR(x) (CB_REFERENCE_P (x) ? CB_FIELD (cb_ref (x)) : CB_FIELD (x)) |
|
#define | CB_INDEX_P(x) cb_check_index_p (x) |
|
#define | CB_LABEL(x) (CB_TREE_CAST (CB_TAG_LABEL, struct cb_label, x)) |
|
#define | CB_LABEL_P(x) (CB_TREE_TAG (x) == CB_TAG_LABEL) |
|
#define | CB_FILE(x) (CB_TREE_CAST (CB_TAG_FILE, struct cb_file, x)) |
|
#define | CB_FILE_P(x) (CB_TREE_TAG (x) == CB_TAG_FILE) |
|
#define | CB_WORD_TABLE_SIZE (CB_WORD_HASH_SIZE * sizeof (struct cb_word)) |
|
#define | CB_REFERENCE(x) (CB_TREE_CAST (CB_TAG_REFERENCE, struct cb_reference, x)) |
|
#define | CB_REFERENCE_P(x) (CB_TREE_TAG (x) == CB_TAG_REFERENCE) |
|
#define | CB_NAME(x) (CB_REFERENCE (x)->word->name) |
|
#define | CB_WORD_COUNT(x) (CB_REFERENCE (x)->word->count) |
|
#define | CB_WORD_ITEMS(x) (CB_REFERENCE (x)->word->items) |
|
#define | CB_BINARY_OP(x) (CB_TREE_CAST (CB_TAG_BINARY_OP, struct cb_binary_op, x)) |
|
#define | CB_BINARY_OP_P(x) (CB_TREE_TAG (x) == CB_TAG_BINARY_OP) |
|
#define | CB_FUNCALL(x) (CB_TREE_CAST (CB_TAG_FUNCALL, struct cb_funcall, x)) |
|
#define | CB_FUNCALL_P(x) (CB_TREE_TAG (x) == CB_TAG_FUNCALL) |
|
#define | CB_CAST(x) (CB_TREE_CAST (CB_TAG_CAST, struct cb_cast, x)) |
|
#define | CB_CAST_P(x) (CB_TREE_TAG (x) == CB_TAG_CAST) |
|
#define | CB_ASSIGN(x) (CB_TREE_CAST (CB_TAG_ASSIGN, struct cb_assign, x)) |
|
#define | CB_ASSIGN_P(x) (CB_TREE_TAG (x) == CB_TAG_ASSIGN) |
|
#define | CB_INTRINSIC(x) (CB_TREE_CAST (CB_TAG_INTRINSIC, struct cb_intrinsic, x)) |
|
#define | CB_INTRINSIC_P(x) (CB_TREE_TAG (x) == CB_TAG_INTRINSIC) |
|
#define | CB_INITIALIZE(x) (CB_TREE_CAST (CB_TAG_INITIALIZE, struct cb_initialize, x)) |
|
#define | CB_INITIALIZE_P(x) (CB_TREE_TAG (x) == CB_TAG_INITIALIZE) |
|
#define | CB_SEARCH(x) (CB_TREE_CAST (CB_TAG_SEARCH, struct cb_search, x)) |
|
#define | CB_SEARCH_P(x) (CB_TREE_TAG (x) == CB_TAG_SEARCH) |
|
#define | CB_CALL(x) (CB_TREE_CAST (CB_TAG_CALL, struct cb_call, x)) |
|
#define | CB_CALL_P(x) (CB_TREE_TAG (x) == CB_TAG_CALL) |
|
#define | CB_CANCEL(x) (CB_TREE_CAST (CB_TAG_CANCEL, struct cb_cancel, x)) |
|
#define | CB_CANCEL_P(x) (CB_TREE_TAG (x) == CB_TAG_CANCEL) |
|
#define | CB_ALTER(x) (CB_TREE_CAST (CB_TAG_ALTER, struct cb_alter, x)) |
|
#define | CB_ALTER_P(x) (CB_TREE_TAG (x) == CB_TAG_ALTER) |
|
#define | CB_GOTO(x) (CB_TREE_CAST (CB_TAG_GOTO, struct cb_goto, x)) |
|
#define | CB_GOTO_P(x) (CB_TREE_TAG (x) == CB_TAG_GOTO) |
|
#define | CB_IF(x) (CB_TREE_CAST (CB_TAG_IF, struct cb_if, x)) |
|
#define | CB_IF_P(x) (CB_TREE_TAG (x) == CB_TAG_IF) |
|
#define | CB_PERFORM_VARYING(x) (CB_TREE_CAST (CB_TAG_PERFORM_VARYING, struct cb_perform_varying, x)) |
|
#define | CB_PERFORM(x) (CB_TREE_CAST (CB_TAG_PERFORM, struct cb_perform, x)) |
|
#define | CB_PERFORM_P(x) (CB_TREE_TAG (x) == CB_TAG_PERFORM) |
|
#define | CB_STATEMENT(x) (CB_TREE_CAST (CB_TAG_STATEMENT, struct cb_statement, x)) |
|
#define | CB_STATEMENT_P(x) (CB_TREE_TAG (x) == CB_TAG_STATEMENT) |
|
#define | CB_CONTINUE(x) (CB_TREE_CAST (CB_TAG_CONTINUE, struct cb_continue, x)) |
|
#define | CB_CONTINUE_P(x) (CB_TREE_TAG (x) == CB_TAG_CONTINUE) |
|
#define | CB_SET_ATTR(x) (CB_TREE_CAST (CB_TAG_SET_ATTR, struct cb_set_attr, x)) |
|
#define | CB_SET_ATTR_P(x) (CB_TREE_TAG (x) == CB_TAG_SET_ATTR) |
|
#define | CB_LIST(x) (CB_TREE_CAST (CB_TAG_LIST, struct cb_list, x)) |
|
#define | CB_LIST_P(x) (CB_TREE_TAG (x) == CB_TAG_LIST) |
|
#define | CB_PURPOSE(x) (CB_LIST (x)->purpose) |
|
#define | CB_VALUE(x) (CB_LIST (x)->value) |
|
#define | CB_CHAIN(x) (CB_LIST (x)->chain) |
|
#define | CB_SIZES(x) (CB_LIST (x)->sizes) |
|
#define | CB_PURPOSE_INT(x) (CB_INTEGER (CB_PURPOSE (x))->val) |
|
#define | CB_SIZES_INT(x) ((CB_LIST (x)->sizes) & 0x07) |
|
#define | CB_SIZES_INT_UNSIGNED(x) ((CB_LIST (x)->sizes) & CB_SIZE_UNSIGNED) |
|
#define | CB_PAIR_P(x) (CB_LIST_P (x) && CB_PAIR_X (x)) |
|
#define | CB_PAIR_X(x) CB_PURPOSE (x) |
|
#define | CB_PAIR_Y(x) CB_VALUE (x) |
|
#define | CB_REPORT(x) (CB_TREE_CAST (CB_TAG_REPORT, struct cb_report, x)) |
|
#define | CB_REPORT_P(x) (CB_TREE_TAG (x) == CB_TAG_REPORT) |
|
#define | CB_BUILD_FUNCALL_0(f) |
|
#define | CB_BUILD_FUNCALL_1(f, a1) |
|
#define | CB_BUILD_FUNCALL_2(f, a1, a2) |
|
#define | CB_BUILD_FUNCALL_3(f, a1, a2, a3) |
|
#define | CB_BUILD_FUNCALL_4(f, a1, a2, a3, a4) |
|
#define | CB_BUILD_FUNCALL_5(f, a1, a2, a3, a4, a5) |
|
#define | CB_BUILD_FUNCALL_6(f, a1, a2, a3, a4, a5, a6) |
|
#define | CB_BUILD_FUNCALL_7(f, a1, a2, a3, a4, a5, a6, a7) |
|
#define | CB_BUILD_FUNCALL_8(f, a1, a2, a3, a4, a5, a6, a7, a8) |
|
#define | CB_BUILD_FUNCALL_9(f, a1, a2, a3, a4, a5, a6, a7, a8, a9) |
|
#define | CB_BUILD_CAST_ADDRESS(x) cb_build_cast (CB_CAST_ADDRESS, x) |
|
#define | CB_BUILD_CAST_ADDR_OF_ADDR(x) cb_build_cast (CB_CAST_ADDR_OF_ADDR, x) |
|
#define | CB_BUILD_CAST_LENGTH(x) cb_build_cast (CB_CAST_LENGTH, x) |
|
#define | CB_BUILD_CAST_PPOINTER(x) cb_build_cast (CB_CAST_PROGRAM_POINTER, x) |
|
#define | CB_BUILD_PARENTHESIS(x) cb_build_binary_op (x, '@', NULL) |
|
#define | CB_BUILD_NEGATION(x) cb_build_binary_op (x, '!', NULL) |
|
#define | CB_BUILD_STRING0(str) cb_build_string (str, strlen ((char *)(str))) |
|
#define | CB_LIST_INIT(x) cb_build_list (NULL, x, NULL) |
|
#define | CB_BUILD_CHAIN(x, y) cb_build_list (NULL, x, y) |
|
#define | CB_BUILD_PAIR(x, y) cb_build_list (x, y, NULL) |
|
#define | CB_ADD_TO_CHAIN(x, y) y = CB_BUILD_CHAIN (x, y) |
|
#define | CB_CHAIN_PAIR(x, y, z) x = cb_pair_add (x, y, z) |
|
#define | CB_FIELD_ADD(x, y) x = cb_field_add (x, y) |
|
|
char * | cb_name (cb_tree) |
|
enum cb_class | cb_tree_class (cb_tree) |
|
enum cb_category | cb_tree_category (cb_tree) |
|
int | cb_tree_type (const cb_tree, const struct cb_field *) |
|
int | cb_category_is_alpha (cb_tree) |
|
int | cb_fits_int (const cb_tree) |
|
int | cb_fits_long_long (const cb_tree) |
|
int | cb_get_int (const cb_tree) |
|
cob_s64_t | cb_get_long_long (const cb_tree) |
|
cob_u64_t | cb_get_u_long_long (const cb_tree) |
|
void | cb_init_constants (void) |
|
cb_tree | cb_int (const int) |
|
cb_tree | cb_int_hex (const int) |
|
cb_tree | cb_build_string (const void *, const size_t) |
|
cb_tree | cb_build_class_name (cb_tree, cb_tree) |
|
cb_tree | cb_build_locale_name (cb_tree, cb_tree) |
|
cb_tree | cb_build_numeric_literal (const int, const void *, const int) |
|
cb_tree | cb_build_alphanumeric_literal (const void *, const size_t) |
|
cb_tree | cb_build_numsize_literal (const void *, const size_t, const int) |
|
cb_tree | cb_concat_literals (const cb_tree, const cb_tree) |
|
cb_tree | cb_build_decimal (const int) |
|
cb_tree | cb_build_picture (const char *) |
|
cb_tree | cb_build_comment (const char *) |
|
cb_tree | cb_build_direct (const char *, const unsigned int) |
|
cb_tree | cb_build_debug (const cb_tree, const char *, const cb_tree) |
|
cb_tree | cb_build_debug_call (struct cb_label *) |
|
struct cb_picture * | cb_build_binary_picture (const char *, const cob_u32_t, const cob_u32_t) |
|
cb_tree | cb_build_field (cb_tree) |
|
cb_tree | cb_build_implicit_field (cb_tree, const int) |
|
cb_tree | cb_build_constant (cb_tree, cb_tree) |
|
void | cb_build_symbolic_chars (const cb_tree, const cb_tree) |
|
struct cb_field * | cb_field_add (struct cb_field *, struct cb_field *) |
|
struct cb_field * | cb_field_founder (const struct cb_field *) |
|
struct cb_field * | cb_field_variable_size (const struct cb_field *) |
|
unsigned int | cb_field_variable_address (const struct cb_field *) |
|
int | cb_field_subordinate (const struct cb_field *, const struct cb_field *) |
|
cb_tree | cb_build_label (cb_tree, struct cb_label *) |
|
struct cb_file * | build_file (cb_tree) |
|
void | validate_file (struct cb_file *, cb_tree) |
|
void | finalize_file (struct cb_file *, struct cb_field *) |
|
cb_tree | cb_build_filler (void) |
|
cb_tree | cb_build_reference (const char *) |
|
cb_tree | cb_build_field_reference (struct cb_field *, cb_tree) |
|
const char * | cb_define (cb_tree, cb_tree) |
|
char * | cb_to_cname (const char *) |
|
void | cb_set_system_names (void) |
|
cb_tree | cb_ref (cb_tree) |
|
cb_tree | cb_build_binary_op (cb_tree, const int, cb_tree) |
|
cb_tree | cb_build_binary_list (cb_tree, const int) |
|
cb_tree | cb_build_funcall (const char *, const int, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree) |
|
cb_tree | cb_build_cast (const enum cb_cast_type, const cb_tree) |
|
cb_tree | cb_build_cast_int (const cb_tree) |
|
cb_tree | cb_build_cast_llint (const cb_tree) |
|
cb_tree | cb_build_assign (const cb_tree, const cb_tree) |
|
cb_tree | cb_build_intrinsic (cb_tree, cb_tree, cb_tree, const int) |
|
cb_tree | cb_build_any_intrinsic (cb_tree) |
|
cb_tree | cb_build_search (const int, const cb_tree, const cb_tree, const cb_tree, const cb_tree) |
|
cb_tree | cb_build_call (const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cob_u32_t, const int) |
|
cb_tree | cb_build_alter (const cb_tree, const cb_tree) |
|
cb_tree | cb_build_cancel (const cb_tree) |
|
cb_tree | cb_build_goto (const cb_tree, const cb_tree) |
|
cb_tree | cb_build_if (const cb_tree, const cb_tree, const cb_tree, const unsigned int) |
|
cb_tree | cb_build_perform (const enum cb_perform_type) |
|
cb_tree | cb_build_perform_varying (cb_tree, cb_tree, cb_tree, cb_tree) |
|
struct cb_statement * | cb_build_statement (const char *) |
|
cb_tree | cb_build_continue (void) |
|
cb_tree | cb_build_list (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_list_add (cb_tree, cb_tree) |
|
cb_tree | cb_pair_add (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_list_append (cb_tree, cb_tree) |
|
cb_tree | cb_list_reverse (cb_tree) |
|
int | cb_list_length (cb_tree) |
|
struct cb_report * | build_report (cb_tree) |
|
void | cb_add_common_prog (struct cb_program *) |
|
void | cb_insert_common_prog (struct cb_program *, struct cb_program *) |
|
struct cb_intrinsic_table * | lookup_intrinsic (const char *, const int, const int) |
|
cb_tree | cb_build_alphabet_name (cb_tree) |
|
cb_tree | cb_build_initialize (const cb_tree, const cb_tree, const cb_tree, const unsigned int, const unsigned int, const unsigned int) |
|
struct cb_literal * | build_literal (enum cb_category, const void *, const size_t) |
|
cb_tree | cb_build_system_name (const enum cb_system_name_category, const int) |
|
struct cobc_reserved * | lookup_reserved_word (const char *) |
|
cb_tree | lookup_system_name (const char *) |
|
void | cb_list_reserved (void) |
|
void | cb_list_intrinsics (void) |
|
void | cb_list_mnemonics (void) |
|
void | cb_list_system (void) |
|
void | cb_list_map (cb_tree(*)(cb_tree), cb_tree) |
|
void | cb_warning_x (cb_tree, const char *,...) COB_A_FORMAT23 |
|
void | cb_error_x (cb_tree, const char *,...) COB_A_FORMAT23 |
|
void | redefinition_error (cb_tree) |
|
void | redefinition_warning (cb_tree, cb_tree) |
|
void | undefined_error (cb_tree) |
|
void | ambiguous_error (cb_tree) |
|
void | group_error (cb_tree, const char *) |
|
void | level_redundant_error (cb_tree, const char *) |
|
void | level_require_error (cb_tree, const char *) |
|
void | level_except_error (cb_tree, const char *) |
|
int | cb_get_level (cb_tree) |
|
cb_tree | cb_build_field_tree (cb_tree, cb_tree, struct cb_field *, enum cb_storage, struct cb_file *, const int) |
|
struct cb_field * | cb_resolve_redefines (struct cb_field *, cb_tree) |
|
void | cb_validate_field (struct cb_field *) |
|
void | cb_validate_88_item (struct cb_field *) |
|
struct cb_field * | cb_validate_78_item (struct cb_field *, const cob_u32_t) |
|
struct cb_field * | cb_get_real_field (void) |
|
void | cb_clear_real_field (void) |
|
struct cb_program * | cb_build_program (struct cb_program *, const int) |
|
cb_tree | cb_check_numeric_value (cb_tree) |
|
size_t | cb_check_index_p (cb_tree x) |
|
void | cb_build_registers (void) |
|
void | cb_build_debug_item (void) |
|
void | cb_check_field_debug (cb_tree) |
|
char * | cb_encode_program_id (const char *) |
|
char * | cb_build_program_id (cb_tree, cb_tree, const cob_u32_t) |
|
cb_tree | cb_define_switch_name (cb_tree, cb_tree, const int) |
|
cb_tree | cb_build_section_name (cb_tree, const int) |
|
cb_tree | cb_build_assignment_name (struct cb_file *, cb_tree) |
|
cb_tree | cb_build_index (cb_tree, cb_tree, const unsigned int, struct cb_field *) |
|
cb_tree | cb_build_identifier (cb_tree, const int) |
|
cb_tree | cb_build_length (cb_tree) |
|
cb_tree | cb_build_const_length (cb_tree) |
|
cb_tree | cb_build_address (cb_tree) |
|
cb_tree | cb_build_ppointer (cb_tree) |
|
void | cb_validate_program_environment (struct cb_program *) |
|
void | cb_validate_program_data (struct cb_program *) |
|
void | cb_validate_program_body (struct cb_program *) |
|
cb_tree | cb_build_expr (cb_tree) |
|
cb_tree | cb_build_cond (cb_tree) |
|
void | cb_emit_arithmetic (cb_tree, const int, cb_tree) |
|
cb_tree | cb_build_add (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_sub (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_corresponding (cb_tree(*)(cb_tree, cb_tree, cb_tree), cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_move_corresponding (cb_tree, cb_tree) |
|
void | cb_emit_accept (cb_tree, cb_tree, struct cb_attr_struct *) |
|
void | cb_emit_accept_line_or_col (cb_tree, const int) |
|
void | cb_emit_accept_escape_key (cb_tree) |
|
void | cb_emit_accept_exception_status (cb_tree) |
|
void | cb_emit_accept_user_name (cb_tree) |
|
void | cb_emit_accept_date (cb_tree) |
|
void | cb_emit_accept_date_yyyymmdd (cb_tree) |
|
void | cb_emit_accept_day (cb_tree) |
|
void | cb_emit_accept_day_yyyyddd (cb_tree) |
|
void | cb_emit_accept_day_of_week (cb_tree) |
|
void | cb_emit_accept_time (cb_tree) |
|
void | cb_emit_accept_command_line (cb_tree) |
|
void | cb_emit_accept_environment (cb_tree) |
|
void | cb_emit_accept_mnemonic (cb_tree, cb_tree) |
|
void | cb_emit_accept_name (cb_tree, cb_tree) |
|
void | cb_emit_accept_arg_number (cb_tree) |
|
void | cb_emit_accept_arg_value (cb_tree) |
|
void | cb_emit_get_environment (cb_tree, cb_tree) |
|
void | cb_emit_allocate (cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_alter (cb_tree, cb_tree) |
|
void | cb_emit_free (cb_tree) |
|
void | cb_emit_call (cb_tree, cb_tree, cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_cancel (cb_tree) |
|
void | cb_emit_close (cb_tree, cb_tree) |
|
void | cb_emit_commit (void) |
|
void | cb_emit_continue (void) |
|
void | cb_emit_delete (cb_tree) |
|
void | cb_emit_delete_file (cb_tree) |
|
void | cb_emit_display (cb_tree, cb_tree, cb_tree, cb_tree, struct cb_attr_struct *) |
|
cb_tree | cb_build_display_mnemonic (cb_tree) |
|
cb_tree | cb_build_display_name (cb_tree) |
|
void | cb_emit_env_name (cb_tree) |
|
void | cb_emit_env_value (cb_tree) |
|
void | cb_emit_arg_number (cb_tree) |
|
void | cb_emit_command_line (cb_tree) |
|
void | cb_emit_divide (cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_evaluate (cb_tree, cb_tree) |
|
void | cb_emit_goto (cb_tree, cb_tree) |
|
void | cb_emit_exit (const unsigned int) |
|
void | cb_emit_if (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_if_check_break (cb_tree, cb_tree) |
|
void | cb_emit_initialize (cb_tree, cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_inspect (cb_tree, cb_tree, cb_tree, const unsigned int) |
|
void | cb_init_tallying (void) |
|
cb_tree | cb_build_tallying_data (cb_tree) |
|
cb_tree | cb_build_tallying_characters (cb_tree) |
|
cb_tree | cb_build_tallying_all (void) |
|
cb_tree | cb_build_tallying_leading (void) |
|
cb_tree | cb_build_tallying_trailing (void) |
|
cb_tree | cb_build_tallying_value (cb_tree, cb_tree) |
|
cb_tree | cb_build_replacing_characters (cb_tree, cb_tree) |
|
cb_tree | cb_build_replacing_all (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_replacing_leading (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_replacing_first (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_replacing_trailing (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_converting (cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_inspect_region_start (void) |
|
int | validate_move (cb_tree, cb_tree, const unsigned int) |
|
cb_tree | cb_build_move (cb_tree, cb_tree) |
|
void | cb_emit_move (cb_tree, cb_tree) |
|
void | cb_emit_open (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_perform (cb_tree, cb_tree) |
|
cb_tree | cb_build_perform_once (cb_tree) |
|
cb_tree | cb_build_perform_times (cb_tree) |
|
cb_tree | cb_build_perform_until (cb_tree, cb_tree) |
|
cb_tree | cb_build_perform_forever (cb_tree) |
|
cb_tree | cb_build_perform_exit (struct cb_label *) |
|
void | cb_emit_read (cb_tree, cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_ready_trace (void) |
|
void | cb_emit_rewrite (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_release (cb_tree, cb_tree) |
|
void | cb_emit_reset_trace (void) |
|
void | cb_emit_return (cb_tree, cb_tree) |
|
void | cb_emit_rollback (void) |
|
void | cb_emit_search (cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_search_all (cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_setenv (cb_tree, cb_tree) |
|
void | cb_emit_set_to (cb_tree, cb_tree) |
|
void | cb_emit_set_up_down (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_set_on_off (cb_tree, cb_tree) |
|
void | cb_emit_set_true (cb_tree) |
|
void | cb_emit_set_false (cb_tree) |
|
void | cb_emit_set_attribute (cb_tree, const int, const int) |
|
cb_tree | cb_build_set_attribute (const struct cb_field *, const int, const int) |
|
void | cb_emit_sort_init (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_sort_using (cb_tree, cb_tree) |
|
void | cb_emit_sort_input (cb_tree) |
|
void | cb_emit_sort_giving (cb_tree, cb_tree) |
|
void | cb_emit_sort_output (cb_tree) |
|
void | cb_emit_sort_finish (cb_tree) |
|
void | cb_emit_start (cb_tree, cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_stop_run (cb_tree) |
|
void | cb_emit_string (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_unlock (cb_tree) |
|
void | cb_emit_unstring (cb_tree, cb_tree, cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_unstring_delimited (cb_tree, cb_tree) |
|
cb_tree | cb_build_unstring_into (cb_tree, cb_tree, cb_tree) |
|
void | cb_emit_write (cb_tree, cb_tree, cb_tree, cb_tree) |
|
cb_tree | cb_build_write_advancing_lines (cb_tree, cb_tree) |
|
cb_tree | cb_build_write_advancing_mnemonic (cb_tree, cb_tree) |
|
cb_tree | cb_build_write_advancing_page (cb_tree) |
|
DECLNORET void | cobc_tree_cast_error (const cb_tree, const char *, const int, const enum cb_tag) COB_A_NORETURN |
|
void | codegen (struct cb_program *, const int) |
|
void | cb_unput_dot (void) |
|
void | cb_add_78 (struct cb_field *) |
|
void | cb_reset_78 (void) |
|
void | cb_reset_global_78 (void) |
|
struct cb_field * | check_level_78 (const char *) |
|
References _, cb_program::alphabet_name_list, attr_list_reverse(), base_cache_cmp(), call_list::callname, CB_CHAIN, CB_CLASS_NAME, CB_CLASS_NUMERIC, CB_FUNCTION_TYPE, cb_list_add(), CB_LITERAL, cb_local_file, CB_NEED_HIGH, CB_NEED_LOW, CB_NEED_QUOTE, CB_NEED_SPACE, CB_NEED_ZERO, CB_PREFIX_ATTR, CB_PREFIX_BASE, CB_PREFIX_CONST, CB_PREFIX_FIELD, CB_PREFIX_STRING, CB_PROGRAM_TYPE, cb_source_file, cb_storage_file, cb_storage_file_name, CB_TREE_CLASS, CB_VALUE, CB_XSTRINGIFY, cb_program::class_name_list, COB_ALIGN, cob_gen_optim(), COB_INSIDE_SIZE, COB_KEYWORD_INLINE, COB_MAX_SUBSCRIPTS, COB_MINI_BUFF, COB_MINI_MAX, COB_OPTIM_MAX, COB_OPTIM_MIN, COB_TYPE_ALPHANUMERIC, COB_TYPE_ALPHANUMERIC_ALL, cob_u32_t, cobc_flag_main, cobc_main_malloc(), codegen(), field_list::curr_prog, base_list::curr_prog, cb_literal::data, attr_list::digits, cb_program::entry_list, excp_current_paragraph, excp_current_program_id, excp_current_section, field_list::f, base_list::f, field_cache_cmp(), cb_program::flag_chained, cb_program::flag_debugging, cb_field::flag_filler, cb_program::flag_global_use, cb_field::flag_local, cb_program::flag_main, cb_program::flag_recursive, attr_list::flags, found, gen_alt_ebcdic, gen_custom, gen_dynamic, gen_ebcdic_ascii, gen_figurative, gen_full_ebcdic, gen_if_level, gen_native, gen_nested_tab, i_counters, string_list::id, attr_list::id, literal_list::id, cb_field::id, inside_check, inside_stack, last_line, last_segment, list_cache_sort(), literal_list_reverse(), cb_literal::llit, local_filename::local_fp, cb_program::local_include, local_mem, cb_program::local_storage, local_working_mem, lookup_attr(), loop_counter, cb_program::max_call_param, cb_field::memory_size, cb_field::name, need_save_exception, needs_exit_prog, needs_unifunc, cb_program::nested_level, nested_list::nested_prog, cb_program::nested_prog_list, string_list::next, attr_list::next, literal_list::next, field_list::next, call_list::next, base_list::next, nested_list::next, cb_program::next_program, non_nested_count, NULL, num_cob_fields, optimize_defs, cb_program::orig_program_id, output(), output_attr(), output_class_name_definition(), output_entry_function(), output_field(), output_header(), output_indent_level, output_internal_function(), output_local(), output_main_function(), output_newline(), output_size(), output_storage(), output_string(), output_target, PACKAGE_VERSION, param_id, cb_program::parameter_list, PATCH_LEVEL, attr_list::pic, cb_program::prog_type, progid, cb_program::program_id, attr_list::scale, cb_literal::sign, cb_literal::size, cb_field::special_index, stack_id, string_buffer, string_id, string_list_reverse(), string_list::text, cb_program::toplev_count, attr_list::type, working_mem, literal_list::x, field_list::x, and yyout.
Referenced by codegen(), and process_translate().
7356 const char *prevprog;
7400 save_sticky = cb_sticky_linkage;
7426 sectime = time (
NULL);
7427 loctime = localtime (§ime);
7429 if (loctime->tm_sec >= 60) {
7430 loctime->tm_sec = 59;
7434 "%b %d %Y %H:%M:%S", loctime);
7446 #ifdef _XOPEN_SOURCE_EXTENDED
7447 output (
"#ifndef\t_XOPEN_SOURCE_EXTENDED\n");
7448 output (
"#define\t_XOPEN_SOURCE_EXTENDED 1\n");
7452 output (
"#include <stdio.h>\n");
7453 output (
"#include <stdlib.h>\n");
7454 output (
"#include <stddef.h>\n");
7455 output (
"#include <string.h>\n");
7456 output (
"#include <math.h>\n");
7457 #ifdef WORDS_BIGENDIAN
7458 output (
"#define WORDS_BIGENDIAN 1\n");
7460 #ifdef COB_KEYWORD_INLINE
7461 output (
"#define COB_KEYWORD_INLINE %s\n",
7464 output (
"#include <libcob.h>\n\n");
7466 output (
"#define COB_SOURCE_FILE\t\t\"%s\"\n",
7468 output (
"#define COB_PACKAGE_VERSION\t\t\"%s\"\n",
7470 output (
"#define COB_PATCH_LEVEL\t\t%d\n",
7473 output (
"#define COB_MODULE_FORMATTED_DATE\t\"%s\"\n",
7476 i = ((loctime->tm_year + 1900) * 10000) +
7477 ((loctime->tm_mon + 1) * 100) +
7479 output (
"#define COB_MODULE_DATE\t\t%d\n", i);
7480 i = (loctime->tm_hour * 10000) +
7481 (loctime->tm_min * 100) +
7483 output (
"#define COB_MODULE_TIME\t\t%d\n", i);
7485 output (
"#define COB_MODULE_DATE\t\t0\n");
7486 output (
"#define COB_MODULE_TIME\t\t0\n");
7490 output (
"/* Global variables */\n");
7493 output (
"/* Function prototypes */\n\n");
7497 for (l1 = CB_VALUE (l); l1; l1 =
CB_CHAIN (l1)) {
7499 if (strcasecmp (cb_code_field (CB_VALUE (l1))->name,
7500 cb_code_field (CB_VALUE (l2))->name) == 0) {
7511 output (
"static int\t\t%s ();\n",
7514 output (
"int\t\t\t%s ();\n",
7522 if (cp->
prog_type == CB_FUNCTION_TYPE) {
7525 output (
"static cob_field\t*%s_ (const int, cob_field **",
7527 output (
"static cob_field\t*%s_ (const int",
7532 output (
"static int\t\t%s_ (const int",
7535 output (
"static int\t\t%s_%d_ (const int",
7545 if (cb_sticky_linkage) {
7547 cb_code_field (CB_VALUE (l))->
id);
7552 if (cb_flag_stack_check) {
7553 output (
") COB_NOINLINE;\n");
7565 if (!prog->nested_level && prog->class_name_list) {
7566 output (
"/* Class names */\n");
7567 for (l = prog->class_name_list; l; l =
CB_CHAIN (l)) {
7573 if (prog->flag_main) {
7579 output (
"/* Functions */\n\n");
7582 if (prog->prog_type == CB_FUNCTION_TYPE) {
7583 output (
"/* FUNCTION-ID '%s' */\n\n", prog->orig_program_id);
7585 output (
"/* PROGRAM-ID '%s' */\n\n", prog->orig_program_id);
7588 for (l = prog->entry_list; l; l =
CB_CHAIN (l)) {
7594 if (!prog->next_program) {
7595 output (
"/* End functions */\n\n");
7628 output_local (
"static struct cob_call_struct\tcob_nest_tab[] = {\n");
7629 nlp = prog->nested_prog_list;
7630 for (; nlp; nlp = nlp->
next) {
7633 if (!prog->flag_recursive) {
7637 output_local (
"\t{ \"%s\", { (void *(*)())%s_%d__ }, { NULL } },\n",
7642 output_local (
"\t{ \"%s\", { (void *(*)())%s_%d__ }, { (void *(*)())%s_%d_ } },\n",
7685 if (prog->flag_debugging) {
7687 output_local (
"static int\tcob_debugging_mode = 0;\n");
7697 output_local (
"unsigned char\t\t*cob_local_ptr = NULL;\n");
7699 output_local (
"static unsigned char\t*cob_local_save = NULL;\n");
7705 if (cb_flag_stack_on_heap || prog->flag_recursive) {
7706 output_local (
"cob_field\t\t**cob_procedure_params;\n");
7708 if (prog->max_call_param) {
7709 i = prog->max_call_param;
7713 output_local (
"cob_field\t\t*cob_procedure_params[%d];\n", i);
7721 if (cb_flag_stack_check) {
7725 if (cb_flag_stack_on_heap || prog->flag_recursive) {
7728 output_local (
"struct cob_frame\tframe_stack[%d];\n\n",
7733 output_local (
"\n/* Dynamic field FUNCTION-ID pointers */\n");
7747 CB_PREFIX_BASE, blp->
f->
id);
7750 CB_PREFIX_BASE, blp->
f->
id);
7753 CB_PREFIX_BASE, blp->
f->
id,
7768 output (
"static cob_field %s%d\t= ", CB_PREFIX_FIELD,
7780 output (
";\t/* Implicit FILLER */\n");
7792 if (prog->next_program) {
7793 codegen (prog->next_program, 1);
7806 output_storage (
"static unsigned int\t\tcob_reference_count = 0;\n");
7810 output_storage (
"static const char\t\t*cob_module_path = NULL;\n");
7817 CB_PREFIX_BASE, blp->
f->
id);
7834 CB_PREFIX_BASE, blp->
f->
id);
7837 CB_PREFIX_BASE, blp->
f->
id,
7851 CB_PREFIX_ATTR, j->
id);
7857 for (s = j->
pic; *s; s += 5) {
7859 s[0], s[1], s[2], s[3], s[4]);
7868 output_storage (
"\nstatic const cob_field_attr cob_all_attr = ");
7870 COB_TYPE_ALPHANUMERIC_ALL);
7885 output (
"static cob_field %s%d\t= ", CB_PREFIX_FIELD,
7897 output (
";\t/* Implicit FILLER */\n");
7911 output (
"static const cob_fld_union %s%d\t= ",
7912 CB_PREFIX_CONST, m->
id);
7919 (lp->
sign < 0) ?
"-" : (lp->
sign > 0) ?
"+" :
"");
7927 output (
"static const cob_field %s%d\t= ",
7928 CB_PREFIX_CONST, m->
id);
7936 output (
"static cob_field cob_all_low\t= ");
7938 output (
"(cob_u8_ptr)\"\\0\", ");
7939 output (
"&cob_all_attr};\n");
7942 output (
"static cob_field cob_all_high\t= ");
7944 output (
"(cob_u8_ptr)\"\\xff\", ");
7945 output (
"&cob_all_attr};\n");
7948 output (
"static cob_field cob_all_quote\t= ");
7950 if (cb_flag_apostrophe) {
7951 output (
"(cob_u8_ptr)\"'\", ");
7953 output (
"(cob_u8_ptr)\"\\\"\", ");
7955 output (
"&cob_all_attr};\n");
7958 output (
"static cob_field cob_all_space\t= ");
7960 output (
"(cob_u8_ptr)\" \", ");
7961 output (
"&cob_all_attr};\n");
7964 output (
"static cob_field cob_all_zero\t= ");
7966 output (
"(cob_u8_ptr)\"0\", ");
7967 output (
"&cob_all_attr};\n");
7975 output_storage (
"\n/* ASCII to EBCDIC translate table (restricted) */\n");
7976 output (
"static const unsigned char\tcob_a2e[256] = {\n");
7978 output (
"\t0x00, 0x01, 0x02, 0x03, 0x1D, 0x19, 0x1A, 0x1B,\n");
7979 output (
"\t0x0F, 0x04, 0x16, 0x06, 0x07, 0x08, 0x09, 0x0A,\n");
7980 output (
"\t0x0B, 0x0C, 0x0D, 0x0E, 0x1E, 0x1F, 0x1C, 0x17,\n");
7981 output (
"\t0x10, 0x11, 0x20, 0x18, 0x12, 0x13, 0x14, 0x15,\n");
7982 output (
"\t0x21, 0x27, 0x3A, 0x36, 0x28, 0x30, 0x26, 0x38,\n");
7983 output (
"\t0x24, 0x2A, 0x29, 0x25, 0x2F, 0x2C, 0x22, 0x2D,\n");
7984 output (
"\t0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A,\n");
7985 output (
"\t0x7B, 0x7C, 0x35, 0x2B, 0x23, 0x39, 0x32, 0x33,\n");
7986 output (
"\t0x37, 0x57, 0x58, 0x59, 0x5A, 0x5B, 0x5C, 0x5D,\n");
7987 output (
"\t0x5E, 0x5F, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66,\n");
7988 output (
"\t0x67, 0x68, 0x69, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F,\n");
7989 output (
"\t0x70, 0x71, 0x72, 0x7D, 0x6A, 0x7E, 0x7F, 0x31,\n");
7990 output (
"\t0x34, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41,\n");
7991 output (
"\t0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,\n");
7992 output (
"\t0x4A, 0x4B, 0x4C, 0x4E, 0x4F, 0x50, 0x51, 0x52,\n");
7993 output (
"\t0x53, 0x54, 0x55, 0x56, 0x2E, 0x60, 0x4D, 0x05,\n");
7994 output (
"\t0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,\n");
7995 output (
"\t0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F,\n");
7996 output (
"\t0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,\n");
7997 output (
"\t0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F,\n");
7998 output (
"\t0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7,\n");
7999 output (
"\t0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF,\n");
8000 output (
"\t0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7,\n");
8001 output (
"\t0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF,\n");
8002 output (
"\t0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,\n");
8003 output (
"\t0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF,\n");
8004 output (
"\t0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7,\n");
8005 output (
"\t0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF,\n");
8006 output (
"\t0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7,\n");
8007 output (
"\t0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF,\n");
8008 output (
"\t0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,\n");
8009 output (
"\t0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF\n");
8015 output (
"static const unsigned char\tcob_ascii_ebcdic[256] = {\n");
8016 output (
"\t0x00, 0x01, 0x02, 0x03, 0x37, 0x2D, 0x2E, 0x2F,\n");
8017 output (
"\t0x16, 0x05, 0x25, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,\n");
8018 output (
"\t0x10, 0x11, 0x12, 0x13, 0x3C, 0x3D, 0x32, 0x26,\n");
8019 output (
"\t0x18, 0x19, 0x3F, 0x27, 0x1C, 0x1D, 0x1E, 0x1F,\n");
8020 output (
"\t0x40, 0x5A, 0x7F, 0x7B, 0x5B, 0x6C, 0x50, 0x7D,\n");
8021 output (
"\t0x4D, 0x5D, 0x5C, 0x4E, 0x6B, 0x60, 0x4B, 0x61,\n");
8022 output (
"\t0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,\n");
8023 output (
"\t0xF8, 0xF9, 0x7A, 0x5E, 0x4C, 0x7E, 0x6E, 0x6F,\n");
8024 output (
"\t0x7C, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,\n");
8025 output (
"\t0xC8, 0xC9, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6,\n");
8026 output (
"\t0xD7, 0xD8, 0xD9, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6,\n");
8027 output (
"\t0xE7, 0xE8, 0xE9, 0xAD, 0xE0, 0xBD, 0x5F, 0x6D,\n");
8028 output (
"\t0x79, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,\n");
8029 output (
"\t0x88, 0x89, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96,\n");
8030 output (
"\t0x97, 0x98, 0x99, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6,\n");
8031 output (
"\t0xA7, 0xA8, 0xA9, 0xC0, 0x6A, 0xD0, 0xA1, 0x07,\n");
8032 output (
"\t0x68, 0xDC, 0x51, 0x42, 0x43, 0x44, 0x47, 0x48,\n");
8033 output (
"\t0x52, 0x53, 0x54, 0x57, 0x56, 0x58, 0x63, 0x67,\n");
8034 output (
"\t0x71, 0x9C, 0x9E, 0xCB, 0xCC, 0xCD, 0xDB, 0xDD,\n");
8035 output (
"\t0xDF, 0xEC, 0xFC, 0xB0, 0xB1, 0xB2, 0x3E, 0xB4,\n");
8036 output (
"\t0x45, 0x55, 0xCE, 0xDE, 0x49, 0x69, 0x9A, 0x9B,\n");
8037 output (
"\t0xAB, 0x9F, 0xBA, 0xB8, 0xB7, 0xAA, 0x8A, 0x8B,\n");
8038 output (
"\t0xB6, 0xB5, 0x62, 0x4F, 0x64, 0x65, 0x66, 0x20,\n");
8039 output (
"\t0x21, 0x22, 0x70, 0x23, 0x72, 0x73, 0x74, 0xBE,\n");
8040 output (
"\t0x76, 0x77, 0x78, 0x80, 0x24, 0x15, 0x8C, 0x8D,\n");
8041 output (
"\t0x8E, 0x41, 0x06, 0x17, 0x28, 0x29, 0x9D, 0x2A,\n");
8042 output (
"\t0x2B, 0x2C, 0x09, 0x0A, 0xAC, 0x4A, 0xAE, 0xAF,\n");
8043 output (
"\t0x1B, 0x30, 0x31, 0xFA, 0x1A, 0x33, 0x34, 0x35,\n");
8044 output (
"\t0x36, 0x59, 0x08, 0x38, 0xBC, 0x39, 0xA0, 0xBF,\n");
8045 output (
"\t0xCA, 0x3A, 0xFE, 0x3B, 0x04, 0xCF, 0xDA, 0x14,\n");
8046 output (
"\t0xE1, 0x8F, 0x46, 0x75, 0xFD, 0xEB, 0xEE, 0xED,\n");
8047 output (
"\t0x90, 0xEF, 0xB3, 0xFB, 0xB9, 0xEA, 0xBB, 0xFF\n");
8052 (
"static cob_field f_ascii_ebcdic = { 256, (cob_u8_ptr)cob_ascii_ebcdic, &%s%d };\n",
8059 output (
"static const unsigned char\tcob_ebcdic_ascii[256] = {\n");
8060 output (
"\t0x00, 0x01, 0x02, 0x03, 0xEC, 0x09, 0xCA, 0x7F,\n");
8061 output (
"\t0xE2, 0xD2, 0xD3, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,\n");
8062 output (
"\t0x10, 0x11, 0x12, 0x13, 0xEF, 0xC5, 0x08, 0xCB,\n");
8063 output (
"\t0x18, 0x19, 0xDC, 0xD8, 0x1C, 0x1D, 0x1E, 0x1F,\n");
8064 output (
"\t0xB7, 0xB8, 0xB9, 0xBB, 0xC4, 0x0A, 0x17, 0x1B,\n");
8065 output (
"\t0xCC, 0xCD, 0xCF, 0xD0, 0xD1, 0x05, 0x06, 0x07,\n");
8066 output (
"\t0xD9, 0xDA, 0x16, 0xDD, 0xDE, 0xDF, 0xE0, 0x04,\n");
8067 output (
"\t0xE3, 0xE5, 0xE9, 0xEB, 0x14, 0x15, 0x9E, 0x1A,\n");
8068 output (
"\t0x20, 0xC9, 0x83, 0x84, 0x85, 0xA0, 0xF2, 0x86,\n");
8069 output (
"\t0x87, 0xA4, 0xD5, 0x2E, 0x3C, 0x28, 0x2B, 0xB3,\n");
8070 output (
"\t0x26, 0x82, 0x88, 0x89, 0x8A, 0xA1, 0x8C, 0x8B,\n");
8071 output (
"\t0x8D, 0xE1, 0x21, 0x24, 0x2A, 0x29, 0x3B, 0x5E,\n");
8072 output (
"\t0x2D, 0x2F, 0xB2, 0x8E, 0xB4, 0xB5, 0xB6, 0x8F,\n");
8073 output (
"\t0x80, 0xA5, 0x7C, 0x2C, 0x25, 0x5F, 0x3E, 0x3F,\n");
8074 output (
"\t0xBA, 0x90, 0xBC, 0xBD, 0xBE, 0xF3, 0xC0, 0xC1,\n");
8075 output (
"\t0xC2, 0x60, 0x3A, 0x23, 0x40, 0x27, 0x3D, 0x22,\n");
8076 output (
"\t0xC3, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,\n");
8077 output (
"\t0x68, 0x69, 0xAE, 0xAF, 0xC6, 0xC7, 0xC8, 0xF1,\n");
8078 output (
"\t0xF8, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70,\n");
8079 output (
"\t0x71, 0x72, 0xA6, 0xA7, 0x91, 0xCE, 0x92, 0xA9,\n");
8080 output (
"\t0xE6, 0x7E, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,\n");
8081 output (
"\t0x79, 0x7A, 0xAD, 0xA8, 0xD4, 0x5B, 0xD6, 0xD7,\n");
8082 output (
"\t0x9B, 0x9C, 0x9D, 0xFA, 0x9F, 0xB1, 0xB0, 0xAC,\n");
8083 output (
"\t0xAB, 0xFC, 0xAA, 0xFE, 0xE4, 0x5D, 0xBF, 0xE7,\n");
8084 output (
"\t0x7B, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,\n");
8085 output (
"\t0x48, 0x49, 0xE8, 0x93, 0x94, 0x95, 0xA2, 0xED,\n");
8086 output (
"\t0x7D, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50,\n");
8087 output (
"\t0x51, 0x52, 0xEE, 0x96, 0x81, 0x97, 0xA3, 0x98,\n");
8088 output (
"\t0x5C, 0xF0, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,\n");
8089 output (
"\t0x59, 0x5A, 0xFD, 0xF5, 0x99, 0xF7, 0xF6, 0xF9,\n");
8090 output (
"\t0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,\n");
8091 output (
"\t0x38, 0x39, 0xDB, 0xFB, 0x9A, 0xF4, 0xEA, 0xFF\n");
8096 (
"static cob_field f_ebcdic_ascii = { 256, (cob_u8_ptr)cob_ebcdic_ascii, &%s%d };\n",
8103 output (
"static const unsigned char\tcob_native[256] = {\n");
8104 output (
"\t0, 1, 2, 3, 4, 5, 6, 7,\n");
8105 output (
"\t8, 9, 10, 11, 12, 13, 14, 15,\n");
8106 output (
"\t16, 17, 18, 19, 20, 21, 22, 23,\n");
8107 output (
"\t24, 25, 26, 27, 28, 29, 30, 31,\n");
8108 output (
"\t32, 33, 34, 35, 36, 37, 38, 39,\n");
8109 output (
"\t40, 41, 42, 43, 44, 45, 46, 47,\n");
8110 output (
"\t48, 49, 50, 51, 52, 53, 54, 55,\n");
8111 output (
"\t56, 57, 58, 59, 60, 61, 62, 63,\n");
8112 output (
"\t64, 65, 66, 67, 68, 69, 70, 71,\n");
8113 output (
"\t72, 73, 74, 75, 76, 77, 78, 79,\n");
8114 output (
"\t80, 81, 82, 83, 84, 85, 86, 87,\n");
8115 output (
"\t88, 89, 90, 91, 92, 93, 94, 95,\n");
8116 output (
"\t96, 97, 98, 99, 100, 101, 102, 103,\n");
8117 output (
"\t104, 105, 106, 107, 108, 109, 110, 111,\n");
8118 output (
"\t112, 113, 114, 115, 116, 117, 118, 119,\n");
8119 output (
"\t120, 121, 122, 123, 124, 125, 126, 127,\n");
8120 output (
"\t128, 129, 130, 131, 132, 133, 134, 135,\n");
8121 output (
"\t136, 137, 138, 139, 140, 141, 142, 143,\n");
8122 output (
"\t144, 145, 146, 147, 148, 149, 150, 151,\n");
8123 output (
"\t152, 153, 154, 155, 156, 157, 158, 159,\n");
8124 output (
"\t160, 161, 162, 163, 164, 165, 166, 167,\n");
8125 output (
"\t168, 169, 170, 171, 172, 173, 174, 175,\n");
8126 output (
"\t176, 177, 178, 179, 180, 181, 182, 183,\n");
8127 output (
"\t184, 185, 186, 187, 188, 189, 190, 191,\n");
8128 output (
"\t192, 193, 194, 195, 196, 197, 198, 199,\n");
8129 output (
"\t200, 201, 202, 203, 204, 205, 206, 207,\n");
8130 output (
"\t208, 209, 210, 211, 212, 213, 214, 215,\n");
8131 output (
"\t216, 217, 218, 219, 220, 221, 222, 223,\n");
8132 output (
"\t224, 225, 226, 227, 228, 229, 230, 231,\n");
8133 output (
"\t232, 233, 234, 235, 236, 237, 238, 239,\n");
8134 output (
"\t240, 241, 242, 243, 244, 245, 246, 247,\n");
8135 output (
"\t248, 249, 250, 251, 252, 253, 254, 255\n");
8140 (
"static cob_field f_native = { 256, (cob_u8_ptr)cob_native, &%s%d };\n",
8151 output (
"static const char %s%d[]\t= \"%s\";\n",
8152 CB_PREFIX_STRING, stp->
id, stp->
text);