![]() |
GnuCOBOL
2.0
A free COBOL compiler
|
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include <string.h>
#include <ctype.h>
#include <time.h>
#include <limits.h>
#include "cobc.h"
#include "tree.h"
#include "libcob/system.def"
Data Structures | |
struct | system_table |
struct | optim_table |
struct | expr_node |
Macros | |
#define | START_STACK_SIZE 32 |
#define | TOKEN(offset) (expr_stack[expr_index + offset].token) |
#define | VALUE(offset) (expr_stack[expr_index + offset].value) |
#define | dpush(x) CB_ADD_TO_CHAIN (x, decimal_stack) |
#define | cb_emit(x) current_statement->body = cb_list_add (current_statement->body, x) |
#define | cb_emit_list(l) current_statement->body = cb_list_append (current_statement->body, l) |
#define | COB_SYSTEM_GEN(x, y, z) { x, y }, |
Variables | |
cb_tree | cb_debug_item |
cb_tree | cb_debug_line |
cb_tree | cb_debug_name |
cb_tree | cb_debug_sub_1 |
cb_tree | cb_debug_sub_2 |
cb_tree | cb_debug_sub_3 |
cb_tree | cb_debug_contents |
size_t | suppress_warn = 0 |
static cb_tree | decimal_stack = NULL |
static const char * | inspect_func |
static cb_tree | inspect_data |
static int | expr_op |
static cb_tree | expr_lh |
static size_t | initialized = 0 |
static size_t | overlapping = 0 |
static int | expr_index |
static int | expr_stack_size |
static struct expr_node * | expr_stack |
static const unsigned char | hexval [] = "0123456789ABCDEF" |
static unsigned char | expr_prio [256] |
static unsigned char | valid_char [256] |
static const unsigned char | pvalid_char [] |
static const unsigned char | cob_refer_ascii [256] |
static const unsigned char | cob_refer_ebcdic [256] |
static struct system_table | system_tab [] |
static struct optim_table | bin_set_funcs [] |
static struct optim_table | bin_compare_funcs [] |
static struct optim_table | bin_add_funcs [] |
static struct optim_table | bin_sub_funcs [] |
#define cb_emit | ( | x | ) | current_statement->body = cb_list_add (current_statement->body, x) |
Referenced by build_evaluate(), cb_build_length(), cb_check_data_incompat(), cb_emit_accept(), cb_emit_accept_arg_number(), cb_emit_accept_arg_value(), cb_emit_accept_command_line(), cb_emit_accept_date(), cb_emit_accept_date_yyyymmdd(), cb_emit_accept_day(), cb_emit_accept_day_of_week(), cb_emit_accept_day_yyyyddd(), cb_emit_accept_environment(), cb_emit_accept_escape_key(), cb_emit_accept_exception_status(), cb_emit_accept_line_or_col(), cb_emit_accept_mnemonic(), cb_emit_accept_name(), cb_emit_accept_time(), cb_emit_accept_user_name(), cb_emit_allocate(), cb_emit_alter(), cb_emit_arg_number(), cb_emit_call(), cb_emit_cancel(), cb_emit_close(), cb_emit_command_line(), cb_emit_commit(), cb_emit_continue(), cb_emit_delete(), cb_emit_delete_file(), cb_emit_display(), cb_emit_divide(), cb_emit_env_name(), cb_emit_env_value(), cb_emit_evaluate(), cb_emit_exit(), cb_emit_free(), cb_emit_get_environment(), cb_emit_goto(), cb_emit_if(), cb_emit_initialize(), cb_emit_inspect(), cb_emit_move(), cb_emit_open(), cb_emit_perform(), cb_emit_read(), cb_emit_ready_trace(), cb_emit_release(), cb_emit_reset_trace(), cb_emit_return(), cb_emit_rewrite(), cb_emit_rollback(), cb_emit_search(), cb_emit_search_all(), cb_emit_set_attribute(), cb_emit_set_false(), cb_emit_set_on_off(), cb_emit_set_to(), cb_emit_set_true(), cb_emit_set_up_down(), cb_emit_setenv(), cb_emit_sort_finish(), cb_emit_sort_giving(), cb_emit_sort_init(), cb_emit_sort_input(), cb_emit_sort_output(), cb_emit_sort_using(), cb_emit_start(), cb_emit_stop_run(), cb_emit_string(), cb_emit_unlock(), cb_emit_unstring(), cb_emit_write(), cb_gen_field_accept(), decimal_expand(), emit_corresponding(), emit_move_corresponding(), output_screen_from(), and output_screen_to().
#define cb_emit_list | ( | l | ) | current_statement->body = cb_list_append (current_statement->body, l) |
Referenced by cb_emit_arithmetic(), cb_emit_inspect(), and cb_emit_unstring().
#define COB_SYSTEM_GEN | ( | x, | |
y, | |||
z | |||
) | { x, y }, |
#define dpush | ( | x | ) | CB_ADD_TO_CHAIN (x, decimal_stack) |
Referenced by cb_build_cond(), decimal_assign(), decimal_compute(), and decimal_expand().
#define START_STACK_SIZE 32 |
Referenced by cb_expr_init().
#define TOKEN | ( | offset | ) | (expr_stack[expr_index + offset].token) |
Referenced by cb_expr_shift(), cb_expr_shift_class(), cb_expr_shift_sign(), expr_reduce(), and while().
#define VALUE | ( | offset | ) | (expr_stack[expr_index + offset].value) |
Referenced by cb_expr_shift(), cb_expr_shift_class(), cb_expr_shift_sign(), and expr_reduce().
References cb_build_binary_op(), cb_build_field_reference(), CB_CHAIN, cb_error_node, CB_FIELD_PTR, CB_PAIR_P, CB_PAIR_X, CB_PAIR_Y, CB_VALUE, cb_field::count, NULL, cb_field::parent, and cb_field::values.
Referenced by cb_build_cond(), and search_set_keys().
References CB_CHAIN, cb_list_append(), cb_list_reverse(), CB_PURPOSE, CB_VALUE, decimal_alloc(), decimal_assign(), decimal_compute(), decimal_expand(), decimal_free(), and NULL.
Referenced by cb_emit_arithmetic().
References _, cb_build_binary_op(), cb_build_comment(), cb_build_cond(), cb_build_if(), CB_CHAIN, cb_emit, cb_error(), cb_error_node, CB_GOTO_P, cb_list_add(), CB_STATEMENT, CB_STATEMENT_P, CB_VALUE, evaluate_test(), and NULL.
Referenced by cb_emit_evaluate().
References CB_FIELD_PTR, cb_int(), CB_INTEGER, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_X, CB_USAGE_DOUBLE, CB_USAGE_FLOAT, COB_STORE_KEEP_ON_OVERFLOW, COB_STORE_TRUNC_ON_OVERFLOW, current_statement, cb_statement::handler1, cb_statement::handler_id, and cb_field::usage.
Referenced by cb_build_add(), cb_build_div(), cb_build_mul(), cb_build_sub(), cb_emit_divide(), and decimal_assign().
References build_store_option(), cb_build_binary_op(), CB_BUILD_FUNCALL_3, cb_build_move(), cb_build_optim_add(), CB_CLASS_POINTER, CB_FIELD_PTR, cb_fits_int(), cb_high, CB_INDEX_P, cb_int0, CB_REF_OR_FIELD_P, CB_TREE_CLASS, cb_field::count, and optimize_defs.
Referenced by cb_build_perform_varying(), cb_emit_arithmetic(), and cb_emit_set_up_down().
References _, CB_ADD_TO_CHAIN, CB_BUILD_CAST_ADDRESS, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_P, cb_list_length(), cb_one, cb_ref(), CB_REFERENCE, CB_REFERENCE_P, cb_warning_x(), cb_word::name, cb_reference::offset, cb_reference::subs, and cb_reference::word.
Referenced by cb_build_identifier().
References _, cb_program::alphabet_name_list, build_cond_88(), cb_any, CB_BINARY_OP, CB_BINARY_OP_P, cb_build_binary_op(), CB_BUILD_CAST_ADDRESS, cb_build_cond(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_3, CB_BUILD_NEGATION, cb_build_optim_cond(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, cb_chk_alpha_cond(), cb_chk_num_cond(), CB_CLASS_NUMERIC, CB_CLASS_POINTER, cb_error_node, cb_error_x(), cb_false, CB_FIELD_P, CB_FIELD_PTR, cb_field_size(), cb_fits_long_long(), cb_high, CB_INDEX_P, cb_int(), cb_list_reverse(), cb_low, cb_ref(), CB_REF_OR_FIELD_P, cb_space, CB_TAG_BINARY_OP, CB_TAG_CONST, CB_TAG_FUNCALL, CB_TAG_REFERENCE, CB_TREE, CB_TREE_CATEGORY, CB_TREE_CLASS, CB_TREE_TAG, cb_true, cb_zero, current_program, current_statement, d1, d2, decimal_alloc(), decimal_expand(), decimal_free(), dpush, cb_program::flag_debugging, cb_field::level, NULL, cb_binary_op::op, p, cb_binary_op::x, and cb_binary_op::y.
Referenced by build_evaluate(), cb_build_cond(), and cb_build_search_all().
References _, cb_build_numeric_literal(), cb_error(), cb_error_node, CB_FIELD, cb_field_variable_size(), CB_INTEGER, CB_INTEGER_P, cb_ref(), CB_REFERENCE, CB_REFERENCE_P, cb_validate_field(), cb_field::flag_any_length, cb_field::level, cb_field::memory_size, cb_field::offset, cb_field::redefines, cb_field::rename_thru, and cb_field::size.
References CB_BUILD_FUNCALL_2, cb_list_add(), and validate_inspect().
void cb_build_debug_item | ( | void | ) |
References _, CB_DEVICE_CONSOLE, CB_DEVICE_SYSERR, CB_DEVICE_SYSOUT, cb_error_node, cb_error_x(), cb_int0, cb_int1, cb_ref(), and CB_SYSTEM_NAME.
References _, CB_DEVICE_CONSOLE, CB_DEVICE_SYSERR, CB_DEVICE_SYSOUT, cb_error_node, cb_error_x(), cb_int0, cb_int1, CB_NAME, CB_SYSTEM_NAME, cb_warning_x(), lookup_system_name(), and cb_file::name.
References build_store_option(), cb_build_binary_op(), CB_BUILD_FUNCALL_3, cb_build_move(), CB_FIELD_PTR, CB_INDEX_P, CB_REF_OR_FIELD_P, and cb_field::count.
Referenced by cb_emit_arithmetic().
References _, CB_ADD_TO_CHAIN, CB_BINARY_OP, CB_BINARY_OP_P, cb_build_address(), cb_build_cast_int(), CB_BUILD_CAST_LENGTH, cb_build_field_reference(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_4, CB_BUILD_STRING0, CB_CHAIN, cb_check_integer_value(), cb_check_lit_subs(), cb_error_node, cb_error_x(), CB_EXCEPTION_ENABLE, CB_FIELD, cb_field_founder(), CB_FIELD_P, CB_FIELD_PTR, cb_get_int(), cb_int(), cb_int1, cb_list_add(), cb_list_length(), cb_list_reverse(), CB_LITERAL_P, cb_one, cb_ref(), CB_REFERENCE, CB_STORAGE_CONSTANT, CB_STORAGE_LINKAGE, CB_USAGE_NATIONAL, CB_VALUE, cb_warning_x(), cb_reference::check, COB_EC_DATA_PTR_NULL, current_statement, cb_field::depending, cb_reference::flag_all, cb_field::flag_any_length, cb_field::flag_is_pdiv_parm, cb_field::flag_item_based, cb_statement::flag_no_based, cb_field::flag_occurs, cb_field::indexes, cb_reference::length, cb_field::name, cb_word::name, NULL, cb_statement::null_check, cb_field::occurs_max, cb_field::occurs_min, cb_field::offset, cb_reference::offset, p, cb_field::parent, cb_field::redefines, cb_field::size, cb_field::storage, cb_reference::subs, cb_field::usage, cb_field::values, and cb_reference::word.
References cb_build_if(), cb_check_needs_break(), and NULL.
cb_tree cb_build_index | ( | cb_tree | x, |
cb_tree | values, | ||
const unsigned int | indexed_by, | ||
struct cb_field * | qual | ||
) |
References cb_build_field(), CB_FIELD, CB_FIELD_ADD, CB_LIST_INIT, CB_USAGE_INDEX, cb_validate_field(), current_program, cb_field::flag_indexed_by, cb_field::index_qual, cb_field::usage, cb_field::values, and cb_program::working_storage.
Referenced by cb_build_length(), and cb_build_registers().
cb_tree cb_build_inspect_region_start | ( | void | ) |
References CB_BUILD_FUNCALL_0, and CB_LIST_INIT.
References cb_build_any_intrinsic(), cb_build_assign(), cb_build_filler(), cb_build_index(), cb_build_length_1(), cb_build_numeric_literal(), cb_emit, cb_error_node, CB_FIELD, cb_field_size(), cb_field_variable_size(), CB_INTRINSIC_P, CB_LIST_INIT, CB_LITERAL, CB_LITERAL_P, cb_ref(), CB_REF_OR_FIELD_P, CB_REFERENCE, CB_REFERENCE_P, CB_USAGE_LENGTH, cb_field::flag_any_length, NULL, and cb_literal::size.
Referenced by cb_build_intrinsic().
References CB_ALPHABET_NAME_P, cb_build_assign(), cb_build_cast_int(), CB_BUILD_FUNCALL_2, cb_build_move_field(), cb_build_move_high(), cb_build_move_literal(), cb_build_move_low(), cb_build_move_quote(), cb_build_move_space(), cb_build_move_zero(), CB_CATEGORY_NUMERIC, CB_CATEGORY_NUMERIC_EDITED, CB_CLASS_POINTER, cb_error_node, cb_high, CB_INDEX_P, CB_INTRINSIC_P, CB_LITERAL_P, cb_low, cb_null, cb_quote, CB_REFERENCE, CB_REFERENCE_P, cb_space, CB_TREE, CB_TREE_CATEGORY, CB_TREE_CLASS, cb_zero, check, cobc_parse_malloc(), cb_reference::flag_receiving, validate_move(), and value.
Referenced by cb_build_add(), cb_build_div(), cb_build_mul(), cb_build_sub(), cb_check_field_debug(), cb_emit_close(), cb_emit_move(), cb_emit_open(), cb_emit_read(), cb_emit_release(), cb_emit_return(), cb_emit_rewrite(), cb_emit_set_false(), cb_emit_set_to(), cb_emit_set_true(), cb_emit_write(), emit_move_corresponding(), and output_move().
References CB_BUILD_CAST_ADDRESS, CB_BUILD_CAST_LENGTH, CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_3, CB_FIELD_PTR, cb_field_size(), CB_STORAGE_LINKAGE, overlapping, and cb_literal::size.
Referenced by cb_build_move_field().
References CB_BUILD_FUNCALL_2, cb_build_move_copy(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_FIELD_PTR, cb_field_size(), cb_field_variable_size(), CB_TREE_CATEGORY, CB_USAGE_DISPLAY, cb_picture::digits, cb_field::flag_any_length, cb_field::flag_binary_swap, cb_field::flag_justified, cb_field::flag_sign_leading, cb_field::flag_sign_separate, cb_picture::have_sign, cb_field::pic, cb_picture::scale, cb_picture::size, and cb_field::usage.
Referenced by cb_build_move().
References CB_BUILD_FUNCALL_2, cb_build_memset(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_FIELD_PTR, cb_high, cb_norm_high, CB_TREE_CATEGORY, and cb_field::flag_any_length.
Referenced by cb_build_move().
References cb_literal::all, cb_build_assign(), CB_BUILD_CAST_ADDRESS, CB_BUILD_CAST_LENGTH, cb_build_cast_llint(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_3, cb_build_move_num_zero(), cb_build_string(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_CATEGORY_NUMERIC_EDITED, CB_FIELD_PTR, cb_field_variable_size(), cb_fits_int(), cb_get_int(), cb_int(), CB_LITERAL, CB_STORAGE_LINKAGE, CB_TREE_CATEGORY, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_6, CB_USAGE_COMP_X, CB_USAGE_DISPLAY, CB_USAGE_PACKED, cob_put_sign_ascii(), cob_put_sign_ebcdic(), cobc_parse_free(), cobc_parse_malloc(), cb_literal::data, cb_field::flag_binary_swap, cb_field::flag_blank_zero, cb_field::flag_justified, cb_field::flag_sign_leading, cb_field::flag_sign_separate, cb_picture::have_sign, cb_field::indexes, cb_field::offset, optim_table::optim_val, optimize_defs, p, cb_field::pic, cb_literal::scale, cb_picture::scale, cb_literal::sign, cb_literal::size, cb_field::size, cb_field::storage, and cb_field::usage.
Referenced by cb_build_move().
References CB_BUILD_FUNCALL_2, cb_build_memset(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_FIELD_PTR, cb_low, cb_norm_low, CB_TREE_CATEGORY, and cb_field::flag_any_length.
Referenced by cb_build_move().
References cb_build_assign(), CB_BUILD_FUNCALL_1, CB_BUILD_FUNCALL_2, cb_build_memset(), CB_FIELD_PTR, cb_int0, CB_STORAGE_LINKAGE, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_6, CB_USAGE_COMP_X, CB_USAGE_DISPLAY, CB_USAGE_PACKED, cb_zero, cb_field::flag_binary_swap, cb_picture::have_sign, cb_field::indexes, cb_field::offset, cb_field::pic, cb_field::size, cb_field::storage, and cb_field::usage.
Referenced by cb_build_move_literal(), and cb_build_move_zero().
References CB_BUILD_FUNCALL_2, cb_build_memset(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_FIELD_PTR, cb_quote, CB_TREE_CATEGORY, and cb_field::flag_any_length.
Referenced by cb_build_move().
References CB_BUILD_FUNCALL_2, cb_build_memset(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_FIELD_PTR, cb_space, CB_TREE_CATEGORY, and cb_field::flag_any_length.
Referenced by cb_build_move(), and cb_build_move_zero().
References CB_BUILD_FUNCALL_2, cb_build_memset(), cb_build_move_num_zero(), cb_build_move_space(), CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_NUMERIC, CB_FIELD_PTR, CB_TREE_CATEGORY, cb_zero, cb_field::flag_any_length, cb_field::flag_blank_zero, and cb_field::flag_sign_separate.
Referenced by cb_build_move().
References build_store_option(), cb_build_binary_op(), CB_BUILD_FUNCALL_3, cb_build_move(), CB_FIELD_PTR, CB_INDEX_P, CB_REF_OR_FIELD_P, and cb_field::count.
Referenced by cb_emit_arithmetic().
References cb_build_assign(), cb_build_binary_op(), CB_BUILD_CAST_ADDRESS, cb_build_cast_int(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_3, CB_FIELD_PTR, cb_int0, CB_REF_OR_FIELD_P, CB_STORAGE_LINKAGE, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_X, CB_USAGE_PACKED, cb_picture::digits, cb_field::flag_binary_swap, cb_picture::have_sign, cb_field::indexes, cb_field::offset, optim_table::optim_val, optimize_defs, cb_field::pic, cb_picture::scale, cb_field::size, cb_field::storage, and cb_field::usage.
Referenced by cb_build_add().
|
static |
References CB_BUILD_CAST_ADDRESS, cb_build_cast_int(), cb_build_cast_llint(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_4, CB_FIELD_PTR, cb_fits_long_long(), cb_int(), CB_REF_OR_FIELD_P, CB_STORAGE_LINKAGE, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_6, CB_USAGE_COMP_X, CB_USAGE_DISPLAY, CB_USAGE_INDEX, CB_USAGE_PACKED, cb_picture::digits, cb_field::flag_any_numeric, cb_field::flag_binary_swap, cb_field::flag_sign_leading, cb_field::flag_sign_separate, cb_picture::have_sign, cb_field::indexes, cb_field::offset, optim_table::optim_val, optimize_defs, cb_field::pic, cb_picture::scale, cb_field::size, cb_field::special_index, cb_field::storage, cb_field::usage, cb_binary_op::x, and cb_binary_op::y.
Referenced by cb_build_cond().
References cb_build_assign(), cb_build_binary_op(), CB_BUILD_CAST_ADDRESS, cb_build_cast_int(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_3, CB_FIELD_PTR, cb_int0, CB_REF_OR_FIELD_P, CB_STORAGE_LINKAGE, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_X, cb_field::flag_binary_swap, cb_picture::have_sign, cb_field::indexes, cb_field::offset, optim_table::optim_val, optimize_defs, cb_field::pic, cb_picture::scale, cb_field::size, cb_field::storage, and cb_field::usage.
Referenced by cb_build_sub().
References cb_build_perform(), CB_PERFORM, CB_PERFORM_EXIT, and CB_TREE.
References cb_build_perform(), cb_error_node, CB_PERFORM, and CB_PERFORM_FOREVER.
References cb_build_perform(), cb_error_node, CB_PERFORM, and CB_PERFORM_ONCE.
Referenced by cb_emit_sort_input(), and cb_emit_sort_output().
References cb_build_perform(), cb_check_integer_value(), cb_error_node, CB_PERFORM, and CB_PERFORM_TIMES.
References cb_build_perform(), CB_PERFORM, and CB_PERFORM_UNTIL.
References CB_BUILD_CAST_PPOINTER, cb_error_node, CB_FIELD_PTR, cb_ref(), CB_REFERENCE_P, and cb_field::count.
void cb_build_registers | ( | void | ) |
References CB_BUILD_FUNCALL_2, cb_list_add(), and validate_inspect().
References _, CB_BUILD_FUNCALL_1, cb_error_x(), cb_list_add(), CB_LITERAL, CB_LITERAL_P, CB_TREE, and current_statement.
References CB_BUILD_FUNCALL_2, cb_list_add(), and validate_inspect().
References CB_BUILD_FUNCALL_2, cb_list_add(), and validate_inspect().
References CB_BUILD_FUNCALL_2, cb_list_add(), and validate_inspect().
References cb_build_binary_op(), cb_build_cond(), CB_FIELD_PTR, COB_ASCENDING, cb_key::dir, cb_field::keys, cb_field::nkeys, NULL, cb_key::ref, search_set_keys(), and cb_key::val.
Referenced by cb_emit_search_all().
References cb_error_node, CB_LABEL, CB_LABEL_P, CB_VALUE, CB_WORD_COUNT, CB_WORD_ITEMS, and redefinition_error().
References build_store_option(), cb_build_binary_op(), CB_BUILD_FUNCALL_3, cb_build_move(), cb_build_optim_sub(), CB_CLASS_POINTER, CB_FIELD_PTR, cb_fits_int(), CB_INDEX_P, cb_int0, cb_int1, CB_REF_OR_FIELD_P, CB_TREE_CLASS, cb_field::count, and optimize_defs.
Referenced by cb_emit_arithmetic(), and cb_emit_set_up_down().
cb_tree cb_build_tallying_all | ( | void | ) |
References _, cb_error_x(), CB_TREE, current_statement, inspect_func, and NULL.
References _, CB_BUILD_FUNCALL_1, cb_error_x(), cb_list_add(), CB_TREE, current_statement, inspect_func, and NULL.
References NULL.
cb_tree cb_build_tallying_leading | ( | void | ) |
References _, cb_error_x(), CB_TREE, current_statement, inspect_func, and NULL.
cb_tree cb_build_tallying_trailing | ( | void | ) |
References _, cb_error_x(), CB_TREE, current_statement, inspect_func, and NULL.
References _, CB_BUILD_FUNCALL_2, cb_error_x(), cb_list_add(), cb_name(), inspect_func, and NULL.
References CB_BUILD_FUNCALL_2, cb_error_node, and cb_validate_one().
References CB_BUILD_FUNCALL_3, cb_error_node, cb_int0, cb_validate_one(), and NULL.
References _, CB_BEFORE, cb_error_node, cb_error_x(), CB_FEATURE_C01, CB_FEATURE_C02, CB_FEATURE_C03, CB_FEATURE_C04, CB_FEATURE_C05, CB_FEATURE_C06, CB_FEATURE_C07, CB_FEATURE_C08, CB_FEATURE_C09, CB_FEATURE_C10, CB_FEATURE_C11, CB_FEATURE_C12, CB_FEATURE_FORMFEED, cb_int0, cb_int_hex(), cb_ref(), CB_SYSTEM_NAME, COB_WRITE_AFTER, COB_WRITE_BEFORE, COB_WRITE_CHANNEL, and COB_WRITE_PAGE.
References CB_BEFORE, cb_int_hex(), COB_WRITE_AFTER, COB_WRITE_BEFORE, and COB_WRITE_PAGE.
|
static |
References CB_BUILD_FUNCALL_1, CB_BUILD_FUNCALL_2, CB_BUILD_STRING0, CB_CATEGORY_NUMERIC, cb_emit, cb_error_node, CB_EXCEPTION_ENABLE, CB_FIELD_PTR, CB_REF_OR_FIELD_P, CB_TREE_CATEGORY, CB_USAGE_COMP_6, CB_USAGE_DISPLAY, CB_USAGE_PACKED, COB_EC_DATA_INCOMPATIBLE, cb_field::name, and cb_field::usage.
Referenced by cb_emit_arithmetic(), cb_emit_goto(), cb_emit_move(), and cb_emit_set_to().
void cb_check_field_debug | ( | cb_tree | fld | ) |
References CB_BUILD_CAST_ADDRESS, CB_BUILD_CAST_LENGTH, cb_build_debug(), cb_build_debug_call(), CB_BUILD_FUNCALL_3, cb_build_move(), CB_CHAIN, cb_error_node, CB_FIELD, CB_FIELD_P, cb_int(), cb_list_add(), cb_list_reverse(), CB_PURPOSE, cb_ref(), CB_REFERENCE, CB_VALUE, CB_WORD_COUNT, CB_WORD_ITEMS, COB_MINI_BUFF, current_program, current_statement, cb_statement::debug_check, cb_program::debug_list, cb_statement::debug_nodups, cb_field::debug_section, cb_field::flag_all_debug, found, cb_field::name, NULL, and cb_field::size.
References _, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_P, cb_name(), cb_ref(), CB_REFERENCE, CB_REFERENCE_P, and NULL.
Referenced by cb_emit_corresponding(), and cb_emit_move_corresponding().
size_t cb_check_index_p | ( | cb_tree | x | ) |
References CB_FIELD_PTR, CB_REF_OR_FIELD_P, CB_USAGE_INDEX, cb_field::children, and cb_field::usage.
References _, CB_CATEGORY_NUMERIC, cb_error_node, cb_error_x(), CB_FIELD, CB_LITERAL, cb_name(), cb_ref(), CB_TAG_BINARY_OP, CB_TAG_CONST, CB_TAG_INTRINSIC, CB_TAG_LITERAL, CB_TAG_REFERENCE, CB_TREE_CATEGORY, CB_TREE_TAG, cb_zero, cb_field::pic, cb_literal::scale, cb_picture::scale, and cb_literal::sign.
Referenced by cb_build_identifier(), and cb_build_perform_times().
|
static |
References cb_build_direct(), CB_CHAIN, CB_GOTO_P, cb_list_add(), CB_STATEMENT, CB_STATEMENT_P, and CB_VALUE.
Referenced by cb_build_if_check_break(), cb_emit_search(), and cb_emit_search_all().
References _, CB_CATEGORY_NUMERIC, CB_CATEGORY_NUMERIC_EDITED, cb_error_node, cb_error_x(), CB_FIELD_P, cb_name(), cb_ref(), CB_REFERENCE_P, and CB_TREE_CATEGORY.
Referenced by cb_emit_arithmetic(), and cb_emit_divide().
References _, CB_CATEGORY_NUMERIC, cb_error_node, cb_error_x(), CB_FIELD_P, cb_name(), cb_ref(), CB_REFERENCE_P, and CB_TREE_CATEGORY.
Referenced by cb_emit_arithmetic().
References _, CB_CATEGORY_NUMERIC, cb_error_node, cb_error_x(), cb_name(), and CB_TREE_CATEGORY.
Referenced by cb_build_binary_op(), cb_emit_arithmetic(), and cb_emit_goto().
|
static |
|
static |
References CB_CATEGORY_NUMERIC, CB_CLASS_NUMERIC, CB_FIELD_PTR, CB_REF_OR_FIELD_P, CB_TREE_CATEGORY, CB_TREE_CLASS, CB_USAGE_DISPLAY, cb_picture::have_sign, cb_field::pic, cb_picture::scale, cb_field::size, and cb_field::usage.
Referenced by cb_build_cond().
References _, cb_build_constant(), CB_BUILD_FUNCALL_1, CB_BUILD_NEGATION, cb_error_node, cb_error_x(), cb_int(), CB_SWITCH_NAME, CB_SYSTEM_NAME, NULL, and value.
void cb_emit_accept | ( | cb_tree | var, |
cb_tree | pos, | ||
struct cb_attr_struct * | attr_ptr | ||
) |
References _, cb_attr_struct::bgc, CB_BUILD_FUNCALL_1, CB_BUILD_FUNCALL_4, CB_BUILD_FUNCALL_9, cb_emit, cb_error_x(), CB_FIELD, CB_FIELD_PTR, cb_gen_field_accept(), cb_int(), CB_LIST_P, CB_LITERAL, CB_LITERAL_P, cb_null, CB_PAIR_X, CB_PAIR_Y, cb_ref(), CB_REF_OR_FIELD_P, CB_STORAGE_SCREEN, cb_validate_one(), cb_program::crt_status, current_program, cb_attr_struct::dispattrs, cb_attr_struct::fgc, cb_program::flag_screen, gen_screen_ptr, line, NULL, output_screen_from(), output_screen_to(), cb_attr_struct::prompt, cb_attr_struct::scroll, cb_field::size, cb_field::storage, and cb_attr_struct::timeout.
void cb_emit_accept_arg_number | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_arg_value | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_command_line | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_date | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_date_yyyymmdd | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_day | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_day_of_week | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_day_yyyyddd | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_environment | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_escape_key | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_exception_status | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_line_or_col | ( | cb_tree | var, |
const int | l_or_c | ||
) |
References CB_BUILD_FUNCALL_2, cb_emit, cb_int(), and cb_validate_one().
References _, CB_BUILD_FUNCALL_1, CB_DEVICE_CONSOLE, CB_DEVICE_SYSIN, cb_emit, cb_error_node, cb_error_x(), cb_name(), cb_ref(), CB_SYSTEM_NAME, and cb_validate_one().
References _, CB_BUILD_FUNCALL_1, CB_DEVICE_CONSOLE, CB_DEVICE_SYSIN, cb_emit, cb_error_x(), CB_NAME, cb_name(), CB_SYSTEM_NAME, cb_validate_one(), cb_warning_x(), and lookup_system_name().
void cb_emit_accept_time | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_accept_user_name | ( | cb_tree | var | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
References _, CB_BUILD_CAST_ADDR_OF_ADDR, CB_BUILD_FUNCALL_4, cb_build_initialize(), cb_build_numeric_literal(), cb_category_is_alpha(), CB_CLASS_NUMERIC, CB_CLASS_POINTER, cb_emit, cb_error_x(), CB_FIELD_PTR, CB_REFERENCE_P, CB_TREE, CB_TREE_CLASS, cb_true, cb_validate_one(), current_statement, cb_field::flag_item_based, cb_statement::handler2, cb_field::memory_size, and NULL.
References cb_build_alter(), cb_emit, cb_error_node, and CB_REFERENCE.
void cb_emit_arg_number | ( | cb_tree | value | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
References build_decimal_assign(), CB_BINARY_OP_P, cb_build_add(), cb_build_div(), cb_build_mul(), cb_build_sub(), CB_CHAIN, cb_check_data_incompat(), cb_check_numeric_edited_name(), cb_check_numeric_name(), cb_check_numeric_value(), cb_emit_list, cb_error_node, cb_list_map(), CB_PURPOSE, cb_validate_list(), cb_validate_one(), and CB_VALUE.
void cb_emit_call | ( | cb_tree | prog, |
cb_tree | par_using, | ||
cb_tree | returning, | ||
cb_tree | on_exception, | ||
cb_tree | not_on_exception, | ||
cb_tree | convention | ||
) |
References _, cb_build_call(), CB_CALL_BY_REFERENCE, CB_CALL_BY_VALUE, CB_CATEGORY_ALPHANUMERIC, CB_CHAIN, CB_CLASS_NUMERIC, CB_CLASS_POINTER, CB_CONST_P, CB_CONV_STATIC_LINK, CB_CONV_STDCALL, cb_emit, cb_error_node, cb_error_x(), CB_FIELD_P, CB_FIELD_PTR, cb_get_int(), cb_get_long_long(), CB_INTEGER, CB_INTEGER_P, CB_INTRINSIC, CB_INTRINSIC_P, cb_list_length(), CB_LITERAL, CB_LITERAL_P, CB_NAME, cb_null, CB_NUMERIC_LITERAL_P, CB_PURPOSE_INT, CB_REFERENCE, CB_REFERENCE_P, CB_SIZE_1, CB_SIZE_2, CB_SIZE_4, CB_SIZE_8, CB_SIZE_AUTO, CB_SIZES_INT, CB_SIZES_INT_UNSIGNED, CB_TREE, CB_TREE_CLASS, CB_VALUE, cb_warning(), cb_warning_x(), cob_s64_t, cob_u32_t, current_program, current_statement, cb_field::flag_any_length, cb_field::level, cb_program::max_call_param, NULL, p, sign, system_table::syst_name, system_table::syst_params, value, and warningopt.
void cb_emit_cancel | ( | cb_tree | prog | ) |
References cb_build_cancel(), cb_emit, and cb_validate_one().
References _, cb_build_debug(), cb_build_debug_call(), CB_BUILD_FUNCALL_4, cb_build_move(), cb_emit, cb_error_node, cb_error_x(), CB_FILE, cb_int0, cb_ref(), cb_space, CB_TREE, COB_ORG_SORT, current_program, current_statement, cb_file::debug_section, file, cb_statement::file, cb_file::file_status, cb_program::flag_debugging, cb_file::flag_fl_debug, cb_statement::flag_in_debug, cb_file::name, NULL, and cb_file::organization.
void cb_emit_command_line | ( | cb_tree | value | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_commit | ( | void | ) |
References CB_BUILD_FUNCALL_0, and cb_emit.
void cb_emit_continue | ( | void | ) |
References cb_build_continue(), and cb_emit.
void cb_emit_corresponding | ( | cb_tree(*)(cb_tree f1, cb_tree f2, cb_tree f3) | func, |
cb_tree | x1, | ||
cb_tree | x2, | ||
cb_tree | opt | ||
) |
References _, cb_check_group_name(), cb_validate_one(), cb_warning_x(), and emit_corresponding().
void cb_emit_delete | ( | cb_tree | file | ) |
References _, CB_BUILD_FUNCALL_2, cb_emit, cb_error_node, cb_error_x(), CB_FILE, cb_ref(), CB_TREE, COB_ORG_LINE_SEQUENTIAL, COB_ORG_SORT, current_program, current_statement, file, cb_statement::file, cb_file::file_status, cb_statement::flag_callback, cb_program::flag_debugging, cb_file::flag_fl_debug, cb_statement::flag_in_debug, and cb_file::organization.
void cb_emit_delete_file | ( | cb_tree | file | ) |
References _, CB_BUILD_FUNCALL_2, cb_emit, cb_error_node, cb_error_x(), CB_FILE, cb_ref(), CB_TREE, COB_ORG_SORT, current_program, current_statement, cb_file::file_status, cb_statement::flag_callback, cb_program::flag_debugging, cb_file::flag_fl_debug, cb_statement::flag_in_debug, and cb_file::organization.
void cb_emit_display | ( | cb_tree | values, |
cb_tree | upon, | ||
cb_tree | no_adv, | ||
cb_tree | pos, | ||
struct cb_attr_struct * | attr_ptr | ||
) |
References _, cb_attr_struct::bgc, CB_BUILD_FUNCALL_0, CB_BUILD_FUNCALL_3, CB_BUILD_FUNCALL_7, CB_CHAIN, cb_emit, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_P, CB_FUNCALL, cb_int(), cb_int0, cb_list_length(), CB_LITERAL, CB_LITERAL_P, cb_low, cb_name(), cb_null, CB_PAIR_P, CB_PAIR_X, CB_PAIR_Y, cb_ref(), CB_REF_OR_FIELD_P, CB_REFERENCE, cb_space, CB_STORAGE_SCREEN, CB_TAG_CONST, CB_TAG_INTEGER, CB_TAG_INTRINSIC, CB_TAG_LITERAL, CB_TAG_REFERENCE, CB_TAG_STRING, CB_TREE_TAG, cb_validate_list(), cb_validate_one(), CB_VALUE, COB_SCREEN_BELL, COB_SCREEN_ERASE_EOL, COB_SCREEN_ERASE_EOS, COB_SCREEN_NO_DISP, cb_attr_struct::dispattrs, cb_attr_struct::fgc, gen_screen_ptr, line, NULL, output_screen_from(), p, cb_attr_struct::scroll, and value.
void cb_emit_env_name | ( | cb_tree | value | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
void cb_emit_env_value | ( | cb_tree | value | ) |
References CB_BUILD_FUNCALL_1, cb_emit, and cb_validate_one().
References build_evaluate(), cb_build_comment(), cb_build_direct(), cb_emit, cb_id, CB_PREFIX_LABEL, and cobc_parse_strdup().
void cb_emit_exit | ( | const unsigned int | goback | ) |
References cb_build_goto(), cb_emit, cb_int1, and NULL.
void cb_emit_free | ( | cb_tree | vars | ) |
References CB_BUILD_FUNCALL_2, cb_emit, and cb_validate_one().
References _, cb_build_goto(), CB_CHAIN, cb_check_data_incompat(), cb_check_numeric_value(), cb_emit, cb_error_node, cb_error_x(), CB_TREE, CB_VALUE, cb_verify(), current_statement, and NULL.
References cb_build_if(), and cb_emit.
void cb_emit_initialize | ( | cb_tree | vars, |
cb_tree | fillinit, | ||
cb_tree | value, | ||
cb_tree | replacing, | ||
cb_tree | def | ||
) |
References cb_build_initialize(), CB_CHAIN, cb_emit, cb_true, cb_validate_list(), CB_VALUE, and NULL.
References _, CB_BUILD_FUNCALL_1, cb_build_move(), CB_CHAIN, cb_check_data_incompat(), CB_CONST_P, cb_emit, cb_error_x(), CB_INTRINSIC_P, cb_list_length(), CB_LITERAL_P, cb_name(), CB_REFERENCE, CB_REFERENCE_P, CB_TREE, cb_validate_list(), cb_validate_one(), CB_VALUE, current_statement, cb_reference::offset, and cb_reference::subs.
References _, CB_CHAIN, cb_check_group_name(), cb_validate_one(), CB_VALUE, cb_warning_x(), and emit_move_corresponding().
References _, cb_build_debug(), cb_build_debug_call(), CB_BUILD_FUNCALL_4, cb_build_move(), cb_emit, cb_error_node, cb_error_x(), CB_FILE, cb_int(), cb_int0, cb_ref(), cb_space, CB_TREE, COB_OPEN_I_O, COB_ORG_LINE_SEQUENTIAL, COB_ORG_SORT, current_program, current_statement, cb_file::debug_section, file, cb_statement::file, cb_file::file_status, cb_program::flag_debugging, cb_file::flag_fl_debug, cb_statement::flag_in_debug, cb_file::name, NULL, cb_file::organization, and cb_file::sharing.
References _, cb_file::access_mode, cb_build_debug(), cb_build_debug_call(), cb_build_field_reference(), CB_BUILD_FUNCALL_3, CB_BUILD_FUNCALL_4, cb_build_move(), cb_emit, cb_error_node, cb_error_x(), CB_FILE, cb_int(), cb_int1, cb_int2, cb_int3, cb_int4, cb_list_add(), CB_LIST_INIT, cb_ref(), CB_TREE, cb_warning(), COB_ACCESS_DYNAMIC, COB_ACCESS_SEQUENTIAL, COB_ORG_INDEXED, COB_ORG_RELATIVE, COB_ORG_SORT, COB_READ_IGNORE_LOCK, COB_READ_LOCK, COB_READ_NEXT, COB_READ_NO_LOCK, COB_READ_PREVIOUS, COB_READ_WAIT_LOCK, current_program, current_statement, cb_file::debug_section, file, cb_statement::file, cb_file::file_status, cb_program::flag_debugging, cb_file::flag_fl_debug, cb_statement::flag_in_debug, cb_statement::handler3, cb_statement::handler_id, cb_file::key, cb_file::name, NULL, cb_file::organization, and cb_file::record.
void cb_emit_ready_trace | ( | void | ) |
References CB_BUILD_FUNCALL_0, and cb_emit.
void cb_emit_reset_trace | ( | void | ) |
References CB_BUILD_FUNCALL_0, and cb_emit.
References _, cb_build_debug(), cb_build_debug_call(), CB_BUILD_FUNCALL_4, cb_build_move(), cb_emit, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_PTR, CB_FILE, cb_int(), cb_int1, cb_ref(), CB_REF_OR_FIELD_P, CB_STORAGE_FILE, CB_TREE, cb_validate_one(), COB_EC_I_O_INVALID_KEY, COB_LOCK_AUTOMATIC, COB_ORG_INDEXED, COB_ORG_LINE_SEQUENTIAL, COB_ORG_RELATIVE, COB_ORG_SORT, COB_WRITE_LOCK, current_program, current_statement, cb_file::debug_section, file, cb_statement::file, cb_file::file_status, cb_program::flag_debugging, cb_statement::flag_in_debug, cb_statement::handler_id, cb_file::lock_mode, cb_file::name, NULL, and cb_file::organization.
void cb_emit_rollback | ( | void | ) |
References CB_BUILD_FUNCALL_0, and cb_emit.
References cb_build_search(), cb_check_needs_break(), cb_emit, cb_error_node, cb_list_reverse(), and cb_validate_one().
References cb_build_if(), cb_build_search(), cb_build_search_all(), cb_check_needs_break(), cb_emit, cb_error_node, cb_validate_one(), and NULL.
void cb_emit_set_attribute | ( | cb_tree | x, |
const int | val_on, | ||
const int | val_off | ||
) |
void cb_emit_set_false | ( | cb_tree | l | ) |
References CB_BUILD_FUNCALL_2, CB_CHAIN, cb_emit, cb_int(), cb_ref(), CB_SYSTEM_NAME, cb_validate_list(), CB_VALUE, and cb_system_name::token.
References _, cb_cast::cast_type, cb_build_move(), CB_CAST, CB_CAST_ADDRESS, CB_CAST_P, CB_CAST_PROGRAM_POINTER, CB_CHAIN, cb_check_data_incompat(), CB_CLASS_INDEX, CB_CLASS_NUMERIC, CB_CLASS_POINTER, CB_CLASS_UNKNOWN, cb_emit, cb_error_node, cb_error_x(), CB_FIELD, cb_name(), cb_ref(), CB_REFERENCE_P, CB_STORAGE_LINKAGE, CB_TREE, CB_TREE_CLASS, cb_tree_class(), CB_USAGE_PROGRAM_POINTER, cb_validate_list(), cb_validate_one(), CB_VALUE, current_statement, p, and cb_cast::val.
void cb_emit_set_true | ( | cb_tree | l | ) |
References cb_build_add(), cb_build_sub(), CB_CHAIN, cb_emit, cb_int0, cb_validate_list(), cb_validate_one(), and CB_VALUE.
References CB_BUILD_FUNCALL_2, and cb_emit.
void cb_emit_sort_finish | ( | cb_tree | file | ) |
References _, CB_BUILD_FUNCALL_2, CB_CHAIN, cb_emit, cb_error_x(), CB_FILE, CB_FUNCALL, cb_list_length(), cb_ref(), CB_TREE, cb_validate_list(), CB_VALUE, COB_ORG_SORT, current_statement, and p.
References _, CB_BUILD_CAST_ADDRESS, cb_build_cast_int(), CB_BUILD_FUNCALL_2, CB_BUILD_FUNCALL_3, CB_BUILD_FUNCALL_4, CB_BUILD_FUNCALL_5, CB_CHAIN, cb_emit, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_PTR, CB_FILE, CB_FILE_P, cb_int(), cb_list_length(), CB_PURPOSE, cb_ref(), cb_program::cb_sort_return, cb_validate_list(), CB_VALUE, COB_ORG_SORT, current_program, cb_field::depending, cb_field::name, NULL, cb_field::occurs_max, cb_field::offset, and cb_field::parent.
void cb_emit_sort_input | ( | cb_tree | proc | ) |
void cb_emit_sort_output | ( | cb_tree | proc | ) |
References _, CB_BUILD_FUNCALL_2, CB_CHAIN, cb_emit, cb_error_x(), CB_FILE, cb_ref(), CB_TREE, cb_validate_list(), CB_VALUE, COB_ORG_SORT, and current_statement.
References _, cb_file::access_mode, CB_BUILD_FUNCALL_5, cb_emit, cb_error_node, cb_error_x(), CB_FIELD_PTR, CB_FILE, cb_ref(), CB_TREE, cb_validate_one(), check_valid_key(), COB_ACCESS_RANDOM, COB_ORG_INDEXED, COB_ORG_RELATIVE, current_program, current_statement, cb_statement::file, cb_file::file_status, cb_statement::flag_callback, cb_program::flag_debugging, cb_file::flag_fl_debug, cb_statement::flag_in_debug, cb_file::key, and cb_file::organization.
void cb_emit_stop_run | ( | cb_tree | x | ) |
References cb_build_cast_int(), CB_BUILD_FUNCALL_1, and cb_emit.
References CB_BUILD_FUNCALL_0, CB_BUILD_FUNCALL_1, CB_BUILD_FUNCALL_2, CB_CHAIN, cb_emit, cb_int0, CB_PAIR_P, CB_PAIR_X, cb_validate_one(), CB_VALUE, and NULL.
void cb_emit_unlock | ( | cb_tree | ref | ) |
References CB_BUILD_FUNCALL_2, cb_emit, cb_error_node, CB_FILE, cb_ref(), current_statement, file, cb_statement::file, and cb_file::file_status.
void cb_emit_unstring | ( | cb_tree | name, |
cb_tree | delimited, | ||
cb_tree | into, | ||
cb_tree | pointer, | ||
cb_tree | tallying | ||
) |
References _, cb_build_debug(), cb_build_debug_call(), CB_BUILD_FUNCALL_5, cb_build_move(), cb_emit, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_PTR, CB_FILE, cb_int(), cb_int0, cb_int1, cb_int_hex(), cb_ref(), CB_REF_OR_FIELD_P, CB_STORAGE_FILE, CB_TREE, cb_validate_one(), COB_EC_I_O_EOP, COB_EC_I_O_INVALID_KEY, COB_LOCK_AUTOMATIC, COB_ORG_INDEXED, COB_ORG_LINE_SEQUENTIAL, COB_ORG_RELATIVE, COB_ORG_SORT, COB_WRITE_AFTER, COB_WRITE_BEFORE, COB_WRITE_LINES, COB_WRITE_LOCK, current_program, current_statement, cb_file::debug_section, file, cb_statement::file, cb_file::file_status, cb_program::flag_debugging, cb_statement::flag_in_debug, cb_file::flag_line_adv, cb_statement::handler1, cb_statement::handler_id, cb_file::lock_mode, cb_file::name, NULL, and cb_file::organization.
char* cb_encode_program_id | ( | const char * | name | ) |
References COB_FOLD_LOWER, COB_FOLD_UPPER, COB_MINI_BUFF, cob_u8_t, cobc_check_string(), hexval, likely, NULL, p, unlikely, and valid_char.
Referenced by cb_build_program_id(), emit_entry(), output_call(), output_cancel(), process_filename(), and user_func_upper().
|
static |
References _, cb_error(), cb_error_node, expr_expand(), expr_index, expr_reduce(), expr_node::value, and value.
Referenced by cb_build_expr().
|
static |
References cobc_main_malloc(), expr_index, expr_op, expr_stack_size, initialized, NULL, and START_STACK_SIZE.
Referenced by cb_build_expr().
|
static |
References cb_build_binary_op(), CB_BUILD_PARENTHESIS, cb_expr_shift_sign(), cb_zero, cobc_main_realloc(), expr_index, expr_op, expr_reduce(), expr_stack_size, TOKEN, VALUE, and value.
Referenced by cb_build_expr().
|
static |
References CB_BUILD_FUNCALL_1, CB_BUILD_NEGATION, expr_index, expr_reduce(), TOKEN, and VALUE.
Referenced by cb_build_expr().
|
static |
References cb_build_binary_op(), CB_BUILD_NEGATION, cb_zero, expr_index, expr_reduce(), TOKEN, and VALUE.
Referenced by cb_build_expr(), and cb_expr_shift().
|
static |
References _, CB_FIELD, cb_get_int(), CB_LITERAL, CB_LITERAL_P, CB_REFERENCE, CB_TAG_FIELD, CB_TAG_LITERAL, CB_TAG_REFERENCE, CB_TREE_TAG, cobc_abort_pr(), COBC_DUMB_ABORT, cb_reference::length, cb_reference::offset, cb_field::size, and cb_reference::value.
Referenced by cb_build_cond(), cb_build_length(), cb_build_length_1(), cb_build_memset(), cb_build_move_copy(), cb_build_move_field(), cb_check_overlapping(), cb_chk_alpha_cond(), and validate_move().
|
static |
References CB_BUILD_FUNCALL_9, cb_emit, cb_int(), CB_LIST_P, CB_PAIR_X, CB_PAIR_Y, line, and NULL.
Referenced by cb_emit_accept().
void cb_init_tallying | ( | void | ) |
References inspect_func, and NULL.
void cb_list_system | ( | void | ) |
References _, system_table::syst_name, and system_table::syst_params.
Referenced by process_command_line().
|
static |
References _, CB_ALPHABET_CUSTOM, CB_ALPHABET_NAME, CB_ALPHABET_NAME_P, cb_build_alphanumeric_literal(), cb_error_x(), cb_high, CB_LITERAL, cb_low, cb_name(), cb_ref(), cb_program::collating_sequence, and NULL.
Referenced by cb_validate_program_environment().
|
static |
References CB_CHAIN, cb_validate_one(), and CB_VALUE.
Referenced by cb_emit_arithmetic(), cb_emit_display(), cb_emit_free(), cb_emit_initialize(), cb_emit_move(), cb_emit_set_on_off(), cb_emit_set_to(), cb_emit_set_up_down(), cb_emit_sort_giving(), cb_emit_sort_init(), cb_emit_sort_using(), and cb_emit_unstring().
|
static |
References _, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_P, cb_ref(), and CB_REFERENCE_P.
Referenced by cb_build_unstring_delimited(), cb_build_unstring_into(), cb_emit_accept(), cb_emit_accept_arg_number(), cb_emit_accept_arg_value(), cb_emit_accept_command_line(), cb_emit_accept_date(), cb_emit_accept_date_yyyymmdd(), cb_emit_accept_day(), cb_emit_accept_day_of_week(), cb_emit_accept_day_yyyyddd(), cb_emit_accept_environment(), cb_emit_accept_escape_key(), cb_emit_accept_exception_status(), cb_emit_accept_line_or_col(), cb_emit_accept_mnemonic(), cb_emit_accept_name(), cb_emit_accept_time(), cb_emit_accept_user_name(), cb_emit_allocate(), cb_emit_arg_number(), cb_emit_arithmetic(), cb_emit_cancel(), cb_emit_command_line(), cb_emit_corresponding(), cb_emit_display(), cb_emit_divide(), cb_emit_env_name(), cb_emit_env_value(), cb_emit_get_environment(), cb_emit_move(), cb_emit_move_corresponding(), cb_emit_release(), cb_emit_return(), cb_emit_rewrite(), cb_emit_search(), cb_emit_search_all(), cb_emit_set_attribute(), cb_emit_set_to(), cb_emit_set_up_down(), cb_emit_start(), cb_emit_string(), cb_emit_unstring(), cb_emit_write(), and cb_validate_list().
void cb_validate_program_body | ( | struct cb_program * | prog | ) |
References _, cb_program::all_procedure, cb_label::alter_gotos, cb_program::alter_gotos, cb_program::alter_list, CB_CHAIN, cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_PTR, CB_LABEL, CB_LABEL_P, cb_list_reverse(), cb_name(), CB_PURPOSE, cb_ref(), CB_REFERENCE, CB_TAG_FIELD, CB_TAG_FILE, CB_TAG_LABEL, CB_TREE_TAG, CB_VALUE, cb_warning_x(), cobc_cs_check, cobc_parse_malloc(), current_paragraph, current_program, current_section, cb_program::debug_list, cb_program::exec_list, cb_program::file_list, cb_program::flag_debugging, cb_label::flag_first_is_goto, cb_alter_id::goto_id, cb_label::id, cb_program::label_list, cb_field::memory_size, cb_field::name, cb_label::name, cb_alter_id::next, cb_field::size, and value.
void cb_validate_program_data | ( | struct cb_program * | prog | ) |
References _, build_literal(), CB_ASSIGN_MF, cb_build_field(), cb_build_field_reference(), cb_build_implicit_field(), cb_build_picture(), cb_build_reference(), CB_CATEGORY_ALPHANUMERIC, CB_CHAIN, cb_depend_check, cb_error(), cb_error_node, cb_error_x(), CB_FIELD, CB_FIELD_ADD, CB_FIELD_P, CB_FIELD_PTR, CB_FILE, CB_LIST_INIT, cb_list_reverse(), CB_LITERAL, CB_NAME, cb_name(), cb_needs_01, CB_PICTURE, cb_ref(), CB_REF_OR_FIELD_P, CB_REFERENCE_P, CB_REPORT, CB_STORAGE_LINKAGE, CB_STORAGE_LOCAL, CB_STORAGE_WORKING, CB_TREE, CB_USAGE_DISPLAY, CB_USAGE_UNSIGNED_INT, CB_VALID_TREE, cb_validate_field(), CB_VALUE, cb_warning(), CB_WORD_COUNT, cb_zero, check_level_78(), cb_report::cname, COB_MINI_BUFF, COB_MINI_MAX, COB_SMALL_BUFF, cb_program::crt_status, current_program, cb_program::cursor_pos, cb_field::depending, cb_program::file_list, finalize_file(), cb_file::flag_finalized, cb_field::flag_is_global, cb_field::flag_no_init, cb_field::flag_odo_item, cb_report::line_counter, cb_field::name, cb_report::name, NULL, p, cb_report::page_counter, cb_field::parent, cb_field::pic, cb_file::record_depending, cb_field::redefines, redefinition_error(), cb_program::reference_list, cb_program::report_list, cb_field::sister, cb_field::storage, cb_field::usage, cb_field::values, and cb_program::working_storage.
void cb_validate_program_environment | ( | struct cb_program * | prog | ) |
References _, cb_program::alphabet_name_list, cb_alphabet_name::alphabet_type, cb_alphabet_name::alphachr, CB_ALPHABET_ASCII, CB_ALPHABET_EBCDIC, CB_ALPHABET_NAME, CB_ALPHABET_NAME_P, CB_ALPHABET_NATIVE, cb_build_symbolic_chars(), CB_CHAIN, CB_CLASS_NAME, cb_error_node, cb_error_x(), cb_high, cb_int1, CB_LIST_P, CB_LITERAL, CB_LITERAL_P, CB_LOCALE_NAME_P, cb_low, cb_name(), cb_norm_high, cb_norm_low, CB_NUMERIC_LITERAL_P, CB_PAIR_P, CB_PAIR_X, CB_PAIR_Y, CB_PURPOSE, cb_ref(), cb_validate_collating(), CB_VALUE, cb_warning_x(), cb_program::class_name_list, cb_program::classification, cob_refer_ascii, cob_refer_ebcdic, cb_program::collating_sequence, current_program, cb_alphabet_name::custom_list, get_value(), cb_alphabet_name::high_val_char, cb_class_name::list, cb_alphabet_name::low_val_char, NULL, cb_program::symbolic_char_list, and cb_alphabet_name::values.
|
static |
References _, cb_file::alt_key_list, cb_error_node, cb_error_x(), cb_field_founder(), CB_FIELD_PTR, cb_ref(), CB_TREE, COB_ORG_INDEXED, current_statement, cb_alt_key::key, cb_file::key, cb_alt_key::next, cb_field::offset, cb_file::organization, cb_file::record, and cb_field::sister.
Referenced by cb_emit_start().
|
static |
Referenced by cb_build_move_literal().
void cobc_init_typeck | ( | void | ) |
|
static |
|
static |
References _, cb_build_decimal(), COB_MAX_DEC_STRUCT, COBC_ABORT, cobc_abort_pr(), current_program, current_statement, cb_program::decimal_index, cb_program::decimal_index_max, and cb_statement::name.
Referenced by build_decimal_assign(), cb_build_cond(), and decimal_expand().
References build_store_option(), CB_BUILD_FUNCALL_3, and dpush.
Referenced by build_decimal_assign().
References _, CB_BUILD_FUNCALL_2, COBC_ABORT, cobc_abort_pr(), and dpush.
Referenced by build_decimal_assign(), and decimal_expand().
References _, CB_BINARY_OP, cb_build_cast_llint(), CB_BUILD_FUNCALL_1, CB_BUILD_FUNCALL_2, CB_BUILD_STRING0, cb_emit, CB_EXCEPTION_ENABLE, CB_FIELD_PTR, cb_int0, CB_LITERAL, CB_TAG_BINARY_OP, CB_TAG_CONST, CB_TAG_INTRINSIC, CB_TAG_LITERAL, CB_TAG_REFERENCE, CB_TREE_TAG, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_6, CB_USAGE_COMP_X, CB_USAGE_DISPLAY, CB_USAGE_INDEX, CB_USAGE_PACKED, cb_zero, COB_EC_DATA_INCOMPATIBLE, COBC_ABORT, cobc_abort_pr(), decimal_alloc(), decimal_compute(), decimal_free(), dpush, cb_field::name, cb_binary_op::op, p, cb_field::pic, cb_literal::scale, cb_picture::scale, cb_literal::size, cb_field::size, cb_field::usage, cb_binary_op::x, and cb_binary_op::y.
Referenced by build_decimal_assign(), and cb_build_cond().
|
static |
References current_program, and cb_program::decimal_index.
Referenced by build_decimal_assign(), cb_build_cond(), and decimal_expand().
|
static |
References cb_build_field_reference(), cb_emit, CB_FIELD_PTR, cb_field::children, cb_field::flag_occurs, found, cb_field::name, cb_field::redefines, and cb_field::sister.
Referenced by cb_emit_corresponding().
References cb_build_field_reference(), cb_build_move(), cb_emit, CB_FIELD_PTR, cb_field::children, cb_field::flag_occurs, found, cb_field::name, cb_field::redefines, and cb_field::sister.
Referenced by cb_emit_move_corresponding().
References _, cb_any, cb_build_binary_op(), CB_BUILD_NEGATION, cb_error_x(), cb_false, CB_FIELD, CB_FIELD_P, CB_PAIR_X, CB_PAIR_Y, CB_PURPOSE_INT, CB_REFERENCE, CB_REFERENCE_P, CB_TREE, cb_true, CB_VALUE, current_statement, NULL, and value.
Referenced by build_evaluate().
References CB_CAST, CB_CAST_ADDR_OF_ADDR, CB_CAST_ADDRESS, CB_CAST_P, CB_CAST_PROGRAM_POINTER, CB_FIELD_PTR, cb_null, CB_REF_OR_FIELD_P, cb_field::flag_is_pointer, and cb_field::level.
Referenced by expr_reduce().
|
static |
References CB_BINARY_OP, CB_BINARY_OP_P, cb_binary_op::op, p, cb_binary_op::x, and cb_binary_op::y.
Referenced by cb_expr_finish().
|
static |
References _, CB_BINARY_OP, CB_BINARY_OP_P, cb_build_binary_op(), CB_BUILD_NEGATION, CB_CLASS_BOOLEAN, cb_error_node, CB_TREE_CLASS, cb_warning(), expr_chk_cond(), expr_index, expr_op, expr_prio, TOKEN, and VALUE.
Referenced by cb_expr_finish(), cb_expr_shift(), cb_expr_shift_class(), and cb_expr_shift_sign().
|
static |
References CB_CLASS_NUMERIC, cb_get_int(), CB_LITERAL, cb_norm_high, cb_norm_low, cb_null, cb_quote, cb_space, CB_TREE_CLASS, and cb_zero.
Referenced by cb_validate_program_environment().
|
static |
References CB_LITERAL_P, cb_warning_x(), cb_tree_common::source_line, suppress_warn, and warning_destination().
Referenced by validate_move().
|
static |
References CB_BUILD_FUNCALL_2, cb_emit, CB_TREE, cb_field::children, COB_SCREEN_TYPE_ATTRIBUTE, COB_SCREEN_TYPE_FIELD, COB_SCREEN_TYPE_GROUP, COB_SCREEN_TYPE_VALUE, cb_field::count, cb_field::screen_from, cb_field::sister, cb_field::size, and cb_field::values.
Referenced by cb_emit_accept(), and cb_emit_display().
|
static |
References _, build_cond_88(), CB_BINARY_OP, cb_error_node, cb_error_x(), CB_FIELD_PTR, CB_REF_OR_FIELD_P, CB_REFERENCE_P, CB_TREE, current_statement, cb_key::key, cb_field::keys, cb_field::nkeys, NULL, cb_binary_op::op, p, cb_key::ref, cb_key::val, cb_binary_op::x, and cb_binary_op::y.
Referenced by cb_build_search_all().
References _, CB_ALPHABET_NAME_P, cb_error_node, cb_error_x(), CB_FIELD_PTR, cb_get_int(), CB_LITERAL, CB_LITERAL_P, cb_ref(), CB_REF_OR_FIELD_P, CB_REFERENCE, CB_TAG_CONST, CB_TAG_LITERAL, CB_TAG_REFERENCE, CB_TREE, CB_TREE_TAG, current_statement, cb_reference::length, and cb_reference::offset.
Referenced by cb_build_converting(), cb_build_replacing_all(), cb_build_replacing_first(), cb_build_replacing_leading(), and cb_build_replacing_trailing().
References _, cb_literal::all, CB_ALPHABET_NAME_P, CB_CATEGORY_ALPHABETIC, CB_CATEGORY_ALPHANUMERIC, CB_CATEGORY_ALPHANUMERIC_EDITED, CB_CATEGORY_BOOLEAN, CB_CATEGORY_NUMERIC, CB_CATEGORY_NUMERIC_EDITED, cb_check_overlapping(), CB_CLASS_NUMERIC, CB_CLASS_POINTER, CB_ERROR, cb_error_x(), CB_FIELD_PTR, cb_field_size(), CB_FILE_P, cb_get_long_long(), cb_high, CB_LITERAL, cb_low, cb_quote, CB_REFERENCE, CB_REFERENCE_P, cb_space, CB_TAG_BINARY_OP, CB_TAG_CONST, CB_TAG_FIELD, CB_TAG_FUNCALL, CB_TAG_INTEGER, CB_TAG_INTRINSIC, CB_TAG_LITERAL, CB_TAG_REFERENCE, CB_TREE_CATEGORY, CB_TREE_CLASS, CB_TREE_TAG, CB_USAGE_BINARY, CB_USAGE_COMP_5, CB_USAGE_COMP_X, CB_USAGE_DOUBLE, CB_USAGE_FLOAT, CB_USAGE_FP_BIN128, CB_USAGE_FP_BIN32, CB_USAGE_FP_BIN64, CB_USAGE_FP_DEC128, CB_USAGE_FP_DEC64, CB_USAGE_LONG_DOUBLE, cb_warning_x(), cb_zero, cb_field::children, COB_S64_C, cob_s64_t, COBC_ABORT, cobc_abort_pr(), count_pic_alphanumeric_edited(), cb_literal::data, cb_picture::digits, cb_field::flag_real_binary, cb_picture::have_sign, move_warning(), overlapping, p, cb_field::pic, cb_literal::scale, cb_picture::scale, cb_literal::sign, cb_literal::size, cb_picture::size, cb_field::size, cb_tree_common::source_line, suppress_warn, cb_field::usage, value, and warningopt.
Referenced by cb_build_move(), and validate_field_value().
|
static |
References _, CB_FIELD, cb_name(), CB_REFERENCE, CB_TREE, CB_USAGE_DOUBLE, CB_USAGE_FLOAT, CB_USAGE_FP_BIN128, CB_USAGE_FP_BIN32, CB_USAGE_FP_BIN64, CB_USAGE_FP_DEC128, CB_USAGE_FP_DEC64, CB_USAGE_LONG_DOUBLE, cb_warning(), cb_warning_x(), cb_field::flag_real_binary, cb_field::name, cb_reference::offset, cb_picture::orig, cb_field::pic, cb_field::size, cb_field::usage, and cb_reference::value.
Referenced by move_warning().
|
static |
|
static |
|
static |
|
static |
cb_tree cb_debug_contents |
cb_tree cb_debug_item |
cb_tree cb_debug_line |
Referenced by output_stmt().
cb_tree cb_debug_name |
cb_tree cb_debug_sub_1 |
cb_tree cb_debug_sub_2 |
cb_tree cb_debug_sub_3 |
|
static |
Referenced by cb_validate_program_environment().
|
static |
Referenced by cb_validate_program_environment().
|
static |
Referenced by cb_expr_finish(), cb_expr_init(), cb_expr_shift(), cb_expr_shift_class(), cb_expr_shift_sign(), and expr_reduce().
|
static |
|
static |
Referenced by cb_expr_init(), cb_expr_shift(), and expr_reduce().
|
static |
Referenced by cobc_init_typeck(), and expr_reduce().
|
static |
|
static |
Referenced by cb_expr_init(), and cb_expr_shift().
|
static |
Referenced by cb_encode_program_id(), output_integer(), and output_long_integer().
|
static |
Referenced by cb_expr_init().
|
static |
|
static |
|
static |
Referenced by cb_build_move_copy(), and validate_move().
|
static |
Referenced by cobc_init_typeck().
size_t suppress_warn = 0 |
Referenced by cb_check_overlapping(), move_warning(), output_move(), and validate_move().
|
static |
|
static |
Referenced by cb_encode_program_id(), and cobc_init_typeck().