diff options
author | ghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-08-29 13:34:10 +0000 |
---|---|---|
committer | ghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-08-29 13:34:10 +0000 |
commit | 1a24ab8608ab701fdeca020aef3c4fed62448755 (patch) | |
tree | 7bf9cfb32cd0bfa4f72bd0f88824002977c51c50 /gcc/ch/parse.c | |
parent | 0c028df6ab67928495ff8ea4add52b343c961757 (diff) | |
download | gcc-1a24ab8608ab701fdeca020aef3c4fed62448755.tar.gz |
* Makefile.in (ch-version.c): Constify a char*.
* actions.c (id_cmp, warn_unhandled, adjust_return_value,
update_else_range_for_int_const, update_else_range_for_range,
update_else_range_for_range_expr, update_else_range_for_type,
compute_else_range, check_case_value,
chill_handle_case_label_range,
chill_handle_multi_case_label_range,
chill_handle_multi_case_else_label, chill_handle_multi_case_label,
chill_handle_multi_case_label_list print_missing_cases): Add
static prototypes.
(build_exception_variant): Cast the function argument of qsort.
(build_rts_call, warn_unhandled, chill_convert_for_assignment,
adjust_return_value, chill_expand_result,
build_multi_case_selector_expression, print_missing_cases):
Constify a char*.
(print_missing_cases): Introduce an intermediary non-const ptr.
Add brackets and indent.
* ch-tree.h (maybe_building_objc_message_expr,
maybe_objc_comptypes, comptypes_record_hook): Remove declarations.
(push_handler, pop_handler): Add prototypes.
(builtin_function, valid_array_index_p,
build_chill_exception_decl, build_rts_call,
chill_convert_for_assignment, display_int_cst,
build_chill_addr_expr, check_have_mode, get_identifier3,
build_chill_string, register_seize_path, get_unique_identifier,
add_taskstuff_to_list, gnuchill_version): Constify a char*.
(finish_chill_function): Add void prototype argument.
* convert.c (convert_to_reference, convert_to_boolean,
convert_to_char, base_type_size_in_bytes, remove_tree_element,
check_ps_range, digest_powerset_tuple, digest_structure_tuple,
digest_array_tuple, convert1): Add static prototypes.
(base_type_size_in_bytes): Hide unused function.
(display_int_cst, digest_array_tuple): Constify a char*.
* decl.c (set_nesting_level, make_chill_variants, fix_identifier,
proclaim_decl, maybe_acons, push_scope_decls, pop_scope_decls,
build_implied_names, bind_sub_modules, layout_array_type,
do_based_decl, handle_one_level, label_value_cmp,
find_implied_types): Add static prototypes.
(boolean_code_name, chill_tree_code_type, chill_tree_code_name):
Constify a char*.
(layout_chill_variants): Cast the function argument of qsort.
(start_chill_function, fix_identifier, init_decl_processing):
Constify a char*.
(init_decl_processing): Prefer memcpy over bcopy to avoid casts.
Use xcalloc instead of xmalloc/bzero.
(builtin_function, build_chill_exception_decl,
finish_outer_function): Constify a char*.
* except.c (start_handler_array, finish_handler_array): Add static
prototypes.
* expr.c (chill_expand_expr, chill_expand_case_expr,
check_arglist_length, internal_build_compound_expr,
is_really_instance, invalid_operand, invalid_right_operand,
build_chill_abstime, build_allocate_memory_call,
build_allocate_global_memory_call, build_return_memory,
build_chill_duration, build_chill_floatcall,
build_allocate_getstack, build_chill_allocate,
build_chill_getstack, build_chill_terminate, build_chill_inttime,
build_chill_lower_or_upper, build_max_min,
build_chill_pred_or_succ, expand_packed_set, fold_set_expr,
build_compare_set_expr, scalar_to_string, build_concat_expr,
build_compare_string_expr, compare_records, string_char_rep,
build_boring_bitstring): Add static prototypes.
(check_have_mode, chill_expand_expr, build_chill_floatcall,
build_allocate_getstack, build_max_min, build_chill_function_call,
expand_packed_set, build_compare_set_expr, build_chill_addr_expr,
string_char_rep): Constify a char*.
* gperf (hash, in_word_set): Add prototypes.
* grant.c (newstring, strfree, append, prepend,
grant_use_seizefile, decode_layout, grant_array_type,
grant_array_type_selective, get_tag_value,
get_tag_value_selective, print_enumeral, print_enumeral_selective,
print_integer_type, find_enum_parent, print_integer_selective,
print_struct, print_struct_selective, print_proc_exceptions,
print_proc_tail, print_proc_tail_selective, find_in_decls,
in_ridpointers, grant_seized_identifier, globalize_decl,
grant_one_decl_selective, compare_memory_file, search_in_list,
really_grant_this): Add static prototypes.
(newstring, append, prepend, grant_use_seizefile,
print_integer_type, decode_constant, grant_one_decl_selective,
header_template): Constify a char *.
* inout.c (add_enum_to_list, build_chill_io_list_type,
build_io_types, declare_predefined_file, build_access_part,
textlocation_mode, check_assoc, assoc_call, check_transfer,
connect_process_optionals, connect_text, connect_access,
check_access, check_text, get_final_type_and_range,
process_io_list, check_format_string, get_max_size,
check_exprlist): Add static prototypes.
(declare_predefined_file, check_assoc, assoc_call, check_transfer,
check_access, check_text, process_io_list): Constify a char*.
* lang.c (deep_const_expr, chill_print_error_function): Add static
prototypes.
* lex.c (close_input_file, maybe_number, string_or_char): Constify
a char*.
(ch_lex_init, skip_directive, same_file, getlc, yywrap,
yy_refill): Add static prototypes.
(build_chill_string, same_file, register_seize_path): Constify a
char*.
* lex.h (finish_chill_seizes): Remove unused prototypes.
* loop.c (build_temporary_variable, maybe_make_for_temp,
get_unique_identifier): Constify a char*.
* parse.c (ch_parse_init, check_end_label, end_function,
build_prefix_clause, PEEK_TOKEN, peek_token_, pushback_token,
forward_token_, require, check_token, expect, define__PROCNAME__):
Add static prototypes.
(build_prefix_clause, expect): Constify a char*.
(parse_expression, parse_primval, parse_untyped_expr,
parse_opt_untyped_expr, parse_opt_actions): Add void prototype
argument.
(parse_opt_name_string, parse_simple_name_string,
parse_name_string, parse_defining_occurrence, parse_name,
parse_optlabel, parse_opt_end_label_semi_colon, parse_modulion,
parse_spec_module, parse_semi_colon,
parse_defining_occurrence_list, parse_mode_definition,
parse_mode_definition_statement, parse_synonym_definition,
parse_synonym_definition_statement, parse_on_exception_list,
parse_on_alternatives, parse_loc_declaration,
parse_declaration_statement, parse_optforbid, parse_postfix,
parse_postfix_list, parse_rename_clauses, parse_opt_prefix_clause,
parse_grant_statement, parse_seize_statement,
parse_param_name_list, parse_param_attr, parse_formpar,
parse_formparlist, parse_opt_result_spec, parse_opt_except,
parse_opt_recursive, parse_procedureattr, parse_proc_body,
parse_procedure_definition, parse_processpar,
parse_processparlist, parse_process_definition,
parse_signal_definition, parse_signal_definition_statement,
parse_then_clause, parse_opt_else_clause, parse_expr_list,
parse_range_list_clause, pushback_paren_expr, parse_case_label,
parse_case_label_list, parse_case_label_specification,
parse_single_dimension_case_action,
parse_multi_dimension_case_action, parse_case_action,
parse_asm_operands, parse_asm_clobbers, ch_expand_asm_operands,
parse_asm_action, parse_begin_end_block, parse_if_action,
parse_iteration, parse_delay_case_event_list,
parse_delay_case_action, parse_do_action, parse_receive_spec,
parse_receive_case_action, parse_send_action, parse_start_action,
parse_call, parse_tuple_fieldname_list, parse_tuple_element,
parse_opt_element_list, parse_tuple, parse_operand6,
parse_operand5, parse_operand4, parse_operand3, parse_operand2,
parse_operand1, parse_operand0, parse_case_expression,
parse_then_alternative, parse_else_alternative,
parse_if_expression, parse_index_mode, parse_set_mode, parse_pos,
parse_step, parse_opt_layout, parse_field_name_list,
parse_fixed_field, parse_variant_field_list,
parse_variant_alternative, parse_field, parse_structure_mode,
parse_opt_queue_size, parse_procedure_mode, parse_program,
parse_pass_1_2): Add static prototypes.
(parse_process_definition): Remove extra argument in function call.
(parse_range_list_clause): Likewise.
* satisfy.c (satisfy, cycle_error_print, safe_satisfy_decl,
satisfy_list, satisfy_list_values): Add static prototype.
(safe_satisfy_decl): Cast DECL_TASKING_CODE_DECL() to (tree).
* tasking.c (make_process_struct): Remove unused prototype.
(validate_process_parameters, get_struct_variable_name,
decl_tasking_code_variable, get_struct_debug_type_name,
get_process_wrapper_name, build_tasking_enum,
build_tasking_message_type, build_receive_signal_case_label,
build_receive_buffer_case_label, build_receive_buffer_case_end,
build_receive_signal_case_end): Add static prototypes.
(struct_name, struct_debug_name, data_name, wrapper_name,
get_struct_type_name, get_struct_debug_type_name,
get_tasking_code_name, get_struct_variable_name,
get_process_wrapper_name): Constify a char*.
(validate_process_parameters, get_struct_variable_name,
decl_tasking_code_variable): Hide unused functions.
(build_start_process, add_taskstuff_to_list, build_queue_length):
Constify a char*.
* tree.c (make_powerset_type): Add static prototype.
(get_identifier3, build_alias_decl, decl_check_rename): Constify a
char*.
* typeck.c (extract_constant_from_buffer,
expand_constant_to_buffer, build_empty_string,
make_chill_pointer_type, make_chill_range_type,
apply_chill_array_layout, field_decl_cmp, make_chill_struct_type,
apply_chill_field_layout): Add static prototype.
(valid_array_index_p, extract_constant_from_buffer,
chill_expand_tuple): Constify a char*.
(layout_chill_struct_type): Cast the function argument of qsort.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28965 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ch/parse.c')
-rw-r--r-- | gcc/ch/parse.c | 153 |
1 files changed, 131 insertions, 22 deletions
diff --git a/gcc/ch/parse.c b/gcc/ch/parse.c index 96026a105ba..72d1db68771 100644 --- a/gcc/ch/parse.c +++ b/gcc/ch/parse.c @@ -80,6 +80,18 @@ extern struct rtx_def *expand_expr PROTO((tree, struct rtx_def *, enum machine_mode, int)); static int parse_action PROTO((void)); +static void ch_parse_init PROTO((void)); +static void check_end_label PROTO((tree, tree)); +static void end_function PROTO((void)); +static tree build_prefix_clause PROTO((tree)); +static enum terminal PEEK_TOKEN PROTO((void)); +static int peek_token_ PROTO((int)); +static void pushback_token PROTO((int, tree)); +static void forward_token_ PROTO((void)); +static void require PROTO((enum terminal)); +static int check_token PROTO((enum terminal)); +static int expect PROTO((enum terminal, const char *)); +static void define__PROCNAME__ PROTO((void)); extern int lineno; extern char *input_filename; @@ -226,7 +238,7 @@ build_prefix_clause (id) if (!id) { if (current_module && current_module->name) - { char *module_name = IDENTIFIER_POINTER (current_module->name); + { const char *module_name = IDENTIFIER_POINTER (current_module->name); if (module_name[0] && module_name[0] != '_') return current_module->name; } @@ -315,7 +327,7 @@ forward_token_() /* Skip the next token. if it isn't TOKEN, the parser is broken. */ -void +static void require(token) enum terminal token; { @@ -328,7 +340,7 @@ require(token) FORWARD_TOKEN(); } -int +static int check_token (token) enum terminal token; { @@ -341,10 +353,10 @@ check_token (token) /* return 0 if expected token was not found, else return 1. */ -int +static int expect(token, message) enum terminal token; - char *message; + const char *message; { if (PEEK_TOKEN() != token) { @@ -363,7 +375,7 @@ expect(token, message) static void define__PROCNAME__ () { - char *fname; + const char *fname; tree string; tree procname; @@ -378,17 +390,114 @@ define__PROCNAME__ () } /* Forward declarations. */ -static tree parse_expression (); -static tree parse_primval (); +static tree parse_expression PROTO((void)); +static tree parse_primval PROTO((void)); static tree parse_mode PROTO((void)); static tree parse_opt_mode PROTO((void)); -static tree parse_untyped_expr (); -static tree parse_opt_untyped_expr (); +static tree parse_untyped_expr PROTO((void)); +static tree parse_opt_untyped_expr PROTO((void)); static int parse_definition PROTO((int)); -static void parse_opt_actions (); +static void parse_opt_actions PROTO((void)); static void parse_body PROTO((void)); static tree parse_if_expression_body PROTO((void)); static tree parse_opt_handler PROTO((void)); +static tree parse_opt_name_string PROTO((int)); +static tree parse_simple_name_string PROTO((void)); +static tree parse_name_string PROTO((void)); +static tree parse_defining_occurrence PROTO((void)); +static tree parse_name PROTO((void)); +static tree parse_optlabel PROTO((void)); +static void parse_opt_end_label_semi_colon PROTO((tree)); +static void parse_modulion PROTO((tree)); +static void parse_spec_module PROTO((tree)); +static void parse_semi_colon PROTO((void)); +static tree parse_defining_occurrence_list PROTO((void)); +static void parse_mode_definition PROTO((int)); +static void parse_mode_definition_statement PROTO((int)); +static void parse_synonym_definition PROTO((void)); +static void parse_synonym_definition_statement PROTO((void)); +static tree parse_on_exception_list PROTO((void)); +static void parse_on_alternatives PROTO((void)); +static void parse_loc_declaration PROTO((int)); +static void parse_declaration_statement PROTO((int)); +static tree parse_optforbid PROTO((void)); +static tree parse_postfix PROTO((enum terminal)); +static tree parse_postfix_list PROTO((enum terminal)); +static void parse_rename_clauses PROTO((enum terminal)); +static tree parse_opt_prefix_clause PROTO((void)); +static void parse_grant_statement PROTO((void)); +static void parse_seize_statement PROTO((void)); +static tree parse_param_name_list PROTO((void)); +static tree parse_param_attr PROTO((void)); +static tree parse_formpar PROTO((void)); +static tree parse_formparlist PROTO((void)); +static tree parse_opt_result_spec PROTO((void)); +static tree parse_opt_except PROTO((void)); +static tree parse_opt_recursive PROTO((void)); +static tree parse_procedureattr PROTO((void)); +static void parse_proc_body PROTO((tree, tree)); +static void parse_procedure_definition PROTO((int)); +static tree parse_processpar PROTO((void)); +static tree parse_processparlist PROTO((void)); +static void parse_process_definition PROTO((int)); +static void parse_signal_definition PROTO((void)); +static void parse_signal_definition_statement PROTO((void)); +static void parse_then_clause PROTO((void)); +static void parse_opt_else_clause PROTO((void)); +static tree parse_expr_list PROTO((void)); +static tree parse_range_list_clause PROTO((void)); +static void pushback_paren_expr PROTO((tree)); +static tree parse_case_label PROTO((void)); +static tree parse_case_label_list PROTO((tree, int)); +static tree parse_case_label_specification PROTO((tree)); +static void parse_single_dimension_case_action PROTO((tree)); +static void parse_multi_dimension_case_action PROTO((tree)); +static void parse_case_action PROTO((tree)); +static tree parse_asm_operands PROTO((void)); +static tree parse_asm_clobbers PROTO((void)); +static void ch_expand_asm_operands PROTO((tree, tree, tree, tree, int, char *, int)); +static void parse_asm_action PROTO((void)); +static void parse_begin_end_block PROTO((tree)); +static void parse_if_action PROTO((tree)); +static void parse_iteration PROTO((void)); +static tree parse_delay_case_event_list PROTO((void)); +static void parse_delay_case_action PROTO((tree)); +static void parse_do_action PROTO((tree)); +static tree parse_receive_spec PROTO((void)); +static void parse_receive_case_action PROTO((tree)); +static void parse_send_action PROTO((void)); +static void parse_start_action PROTO((void)); +static tree parse_call PROTO((tree)); +static tree parse_tuple_fieldname_list PROTO((void)); +static tree parse_tuple_element PROTO((void)); +static tree parse_opt_element_list PROTO((void)); +static tree parse_tuple PROTO((tree)); +static tree parse_operand6 PROTO((void)); +static tree parse_operand5 PROTO((void)); +static tree parse_operand4 PROTO((void)); +static tree parse_operand3 PROTO((void)); +static tree parse_operand2 PROTO((void)); +static tree parse_operand1 PROTO((void)); +static tree parse_operand0 PROTO((void)); +static tree parse_case_expression PROTO((void)); +static tree parse_then_alternative PROTO((void)); +static tree parse_else_alternative PROTO((void)); +static tree parse_if_expression PROTO((void)); +static tree parse_index_mode PROTO((void)); +static tree parse_set_mode PROTO((void)); +static tree parse_pos PROTO((void)); +static tree parse_step PROTO((void)); +static tree parse_opt_layout PROTO((int)); +static tree parse_field_name_list PROTO((void)); +static tree parse_fixed_field PROTO((void)); +static tree parse_variant_field_list PROTO((void)); +static tree parse_variant_alternative PROTO((void)); +static tree parse_field PROTO((void)); +static tree parse_structure_mode PROTO((void)); +static tree parse_opt_queue_size PROTO((void)); +static tree parse_procedure_mode PROTO((void)); +static void parse_program PROTO((void)); +static void parse_pass_1_2 PROTO((void)); static tree parse_opt_name_string (allow_all) @@ -622,7 +731,7 @@ parse_mode_definition (is_newmode) ignoring = save_ignoring; } -void +static void parse_mode_definition_statement (is_newmode) int is_newmode; { @@ -883,7 +992,7 @@ parse_declaration_statement (in_spec_module) parse_semi_colon (); } -tree +static tree parse_optforbid () { if (check_token (FORBID) == 0) @@ -905,7 +1014,7 @@ parse_optforbid () /* Matches: <grant postfix> or <seize postfix> Returns: A (singleton) TREE_LIST. */ -tree +static tree parse_postfix (grant_or_seize) enum terminal grant_or_seize; { @@ -921,7 +1030,7 @@ parse_postfix (grant_or_seize) return build_tree_list (forbid, name); } -tree +static tree parse_postfix_list (grant_or_seize) enum terminal grant_or_seize; { @@ -931,7 +1040,7 @@ parse_postfix_list (grant_or_seize) return list; } -void +static void parse_rename_clauses (grant_or_seize) enum terminal grant_or_seize; { @@ -972,7 +1081,7 @@ parse_opt_prefix_clause () return build_prefix_clause (parse_opt_name_string (0)); } -void +static void parse_grant_statement () { require (GRANT); @@ -988,7 +1097,7 @@ parse_grant_statement () } } -void +static void parse_seize_statement () { require (SEIZE); @@ -1282,7 +1391,7 @@ parse_process_definition (in_spec_module) ignoring = 0; require (COLON); require (PROCESS); expect (LPRN, "missing '(' after PROCESS"); - params = parse_processparlist (in_spec_module); + params = parse_processparlist (); expect (RPRN, "missing ')' in PROCESS"); ignoring = save_ignoring; if (in_spec_module) @@ -1479,7 +1588,7 @@ parse_range_list_clause () return NULL_TREE; while (check_token (COMMA)) { - name = parse_name_string (0); + name = parse_name_string (); } if (check_token (SC)) { @@ -1899,7 +2008,7 @@ parse_asm_clobbers () return list; } -void +static void ch_expand_asm_operands (string, outputs, inputs, clobbers, vol, filename, line) tree string, outputs, inputs, clobbers; int vol; @@ -4166,7 +4275,7 @@ parse_program() finish_outer_function (); } -void +static void parse_pass_1_2() { parse_program(); |