1. 04 Sep, 2000 1 commit
  2. 29 Aug, 2000 1 commit
    • zack's avatar
      top level: · 71d9fc9b
      zack authored
      	* c-common.c (declare_function_name): Use func_id_node,
      	function_id_node, and pretty_function_id_node.  Do not make
      	__func__ visible at file scope.
      	* c-common.h (c_tree_index): Add CTI_FUNCTION_ID,
      	CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID.
      	(function_id_node, pretty_function_id_node, func_id_node): New
      	macros.
      	* c-decl.c (init_decl_processing): Initialize function_id_node,
      	pretty_function_id_node, and func_id_node.
      	(c_make_fname_decl): Correct comment.
      
      	* tree.h (struct tree_identifier): Constify pointer member.
      
      	* c-decl.c (pushdecl, implicit_decl_warning): Constify a char *.
      	* c-pragma.h (struct weak_syms): Constify name and value members.
      	(add_weak): Constify arguments.
      
      	* calls.c (special_function_p): Constify a char *.
      	(expand_call): Remove variable which is initialized and then
      	never used.
      	* dependence.c (struct def_use, struct induction, struct subscript):
      	Constify 'variable' member.
      	(get_low_bound, have_induction_variable): Constify char * argument.
      	(find_induction_var...
      71d9fc9b
  3. 23 Aug, 2000 1 commit
  4. 22 Aug, 2000 1 commit
    • gdr's avatar
      * Makefile.in (error.o): Depends on diagnostic.h · b97edf7e
      gdr authored
      	* cp-tree.h (problematic_instantiation_changed,
      	record_last_problematic_instantiation, current_instantiation,
      	print_instantiation_context): Declare.
      	(maybe_print_template_context): Remove.
      
      	* decl.c (init_decl_processing): Set print_error_function to NULL.
      	(lang_print_error_function): Remove, since we're using a new
      	machinery.
      
      	* error.c: #include diagnostic.h
      	(function_category): New function.
      	(cp_diagnostic_starter): Likewise.
      	(cp_diagnostic_finalizer): Likewise.
      	(cp_print_error_function): Likewise.
      	(maybe_print_instantiation_context): Likewise.
      	(print_instantiation_full_context): Likewise.
      	(print_instantiation_partial_context): Likewise.
      	(print_instantiation_context): Define.
      	(init_error): Initialize diagnostic pager and finalizer.
      
      	* pt.c (problematic_instantiation_changed): Define.
      	(record_last_problematic_instantiation): Likewise.
      	(current_instantiation): Likewise.
      	(maybe_print_template_context): Remove.
      	(print_template_context): Likewise.
      	(current_tinst_level): Make static to reflect Brendan Kehoe's
      	change of 1995-04-13.
      	(push_tinst_level): Call print_instantiation_context.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35893 138bc75d-0d04-0410-961f-82ee72b054a4
      b97edf7e
  5. 17 Aug, 2000 2 commits
    • nathan's avatar
      * cp-tree.h (instantiate_type_flags): New enumeration. · ffe5bd74
      nathan authored
      	(instantiate_type): Change parameter.
      	* class.c (instantiate_type): Adjust prototype. Adjust.
      	* call.c (standard_conversion): Adjust instantiate_type call.
      	(reference_binding): Likewise.
      	(build_op_delete_call): Likewise.
      	(convert_like_real): Likewise.
      	* cvt.c (cp_convert_to_pointer): Likewise.
      	(convert_to_reference): Likewise.
      	* pt.c (convert_nontype_argument): Likewise.
      	* typeck.c (build_binary_op): Likewise.
      	(build_ptrmemfunc): Likewise.
      	(convert_for_assignment): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35757 138bc75d-0d04-0410-961f-82ee72b054a4
      ffe5bd74
    • nathan's avatar
      * cp-tree.h (CPTR_AGGR_TAG): New global tree node. · eccec853
      nathan authored
      	(current_aggr): Define.
      	* decl.c (grokdeclarator): Make sure a friend class is an
      	elaborated type specifier.
      	* parse.y (current_aggr): Remove static definition.
      	(cp_parse_init): Adjust.
      	(structsp): Clear and restore current_aggr.
      	(component_decl_list): Clear current_aggr.
      
      	* error.c (dump_type, case TYPENAME_TYPE): Don't emit the
      	aggregate tag on the typename's context.
      
      	* pt.c (tsubst_friend_class): Return NULL, if parms becomes NULL.
      	(instantiate_class_template): Ignore NULL friend types.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35755 138bc75d-0d04-0410-961f-82ee72b054a4
      eccec853
  6. 09 Aug, 2000 1 commit
  7. 04 Aug, 2000 1 commit
  8. 28 Jul, 2000 1 commit
  9. 23 Jul, 2000 1 commit
  10. 06 Jul, 2000 2 commits
  11. 03 Jul, 2000 1 commit
  12. 02 Jul, 2000 1 commit
    • chelf's avatar
      2000-07-01 Benjamin Chelf <chelf@codesourcery.com> · 5c3247a9
      chelf authored
      	* Makefile.in (C_AND_OBJC_OBJS): Added c-semantics.o.
      	(c-semantics.o): New target.
      
      	* c-common.h (TREE_LANG_FLAG_?): Added documentation.
      	(genrtl_do_pushlevel): Moved from cp/cp-tree.h.
      	(genrtl_clear_out_block): Likewise.
      	(genrtl_goto_stmt): Likewise.
      	(genrtl_expr_stmt): Likewise.
      	(genrtl_decl_stmt): Likewise.
      	(genrtl_if_stmt): Likewise.
      	(genrtl_while_stmt): Likewise.
      	(genrtl_do_stmt): Likewise.
      	(genrtl_return_stmt): Likewise.
      	(genrtl_for_stmt): Likewise.
      	(genrtl_break_stmt): Likewise.
      	(genrtl_continue_stmt): Likewise.
      	(genrtl_scope_stmt): Likewise.
      	(genrtl_switch_stmt): Likewise.
      	(genrtl_case_label): Likewise.
      	(genrtl_begin_compound_stmt): Likewise.
      	(gerntl_finish_compound_stmt): Likewise.
      	(genrtl_compound_stmt): Likewise.
      	(genrtl_asm_stmt): Likewise.
      	(genrtl_decl_cleanup): Likewise.
      	(DECL_ANON_UNION_ELEMS): Likewise.
      	(emit_local_var): Likewise.
      	(make_rtl_for_local_static): Likewise.
      	(expand_cond): Likewise.
      	(expand_stmt): Likewise.
      	(c_expand_return): Likewise.
      	(c_expand_start_case): Likewise.
      	(do_case): Likewise.
      	(COMPOUND_STMT_NO_SCOPE): Likewise.
      	(c_expand_asm_operands): Likewise.
      	(NEW_FOR_SCOPE_P): New macro.
      	(expand_expr_stmt_fn): New type.
      
      	(set_current_function_name_declared): Likewise.
      	(current_function_name_declared): Likewise.
      	(lang_expand_stmt): Likewise.
      	(stmts_are_full_exprs_p): Likewise.
      	(anon_aggr_type_p): Likewise.
      	(lang_expand_expr_stmt): Likewise.
      	(build_case_label): Likewise.
      
      	* c-decl.c (lang_expand_expr_stmt): Initialize.
      	(stmts_are_full_exprs_p): Define.
      	(current_function_name_declared): Likewise.
      	(do_case): Likewise.
      	(lang_expand_stmt): Likewise.
      	(set_current_function_name_declared): Likewise.
      	(anon_aggr_type_p): Likewise.
      	(build_case_label): Likewise.
      
      	* c-semantics.c: New file.
      	(expand_cond): Moved from cp/semantics.c.
      	(genrtl_do_pushlevel): Likewise.
      	(genrtl_clear_out_block): Likewise.
      	(genrtl_goto_stmt): Likewise.
      	(genrtl_expr_stmt): Likewise.
      	(genrtl_decl_stmt): Likewise.
      	(genrtl_if_stmt): Likewise.
      	(genrtl_while_stmt): Likewise.
      	(genrtl_do_stmt): Likewise.
      	(genrtl_return_stmt): Likewise.
      	(genrtl_for_stmt): Likewise.
      	(genrtl_break_stmt): Likewise.
      	(genrtl_continue_stmt): Likewise.
      	(genrtl_scope_stmt): Likewise.
      	(genrtl_switch_stmt): Likewise.
      	(genrtl_case_label): Likewise.
      	(genrtl_begin_compound_stmt): Likewise.
      	(genrtl_finish_compound_stmt): Likewise.
      	(genrtl_compound_stmt): Likewise.
      	(genrtl_asm_stmt): Likewise.
      	(genrtl_decl_cleanup): Likewise.
      	(make_rtl_for_local_static): Moved from cp/decl.c.
      	(emit_local_var): Likewise.
      	(expand_stmt): Define.
      
      	* c-tree.h: (c_expand_asm_operands): Moved to c-common.h.
      	(c_expand_return): Likewise.
      	(c_expand_start_case): Likewise.
      
              * cp/Make-lang.in (cc1plus$(exeext)): Added c-semantics.o.
      
      	* cp/Makefile.in (OBJS): Added ../c-semantics.o.
      	(OBJDEPS): Likewise.
      
      	* cp/cp-tree.h (TREE_LANG_FLAG_?): Moved common documentation to
      	../c-common.h.
      	(struct stmt_tree): Added comment.
      	(current_function_name_declared): Removed.
      	(stmts_are_full_exprs_p): Likewise.
      	(genrtl_do_pushlevel): Likewise.
      	(genrtl_clear_out_block): Likewise.
      	(COMPOUND_STMT_NO_SCOPE): Moved to ../c-common.h.
      	(DECL_ANON_UNION_ELEMS): Likewise.
      	(emit_local_var): Likewise.
      	(make_rtl_for_local_static): Likewise.
      	(do_case): Likewise.
      	(expand_stmt): Likewise.
      	(genrtl_decl_cleanup): Likewise.
      	(c_expand_asm_operands): Likewise.
      	(c_expand_return): Likewise.
      	(c_expand_start_case): Likewise.
      
      	* cp/decl.c (make_rtl_for_local_static): Moved to c-semantics.c.
      	(emit_local_var): Likewise.
      	(initialize_local_var): Change reference to
      	stmts_are_full_exprs_p to call to stmts_are_full_exprs_p().
      	Change reference to stmts_are_full_exprs_p to
      	current_stmt_tree->stmts_are_full_exprs_p.
      	(push_cp_function_context): Likewise.
      
      	* cp/expect.c (expand_throw): Change reference to
      	stmts_are_full_exprs_p.
      
      	* cp/init.c (build_aggr_init): Change reference to
      	stmts_are_full_exprs_p.
      	(build_vec_init): Likewise.
      
      	* cp/optimize.c (maybe_clone_body): Change reference to
      	current_function_name_declared to
      	cp_function_chain->name_declared.
      
      	* cp/pt.c (instantiate_decl): Change reference to
      	current_function_name_declared to
      	cp_function_chain->name_declared.
      
      	* cp/semantics.c (expand_cond): Moved declaration to c-common.h.
      	(genrtl_do_pushlevel): Moved to c-semantics.c.
      	(genrtl_clear_out_block): Likewise.
      	(genrtl_goto_stmt): Likewise.
      	(genrtl_expr_stmt): Likewise.
      	(genrtl_decl_stmt): Likewise.
      	(gerntl_if_stmt): Likewise.
      	(genrtl_while_stmt): Likewise.
      	(genrtl_do_stmt): Likewise.
      	(genrtl_return_stmt): Likewise.
      	(genrtl_for_stmt): Likewise.
      	(genrtl_break_stmt): Likewise.
      	(genrtl_continue_stmt): Likewise.
      	(genrtl_scope_stmt): Likewise.
      	(genrtl_switch_stmt): Likewise.
      	(genrtl_case_label): Likewise.
      	(genrtl_begin_compound_stmt): Likewise.
      	(genrtl_finish_compound_stmt): Likewise.
      	(genrtl_compound_stmt): Likewise.
      	(genrtl_asm_stmt): Likewise.
      	(genrtl_decl_cleanup): Likewise.
      	(expand_cond): Likewise.
      	(expand_stmt): Renamed to ...
      	(lang_expand_stmt): ... this.
      	(lang_expand_expr_stmt): Initialize.
      	(set_current_function_name_declared): Likewise.
      	(stmts_are_full_exprs_p): Likewise.
      	(current_function_name_declared): Likewise.
      	(anon_aggr_type_p): Likewise.
      	(do_poplevel): Change reference to
      	stmts_are_full_exprs_p to call to stmts_are_full_exprs_p().
      	Change reference to stmts_are_full_exprs_p to
      	current_stmt_tree->stmts_are_full_exprs_p.
      	(add_tree): Likewise.
      	(finish_expr_stmt): Likewise.
      	(prep_stmt): Likewise.
      	(lang_expand_stmt): Likewise.
      	(begin_compound_stmt): Change reference to
      	current_function_name_declared to
      	cp_function_chain->name_declared and call to
      	current_function_name_declared().
      	(setup_vtbl_ptr): Likewise.
      	(genrtl_do_poplevel): Removed.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34827 138bc75d-0d04-0410-961f-82ee72b054a4
      5c3247a9
  13. 29 Jun, 2000 1 commit
    • nathan's avatar
      * cp-tree.h (SET_DECL_ARTIFICIAL): Remove. · ecdd3d84
      nathan authored
      	* decl.c (create_implicit_typedef): Adjust.
      	* decl2.c (build_artificial_parm): Adjust.
      	* method.c (implicitly_declare_fn): Adjust.
      	* pt.c (push_inline_template_parms_recursive): Adjust.
      	(process_template_parm): Adjust.
      	(overloaded_template_name): Adjust.
      	* semantics.c (finish_template_template_parm): Adjust.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34780 138bc75d-0d04-0410-961f-82ee72b054a4
      ecdd3d84
  14. 28 Jun, 2000 1 commit
    • mmitchel's avatar
      * cp-tree.h (CLEAR_BINFO_NEW_VTABLE_MARKED): Remove. · 6c6e3d32
      mmitchel authored
      	* class.c (update_vtable_entry_for_fn): Correct logic for deciding
      	where to emit thunks.
      	(build_vtt): Adjust call to build_vtt_inits.
      	(build_vtt_inits): Add parameter to indicate whether or not
      	sub-VTTs for virtual bases should be included.  Adjust handling of
      	construction vtables.
      	(get_matching_base): New function.
      	(dfs_build_vtt_inits): Rename to ...
      	(dfs_build_secondary_vptr_vtt_inits): Adjust handling of
      	construction vtables.
      	(dfs_fixup_binfo_vtbls): Likewise.
      	(build_ctor_vtbl_groups): Build construction vtables for virtual
      	bases, too.
      	(accumulate_vtbl_inits): Tweak logic for deciding whether or not
      	to build construction vtbls.
      	(dfs_accumulate_vtbl_inits): Adjust handling of
      	construction vtables.
      
      	* pt.c (tsubst, case TEMPLATE_TEMPLATE_PARM): Handle cv-qualified
      	types correctly.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34765 138bc75d-0d04-0410-961f-82ee72b054a4
      6c6e3d32
  15. 23 Jun, 2000 1 commit
    • jason's avatar
      * parse.y (template_arg): Convert TEMPLATE_DECL · 6d2b611f
      jason authored
              that is a template template paramter to
              TEMPLATE_TEMPLATE_PARM here.
      
              * cp-tree.def (TEMPLATE_TEMPLATE_PARM): Adjust comment.
              * cp-tree.h (TEMPLATE_TEMPLATE_PARM_TEMPLATE_DECL): New macro.
              (copy_template_template_parm): Adjust prototype.
              * decl.c (grokdeclarator): Remove dead code.
              * pt.c (process_template_parm): Tidy.
              (lookup_template_class): Construct nodes in
              copy_template_template_parm.
              (tsubst): Pass TEMPLATE_DECL rather than IDENTIFIER_NODE to
              lookup_template_class.  Use TYPE_TI_TEMPLATE.
              * tree.c (copy_template_template_parm): Add NEWARGS
              parameter.
              (mapcar): Adjust call to copy_template_template_parm.
              * typeck.c (comptypes): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_DECL.
              * method.c (build_template_template_parm_names): Change error
              code to avoid compilation warning.
      
              * gxxint.texi: Document template template parameter
              name mangling.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34659 138bc75d-0d04-0410-961f-82ee72b054a4
      6d2b611f
  16. 22 Jun, 2000 2 commits
  17. 21 Jun, 2000 1 commit
  18. 19 Jun, 2000 1 commit
    • chelf's avatar
      * c-common.h (IF_COND): Added documentation. · 8036397f
      chelf authored
      	(THEN_CLAUSE): Likewise.
      	(ELSE_CLAUSE): Likewise.
      	(WHILE_COND): Likewise.
      	(WHILE_BODY): Likewise.
      	(DO_COND): Likewise.
      	(DO_BODY): Likewise.
      	(RETURN_EXPR): Likewise.
      	(EXPR_STMT_EXPR): Likewise.
      	(FOR_INIT_STMT): Likewise.
      	(FOR_COND): Likewise.
      	(FOR_EXPR): Likewise.
      	(FOR_BODY): Likewise.
      	(SWITCH_COND): Likewise.
      	(SWITCH_BODY): Likewise.
      	(CASE_LOW): Likewise.
      	(CASE_HIGH): Likewise.
      	(GOTO_DESTINATION): Likewise.
      	(COMPOUND_BODY): Likewise.
      	(ASM_CV_QUAL): Likewise.
      	(ASM_STRING): Likewise.
      	(ASM_OUTPUTS): Likewise.
      	(ASM_INPUTS): Likewise.
      	(ASM_CLOBBERS): Likewise.
      	(DECL_STMT_DECL): Likewise.
      	(STMT_EXPR_STMT): Likewise.
      	(LABEL_STMT_LABEL): Likewise.
      
      	* c-common.def: Added documenetion for SRCLOC, EXPR_STMT,
      	COMPOUND_STMT, DECL_STMT, IF_STMT, FOR_STMT, WHILE_STMT, DO_STMT,
      	RETURN_STMT, BREAK_STMT, CONTINUE_STMT, SWITCH_STMT, GOTO_STMT,
      	LABEL_STMT, ASM_STMT, SCOPE_STMT, CASE_LABEL, STMT_EXPR.
      
      	* cp/cp-tree.h (genrtl_try_block): Declare function.
      	(genrtl_handler): Likewise.
      	(genrtl_catch_block): Likewise.
      	(genrtl_ctor_stmt): Likewise.
      	(genrtl_subobject): Likewise.
      	(genrtl_decl_cleanup): Likewise.
      	(genrtl_do_poplevel): Likewise.
      	(genrtl_do_pushlevel): Likewise.
      	(genrtl_clear_out_block): Likewise.
      	(genrtl_goto_stmt): Likewise.
      	(genrtl_expr_stmt): Likewise.
      	(genrtl_decl_stmt): Likewise.
      	(genrtl_if_stmt): Likewise.
      	(genrtl_while_stmt): Likewise.
      	(genrtl_do_stmt): Likewise.
      	(genrtl_return_stmt): Likewise.
      	(genrtl_for_stmt): Likewise.
      	(genrtl_break_stmt): Likewise.
      	(genrtl_continue_stmt): Likewise.
      	(genrtl_scope_stmt): Likewise.
      	(genrtl_switch_stmt): Likewise.
      	(genrtl_case_label): Likewise.
      	(genrtl_begin_compound_stmt): Likewise.
      	(genrtl_finish_compound_stmt): Likewise.
      	(genrtl_compound_stmt): Likewise.
      	(genrtl_asm_stmt): Likewise.
      	(genrtl_named_return_value): Likewise.
      	(genrtl_begin_stmt_expr): Likewise.
      	(genrtl_finish_stmt_expr): Likewise.
      	(finish_for_stmt): Removed first argument.
      	(finish_switch_stmt): Likewise.
      
      	* cp/semantics.c (genrtl_try_block): Define function.
      	(genrtl_handler): Likewise.
      	(genrtl_catch_block): Likewise.
      	(genrtl_ctor_stmt): Likewise.
      	(genrtl_subobject): Likewise.
      	(genrtl_decl_cleanup): Likewise.
      	(genrtl_do_poplevel): Likewise.
      	(genrtl_do_pushlevel): Likewise.
      	(genrtl_clear_out_block): Likewise.
      	(genrtl_goto_stmt): Likewise.
      	(genrtl_expr_stmt): Likewise.
      	(genrtl_decl_stmt): Likewise.
      	(genrtl_if_stmt): Likewise.
      	(genrtl_while_stmt): Likewise.
      	(genrtl_do_stmt): Likewise.
      	(genrtl_return_stmt): Likewise.
      	(genrtl_for_stmt): Likewise.
      	(genrtl_break_stmt): Likewise.
      	(genrtl_continue_stmt): Likewise.
      	(genrtl_scope_stmt): Likewise.
      	(genrtl_switch_stmt): Likewise.
      	(genrtl_case_label): Likewise.
      	(genrtl_begin_compound_stmt): Likewise.
      	(genrtl_finish_compound_stmt): Likewise.
      	(genrtl_compound_stmt): Likewise.
      	(genrtl_asm_stmt): Likewise.
      	(genrtl_named_return_value): Likewise.
      	(genrtl_begin_stmt_expr): Likewise.
      	(genrtl_finish_stmt_expr): Likewise.
      	(finish_for_stmt): Removed first argument and generate rtl
      	specific code.
      	(finish_switch_stmt): Likewise.
      	(do_poplevel): Removed generate rtl specific code.
      	(do_pushlevel): Likewise.
      	(add_tree): Likewise.
      	(finish_goto_stmt): Likewise.
      	(finish_expr_stmt): Likewise.
      	(begin_if_stmt): Likewise.
      	(finish_if_stmt_cond): Likewise.
      	(finish_then_clause): Likewise.
      	(begin_else_clause): Likewise.
      	(finish_else_clause): Likewise.
      	(finish_if_stmt): Likewise.
      	(clear_out_block): Likewise.
      	(begin_while_stmt): Likewise.
      	(finish_while_stmt_cond): Likewise.
      	(finish_while_stmt): Likewise.
      	(begin_do_stmt): Likewise.
      	(finish_do_body): Likewise.
      	(finish_do_stmt): Likewise.
      	(finish_return_stmt): Likewise.
      	(begin_for_stmt): Likewise.
      	(finish_for_init_stmt): Likewise.
      	(finish_for_cond): Likewise.
      	(finish_for_expr): Likewise.
      	(finish_break_stmt): Likewise.
      	(finish_continue_stmt): Likewise.
      	(begin_switch_stmt): Likewise.
      	(finish_switch_cond): Likewise.
      	(finish_case_label): Likewise.
      	(begin_try_block): Likewise.
      	(begin_function_try_block): Likewise.
      	(finish_try_block): Likewise.
      	(finish_cleanup_try_block): Likewise.
      	(finish_cleanup): Likewise.
      	(finish_function_try_block): Likewise.
      	(finish_handler_sequence): Likewise.
      	(finish_function_handler_sequence): Likewise.
      	(begin_handler): Likewise.
      	(finish_handler_parms): Likewise.
      	(begin_catch_block): Likewise.
      	(finish_handler): Likewise.
      	(begin_compound_stmt): Likewise.
      	(finish_compound_stmt): Likewise.
      	(finish_asm_stmt): Likewise.
      	(finish_label_stmt): Likewise.
      	(finish_label_decl): Likewise.
      	(finish_subobject): Likewise.
      	(finish_decl_cleanup): Likewise.
      	(finish_named_return_value): Likewise.
      	(begin_stmt_expr): Likewise.
      	(finish_stmt_expr): Likewise.
      
      	* cp/decl.c (initialize_local_var): Changed call to finish_expr_stmt
      	to call genrtl_expr_stmt when appropriate.
      
      	* cp/init.c (begin_init_stmts): Changed calls to begin_stmt_expr and
      	begin_compound_expr to call genrtl_begin_stmt_expr and
      	genrtl_begin_compound_expr when appropriate.
      	(finish_init_stmts): Changed calls to finish_compound_expr and
      	finish_stmt_expr to call genrtl_finish_compound_expr and
      	genrtl_finish_stmt_expr when appropriate.
      	(expand_default_init): Changed call to finish_expr_stmt to call
      	genrtl_expr_stmt when appropriate.
      	(build_vec_init): Likewise.
      
      	* cp/parse.y (simple_stmt): Removed first argument from call to
      	finish_for_stmt. Removed first argument from call to
      	finish_switch_stmt.
      
      	* cp/parse.c: Regenerated.
      
      	* cp/pt.c (tsubst_expr): Removed first argument from call to
      	finish_for_stmt. Removed first argument from call to
      	finish_switch_stmt.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34597 138bc75d-0d04-0410-961f-82ee72b054a4
      8036397f
  19. 16 Jun, 2000 1 commit
    • mmitchel's avatar
      * cp-tree.h (struct language_function): Remove x_base_init_list · bc577f39
      mmitchel authored
      	and x_member_init_list.
      	(current_base_init_list): Remove.
      	(current_member_init_list): Likewise.
      	(setup_vtbl_ptr): Change prototype.
      	(emit_base_init): Likewise.
      	(expand_member_init): Likewise.
      	(reinit_parse_for_function): Remove.
      	* decl.c (save_function_data): Don't clear x_base_init_list and
      	x_member_init_list.
      	(mark_language_function): Don't mark them.
      	* init.c (perform_member_init): Tweak comment.
      	(sort_member_init): Take the list of initializers as an argument.
      	(sort_base_init): Likewise.
      	(emit_base_init): Likewise.
      	(expand_member_init): Return the initializer.  Don't use global
      	variables.
      	* lex.c (reinit_parse_for_function): Remove.
      	* method.c (build_template_parm_names): Correct substitution.
      	(do_build_copy_constructor): Don't use current_member_init_list
      	and current_base_init_list.
      	(synthesize_method): Likewise.
      	* parse.y (base_init): Split mem-initializers into
      	base-initializers and field-initializers.
      	(member_init_list): Build up the list here.
      	(member_init): Return the initializer.
      	(fn.depfn): Don't use reinit_parse_for_function.
      	* parse.c: Regenerated.
      	* pt.c (convert_nontype_argument): Don't make an ADDR_EXPR of the
      	ERROR_MARK.
      	(tsubst_expr): Don't use current_member_init_list
      	and current_base_init_list.
      	(tsubst_expr_values): Rename to ...
      	(tsubst_initializer_list): ... this.  Use convert_from_reference.
      	* semantics.c (setup_vtbl_ptr): Don't use current_member_init_list
      	and current_base_init_list.
      	(begin_function_definition): Don't call reinit_parse_for_function.
      
      	* dump.c (dequeue_and_dump): Use TREE_VEC_LENGTH with vectors.
      
      	* error.c (dump_expr): Handle ADDR_EXPRs with REFERENCE_TYPE
      	correctly.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34571 138bc75d-0d04-0410-961f-82ee72b054a4
      bc577f39
  20. 15 Jun, 2000 1 commit
    • jason's avatar
      * tree.c (count_trees): New debugging function. · 3a37334e
      jason authored
              * typeck.c (build_x_function_call): Use DECL_FUNCTION_TEMPLATE_P.
              * init.c (build_member_call): Pull out the name of a DECL.
      
              * Makefile.in (semantics.o, pt.o): Depend on TIMEVAR_H.
              * semantics.c (expand_body): Push to TV_INTEGRATION here.
              * optimize.c (optimize_function): Not here.
              * pt.c (instantiate_decl): Push to TV_PARSE.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34568 138bc75d-0d04-0410-961f-82ee72b054a4
      3a37334e
  21. 14 Jun, 2000 1 commit
    • jakub's avatar
      * tree.h (TYPE_USER_ALIGN, DECL_USER_ALIGN): Define. · aca14577
      jakub authored
      	(struct tree_type, struct tree_decl): Add user_align member.
      	* stor-layout.c (layout_decl): Set DECL_USER_ALIGN.
      	(place_union_field): If BIGGEST_FIELD_ALIGNMENT is defined
      	and DECL_USER_ALIGN 0, cap alignment to this value.
      	(place_field): Likewise.
      	(finalize_type_size): Set TYPE_USER_ALIGN.
      	(layout_type): Likewise.
      	(initialize_sizetypes): Likewise.
      	* c-common.c (decl_attributes): Set TYPE_USER_ALIGN resp.
      	DECL_USER_ALIGN to 1.
      	* c-decl.c (duplicate_decls): Set DECL_USER_ALIGN.
      	(xfer_tag): Set TYPE_USER_ALIGN.
      	(finish_struct): Set DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
      	(finish_enum): Likewise.
      	* stmt.c (expand_decl): Set DECL_USER_ALIGN.
      	(expand_anon_union_decl): Likewise.
      	* tree.c (make_node): Set DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
      	(build_index_type): Set TYPE_USER_ALIGN.
      	(build_range_type): Likewise.
      	(build_common_tree_nodes_2): Likewise.
      	* tm.texi (BIGGEST_FIELD_ALIGNMENT): Document the changed meaning.
      
      ch/:
      	* decl.c (init_d...
      aca14577
  22. 12 Jun, 2000 1 commit
    • mmitchel's avatar
      * mangle.c (NESTED_TEMPLATE_MATCH): Fix typo in comment. · f753592a
      mmitchel authored
      	(is_std_substitution): Don't check CLASSTYPE_USE_TEMPLATE here.
      	(find_substitution): Only use the `Sa' substitution for
      	std::allocator, not instantiations of it.
      	(write_template_prefix): Move comment.  Only use a TREE_LIST to
      	represent substitutions for a member template.
      	(write_array_type): Mangle array dimensions correctly.
      	* optimize.c (maybe_clone_body): Copy more information from the
      	cloned function.
      	* pt.c (regenerate_decl_from_template): Preserve DECL_USE_TEMPLATE
      	on the regenerated declaration.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34497 138bc75d-0d04-0410-961f-82ee72b054a4
      f753592a
  23. 09 Jun, 2000 1 commit
  24. 08 Jun, 2000 1 commit
    • mmitchel's avatar
      * invoke.texi: Remove documentation for -fsquangle and · f2b8a47d
      mmitchel authored
      	-fname-mangling-version.
      
      	Remove old ABI mangling code.
      	* cp-tree.h (cp_tree_index): Remove CPTI_TINFO_DECL_ID and
      	CPTI_TINFO_VAR_ID.
      	(tinfo_decl_id): Remove.
      	(tinfo_var_id): Likewise.
      	(name_mangling_version): Likewise.
      	(flag_do_squangling): Likewise.
      	(get_vtt_name): Likewise.
      	(init_method): Likewise.
      	(build_overload_name): Likewise.
      	(build_static_name): Likewise.
      	(build_decl_overload_real): Likewise.
      	(build_overload_with_type): Likewise.
      	(build_destructor_name): Likewise.
      	(get_id_2): Likewise.
      	(get_ctor_vtbl_name): Likewise.
      	(mangle_typeinfo_fn_for_type): New function.
      	(mangle_java_reflection_var_for_type): Likewise.
      	* call.c (build_new_method_call): Use mangle_vtt_for_type.
      	* class.c (get_vtable_name): Remove.
      	(get_vtt_name): Remove.
      	(get_vtable_decl): Use mangle_vtbl_for_type.
      	(build_vtt): Likewise.
      	(build_ctor_vtbl_group): Remove old ABI mangling support.
      	* decl.c (pushtag): Likewise.
      	(maybe_commonize_var): Use set_mangled_name_for_decl.
      	(grokfndecl): Remove old ABI mangling support.
      	(grokvardecl): Likewise.
      	(grokdeclarator): Likewise.
      	(grok_op_properties): Adjust use of DEF_OPERATOR.
      	* decl2.c (name_mangling_version): Remove.
      	(lang_f_options): Remove squangle.
      	(unsupported_options): Add squangle.
      	(lang_decode_options): Don't set flag_do_squangling.  Issue a
      	warning for -fname-mangling-version.
      	(grokclassfn): Remove old ABI mangling support.
      	(finish_static_data_member_decl): Likewise.
      	(grokfield): Likewise.
      	(grokoptypename): Likewise.
      	(get_sentry): Likewise.
      	* init.c (build_java_class_ref): Use
      	mangle_java_reflection_var_for_type.
      	* lex.c (init_operators): Adjust use of DEF_OPERATOR.
      	(init_parse): Call init_mangle, not init_method.
      	* mangle.c (write_special_name_constructor): Handle
      	maybe-in-charge constructors.
      	(write_special_name_destructor): Handle
      	maybe-in-charge destructors.
      	(write_expression): Tweak code to handle non-type template
      	arguments with reference type.
      	(mangle_typeinfo_fn_for_type): New function.
      	(mangle_java_reflection_var_for_type): Likewise.
      	(mangle_conv_op_name_for_type): Don't use a name that the user
      	could type.
      	* method.c (enum mangling_flags): Remove.
      	(mangling_flags): Likewise.
      	(obstack_chunk_alloc): Likewise.
      	(obstack_chunk_free): Likewise.
      	(OB_INIT): Likewise.
      	(OB_PUTC): Likewise.
      	(OB_PUTC2): Likewise.
      	(OB_PUTS): Likewise.
      	(OB_PUTID): Likewise.
      	(OB_PUTCP): Likewise.
      	(OB_FINISH): Likewise.
      	(OB_LAST): Likewise.
      	(btypelist): Likewise.
      	(ktypelist): Likewise.
      	(maxbtype): Likewise.
      	(maxktype): Likewise.
      	(typevec): Likewise.
      	(maxtype): Likewise.
      	(init_method): Likewise.
      	(digit_buffer): Likewise.
      	(nofold): Likewise.
      	(start_squangling): Likewise.
      	(end_squangling): Likewise.
      	(icat): Likewise.
      	(dicat): Likewise.
      	(old_backref_index): Likewise.
      	(flush_repeats): Likewise.
      	(is_back_referenceable_type): Likewise.
      	(issue_nrepeats): Likewise.
      	(check_ktype): Likewise.
      	(issue_ktype): Likewise.
      	(build_overload_nested_name): Likewise.
      	(build_underscore_int): Likewise.
      	(build_overload_scope_ref): Likewise.
      	(mangle_expression): Likewise.
      	(build_overload_int): Likewise.
      	(mangled_C9x_name): Likewise.
      	(build_overload_value): Likewise.
      	(build_template_template_parm_names): Likewise.
      	(build_template_parm_names): Likewise.
      	(build_overload_identifier): Likewise.
      	(build_qualified_name): Likewise.
      	(build_mangled_name_for_type_with_Gcode): Likewise.
      	(build_mangled_name_for_type): Likewise.
      	(build_overload_name): Likewise.
      	(build_mangled_name): Likewise.
      	(process_modifiers): Likewise.
      	(check_btype): Likewise.
      	(process_overload_item): Likewise.
      	(build_static_name): Likewise.
      	(build_decl_overload_real): Likewise.
      	(set_mangled_name_for_decl): Remove old ABI mangling support.
      	(build_typename_overload): Remove.
      	(build_overload_with_type): Remove.
      	(get_id_2): Remove.
      	(get_ctor_vtbl_name): Remove.
      	(build_destructor_name): Likewise.
      	(set_mangled_name_for_decl): Likewise.
      	(make_thunk): Remove old ABI mangling support.
      	* operators.def: Likewise.
      	* pt.c (check_explicit_specialization): Don't call
      	set_mangled_name_for_template_decl.
      	(lookup_template_class): Remove old ABI mangling support.
      	(tsubst_friend_function): Update comment.
      	(tsubst_decl): Remove old ABI mangling support.
      	(tsubst_copy): Likewise.
      	(set_mangled_name_for_template_decl): Remove.
      	* rtti.c (init_rtti_processing): Use std_identifier.  Don't set
      	tinfo_decl_id or tinfo_var_id.
      	(get_tinfo_var): Use mangle_typeinfo_for_type.
      	(tinfo_name): Remove old ABI mangling support.
      	(get_tinfo_decl): Likewise.
      	(tinfo_base_init): Likewise.
      	(create_real_tinfo_var): Use a name that the user can't type.
      
      	* tinfo2.cc (BUILTIN): Adjust to use new mangling.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34458 138bc75d-0d04-0410-961f-82ee72b054a4
      f2b8a47d
  25. 06 Jun, 2000 2 commits
    • mmitchel's avatar
      * decl.c (redeclaration_error_message): If two TEMPLATE_DECLs have · 1d883871
      mmitchel authored
      	the same DECL_RESULT, it's not a redefinition.
      	* pt.c (tsubst_decl): Remove code to handle illegal
      	specializations.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34438 138bc75d-0d04-0410-961f-82ee72b054a4
      1d883871
    • jason's avatar
      * search.c (maybe_suppress_debug_info): Don't check · 04d89d04
      jason authored
              CLASSTYPE_INTERFACE_ONLY if CLASSTYPE_INTERFACE_KNOWN isn't set.
      
              * pt.c (mark_decl_instantiated): Do SET_DECL_EXPLICIT_INSTANTIATION
              here if extern_p.
      
              Remember instantiation context in deferred instantiations.
              * cp-tree.h (struct tinst_level): Remove.
              (TINST_DECL, TINST_LINE, TINST_FILE): New macros.
              * pt.c (current_tinst_level): Now a tree.
              (print_template_context, push_tinst_level, pop_tinst_level,
              tinst_for_decl): Adjust.
              (reopen_tinst_level): New fn.
              (init_pt): Register current_tinst_level as a root.
              (add_pending_template): Put current_tinst_level in TREE_PURPOSE
              of the pending templates list.
              (instantiate_pending_templates): Adjust.  Call reopen_tinst_level.
              * lex.c (extract_interface_info): Adjust.
              * decl2.c (warn_if_unknown_interface): Adjust.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34415 138bc75d-0d04-0410-961f-82ee72b054a4
      04d89d04
  26. 05 Jun, 2000 1 commit
    • mmitchel's avatar
      * ir.texi: Correct typo. · 148e86d7
      mmitchel authored
      	* mangle.c (write_expression): Handle non-type template arguments
      	with reference type.
      	* method.c (build_overload_value): Likewise.
      	* pt.c (convert_nontype_argument): Explicitly represent conversion
      	to a reference with an ADDR_EXPR.
      	(unify): Always unify arguments in left-to-right order.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34396 138bc75d-0d04-0410-961f-82ee72b054a4
      148e86d7
  27. 04 Jun, 2000 1 commit
  28. 03 Jun, 2000 1 commit
    • mmitchel's avatar
      * cp-tree.h (TMPL_ARGS_LEVEL): Clarify comment. · a32fe883
      mmitchel authored
      	(INNERMOST_TEMPLATE_ARGS): New macro.
      	(innermost_args): Remove.
      	(get_innermost_template_args): New function.
      	* decl2.c (arg_assoc_class): Use INNERMOST_TEMPLATE_ARGS.
      	* error.c (dump_function_decl): Be caution when using
      	most_general_template.
      	* method.c (build_template_parm_names):  Use
      	INNERMOST_TEMPLATE_ARGS.
      	* pt.c (add_to_template_args): Tidy comment
      	(get_innermost_template_args): New function.
      	(check_explicit_specialization): Clear DECL_INITIAL for a new
      	specialization.
      	(process_partial_specialization): Use INNERMOST_TEMPLATE_ARGS.
      	Tidy.
      	(push_template_decl): Always register specializations of the most
      	general template.
      	(convert_template_argument): Use INNERMOST_TEMPLATE_ARGS.
      	(coerce_template_parms): Likewise.
      	(lookup_template_class): Likewise.
      	(innermost_args): Remove.
      	(tsubst_decl): Use INNERMOST_TEMPLATE_ARGS.
      	(tsubst_decl): Handle tricky specializations.  Use
      	get_innermost_template_args.
      	(instantiate_template): Simplify handling of partial
      	instantiations.
      	(get_class_bindings): Use INNERMOST_TEMPLATE_ARGS.
      	(most_general_template): Reimplement, in a more straightforward
      	manner.
      	(regenerate_decl_from_template): Tweak formatting.  Use
      	TMPL_ARGS_DEPTH for clarity.
      	(set_mangled_name_for_template_decl): Use INNERMOST_ARGS.
      
      	* dump.c (dequeue_and_dump): Dump information about thunks.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34384 138bc75d-0d04-0410-961f-82ee72b054a4
      a32fe883
  29. 31 May, 2000 1 commit
  30. 28 May, 2000 1 commit
    • mmitchel's avatar
      2000-05-27 Alex Samuel <samuel@codesourcery.com> · 97cc4539
      mmitchel authored
      	    Mark Mitchell  <mark@codesourcery.com>
      
      	* cp-tree.h (ansi_opname): Make it a macro.
      	(ansi_assopname): Likewise.
      	(struct lang_decl_flags): Add assignment_operator_p.
      	(struct lang_decl): Add operator_code.
      	(DECL_VTT_PARM): Adjust.
      	(DECL_OVERLOADED_OPERATOR_P): Return the operator_code for an
      	overloaded operator.
      	(SET_OVERLOADED_OPERATOR_CODE): New macro.
      	(DECL_ASSIGNMENT_OPERATOR_P): New macro.
      	(DECL_ARRAY_DELETE_OPERATOR_P): Adjust.
      	(opname_tab): Remove.
      	(assignop_tab): Likewise.
      	(operator_name_info_t): New type.
      	(operator_name_info): New variable.
      	(assignment_operator_name_info): Likewise.
      	(build_cp_library_fn): Remove declaration.
      	(push_cp_library_fn): Likewise.
      	(operator_name_string): Likewise.
      	(build_decl_overload): Likewise.
      	* call.c (print_z_candidates): Simplify.
      	(build_object_call): Adjust usage of ansi_opname.  Use
      	DECL_OVERLOADED_OPERATOR_P.
      	(op_error): Adjust operator name lookup.
      	(build_conditional_expr): Adjust usage of ansi_opname.
      	(build_new_op): Likewise.
      	(build_op_delete_call): Likewise.
      	(build_over_call): Likewise.
      	(joust): Use DECL_OVERLOADED_OPERATOR_P.
      	* decl.c (duplicate_decls): Copy operator_code.
      	(init_decl_processing): Adjust parameters to push_cp_library_fn.
      	(builtin_function): Adjust parameters to build_library_fn_1.
      	(build_library_fn_1): Accept an overloaded operator code.
      	(build_library_fn): Pass ERROR_MARK.
      	(build_cp_library_fn): Accept an overloaded operator code.
      	(push_cp_library_fn): Likewise.
      	(grokfndecl): Tweak.
      	(grokdeclarator): Simplify code to compute names of overloaded
      	operators.  Adjust use of ansi_opname.
      	(ambi_op_p): Work on tree_codes, not identifiers.
      	(unary_op_p): Likewise.
      	(grok_op_properties): Likewise.
      	(start_function): Use DECL_OVERLOADED_OPERATOR_P.
      	(lang_mark_tree): Don't try to mark the operator_code.
      	* decl2.c (grok_function_init): Use DECL_OVERLOADED_OPERATOR_P.
      	* error.c (dump_decl): Remove special handling for operator
      	names.
      	(dump_function_name): Likewise.
      	(dump_expr): Adjust name lookup of operators.
      	(op_to_string): Simplify.
      	(assop_to_string): Likewise.
      	* init.c (build_new_1): Adjust use of ansi_opname.
      	* lex.c (opname_tab): Remove.
      	(assignop_tab): Likewise.
      	(ansi_opname): Likewise.
      	(ansi_assopname): Likewise.
      	(operator_name_string): Likewise.
      	(reinit_lang_specific): Likewise.
      	(operator_name_info): New variable.
      	(assignment_operator_name_info): Likewise.
      	(init_operators): New function.
      	(init_parse): Use it.
      	(do_identifier): Adjust use of ansi_opname.
      	* method.c (mangle_expression): Don't use ansi_opname for
      	mangling.
      	(build_decl_overload_real): Use DECL_OVERLOADED_OPERATOR_P.
      	(build_decl_overload): Remove.
      	(build_typename_overload): Use OPERATOR_TYPENAME_FORMAT directly.
      	(do_build_assign_ref): Adjust use of ansi_opname.
      	(synthesize_method): Likewise.
      	(implicitly_declare_fn): Likewise.
      	* operators.def: New file.
      	* parse.y (operator): Adjust use of ansi_opname.
      	* pt.c (tsubst_decl): Use IDENTIFIER_OPNAME_P.
      	(set_mangled_name_for_template_decl): Don't play games with
      	current_namespace.
      	(special_function_p): Adjust use of ansi_opname.
      	* typeck.c (check_return_expr): Likewise.
      	* Make-lang.in (cc1plus): Depend on operators.def.
      	* Makefile.in (lex.o): Likewise.
      	(decl.o): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34223 138bc75d-0d04-0410-961f-82ee72b054a4
      97cc4539
  31. 24 May, 2000 1 commit
  32. 22 May, 2000 1 commit
    • mmitchel's avatar
      * cp-tree.h (IDENTIFIER_TYPENAME_P): Use a flag, not strncmp. · f0edcca6
      mmitchel authored
      	(DECL_CONV_FN_P): Simplify.
      	(DECL_OPERATOR): Remove.
      	(language_to_string): Declare.
      	* decl.c (duplicate_decls): Fix typo in comment.
      	(grokdeclarator): Adjust use of IDENTIFIER_TYPENAME_P.
      	(grok_op_properties): Use DECL_CONV_FN_P instead of
      	IDENTIFIER_TYPENAME_P.
      	* dump.c (dequeue_and_dump): Dump the language linkage of
      	declarations.
      	* error.c (language_to_string): Give it external linkage.
      	* method.c (build_typename_overload): Set IDENTIFIER_TYPENAME_P.
      	(implicitly_declare_fn): Set DECL_LANGUAGE.
      	* pt.c (check_explicit_specialization): Use DECL_CONV_FN_P, not
      	IDENTIFIER_TYPENAME_P.
      	(tsubst_decl): Likewise.
      	(tsubst_copy): Adjust use of IDENTIFIER_TYPENAME_P.
      	* semantics.c (finish_member_declaration): Don't mark members of
      	classes declared in an extern "C" region as extern "C".
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34095 138bc75d-0d04-0410-961f-82ee72b054a4
      f0edcca6
  33. 09 May, 2000 1 commit
    • zack's avatar
      top level: · e772a198
      zack authored
      	* Makefile.in (WARN_CFLAGS): Add -Wwrite-strings.
      	(tree.o): Depend on output.h.
      
      	* c-decl.c (pending_invalid_xref_file,
      	current_function_prototype_file): Constify.
      	(pushdecl): Constify a local char *.
      	(define_label): Constify filename parameter.
      	* c-lex.c (init_parse): Constify parameter and return value.
      	* c-typeck.c (c_expand_asm_operands): Constify filename parameter.
      	* c-tree.h: Update prototypes.
      	* c-parse.in: Constify filename member of %union, and if_stmt_file.
      	* c-parse.y, c-parse.c, c-parse.h, objc/objc-parse.y,
      	objc/objc-parse.c: Regenerate.
      
      	* dwarfout.c (dwarfout_init): Constify main_input_filename parameter.
      	* dwarfout.h: Update prototypes.
      	* expr.c (expand_expr): Constify a local char *.
      	* flags.h: Constify main_input_filename.
      	* function.c (expand_function_end): Constify filename parameter.
      	* genrecog.c (make_insn_sequence): Use a character array for
      	c_test_pos.
      	(main): Remove unused variables.
      	* input.h: Constify input_filename, main_input_filename, and
      	file_stack.name.  Update prototypes.
      	* output.h: Declare first_global_object_name and
      	weak_global_object_name here, as const char *.
      	* stmt.c (expand_asm_operands): Constify filename parameter.
      	* toplev.c (compile_file, push_srcloc, debug_start_source_file):
      	Constify filename parameter.
      	(input_filename, main_input_filename): Constify.
      	* toplev.h: Update prototypes.
      	* tree.c: Include output.h.  Don't declare
      	first_global_object_name or weak_global_object_name.  Clean up string
      	bashing in get_file_function_name_long.
      	* tree.h (struct tree_decl): Constify filename member.
      	(input_filename): Constify.
      	Update prototypes.
      	* varasm.c (first_global_object_name, weak_global_object_name):
      	Constify.
      	(assemble_start_function, assemble_variable): Clean up string bashing.
      
      	* gcc.c: Constify all spec-related strings initialized,
      	transitively, from string constants.  Constify all strings
      	and string variables related to multilibs.
      	(set_spec, read_specs): Cast argument to free to PTR.
      	(used_arg): Do not modify multilib_matches.  Use strncmp plus
      	length comparison to compare multilib switches.
      	* genmultilib: Constify everything declared in multilib.h.
      
      ch:
      	* ch-tree.h: Update prototypes.  Remove prototypes for
      	functions declared elsewhere.
      	* decl.c (define_label): Constify filename parameter.
      	* grant.c (globalize_decl, set_default_grant_file): Constify
      	local char * variables.  Don't declare
      	first_global_object_name or asm_out_file.
      	* lang.c (chill_real_input_filename): Constify.
      	* lex.c (init_parse): Constify parameter and return value.
      	* parse.c: Don't declare input_filename.
      	(ch_expand_asm_operands): Constify filename parameter.
      	(parse_multi_dimension_case_action): Constify local char *.
      	* satisfy.c (safe_satisfy_decl): Constify local char *.
      
      cp:
      	* cp-tree.h: Constify tree_srcloc.filename, tinst_level.file,
      	and pending_inline.filename.  Update prototypes.
      	* decl.c (define_label): Constify filename parameter.
      	* decl2.c (warn_if_unknown_interface): Constify local char *.
      	* input.c Constify input_source.filename. Don't declare
      	input_filename or lineno.  Constify filename parameter to feed_input.
      	* lex.c (init_parse): Constify parameter and return value.
      	(cp_pragma_interface, cp_pragma_implementation): Constify
      	filename argument.
      	(reinit_parse_for_method, reinit_parse_for_block,
      	reinit_parse_for_expr, feed_defarg, handle_cp_pragma):
      	Constify local char *.
      	* pt.c: Don't declare lineno or input_filename.
      	(print_template_context, tsubst_friend_function, tsubst_decl,
      	tsubst, instantiate_decl): Constify local char *.
      	* semantics.c (expand_body): Constify local char *.
      	* tree.c (build_srcloc): Constify filename parameter.
      	* typeck.c (c_expand_asm_operands): Constify filename
      	parameter.
      
      f:
      	* com.c (ffecom_subscript_check_): Constify array_name
      	parameter. Clean up string bashing.
      	(ffecom_arrayref_, ffecom_char_args_x_): Constify array_name
      	parameter.
      	(ffecom_do_entry_, ffecom_gen_sfuncdef_, ffecom_start_progunit_,
      	ffecom_sym_transform_, ffecom_sym_transform_assign_): Constify
      	local char *.
      	(init_parse): Constify parameter and return value.
      	* lex.c: Include dwarfout.h instead of prototyping dwarfout_*
      	functions here.
      	(ffelex_file_pop_, ffelex_file_push_): Constify filename parameter.
      	(ffelex_hash_, ffelex_include_): Constify local char *.
      	* std.c (ffestd_exec_end): Constify local char *.
      	* where.c (ffewhere_file_new): Constify filename parameter.
      	* where.h: Update prototypes.
      
      java:
      	* check_init.c (check_init): Constify local char *.
      	* class.c (push_class): Constify local char *.
      	* java_tree.h: Update prototypes.
      	* jcf-io.c (open_class): Constify filename parameter and
      	return value.
      	(find_class): Remove redundant string copy.  Cast return from
      	open_class.
      	* jcf-parse.c (read_class, parse_class_file, yyparse):
      	Constify local char *.
      	* jcf-write.c (generate_bytecode_insns, generate_classfile):
      	Constify local char *.
      	* jcf.h (JCF): Constify filename and classname.
      	(JCF_FINISH): Cast args to FREE to char * when appropriate.
      	* lang.c (init_parse): Constify parameter and return value.
      	* lex.c (java_get_line_col): Constify filename parameter.
      	* parse.h: Constify parser_ctxt.filename.  Update prototypes.
      	* parse.y (java_parser_context_suspend,
      	issue_warning_error_from_context, safe_layout_class): Constify
      	local char *.
      	* parse.c: Regenerate.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33804 138bc75d-0d04-0410-961f-82ee72b054a4
      e772a198
  34. 04 May, 2000 1 commit
  35. 01 May, 2000 1 commit
    • mmitchel's avatar
      * cp-tree.h (same_type_ignoring_top_level_qualifiers_p): New · 1361fb16
      mmitchel authored
      	macro.
      	* call.c (standard_conversion): Use it.
      	(direct_reference_binding): Likewise.
      	(build_over_call): Likewise.
      	(is_properly_derived_from): Likewise.
      	(compare_ics): Likewise.
      	* class.c (resolves_to_fixed_type_p): Likewise.
      	* optimize.c (declare_return_variable): Likewise.
      	* pt.c (is_specialization_of): Likewise.
      	(unify): Likewise.
      	* typeck.c (comp_target_parms): Likeiwse.
      	(build_static_cast): Likewise.
      	(build_reinterpret_cast): Likewise.
      	(build_const_cast): Likewise.
      	(comp_ptr_ttypes_real): Likewise.
      	(comp_ptr_ttypes_const): Likewise.
      	* typeck2.c (process_init_constructor): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33571 138bc75d-0d04-0410-961f-82ee72b054a4
      1361fb16
  36. 26 Apr, 2000 1 commit
    • mmitchel's avatar
      * cp-tree.h (TREE_READONLY_DECL_P): Use DECL_P. · 1202e392
      mmitchel authored
      	* init.c (decl_constant_value): Check TREE_READONLY_DECL_P.
      	* call.c (convert_like_real): Don't test TREE_READONLY_DECL_P
      	before calling decl_constant_value.
      	* class.c (check_bitfield_decl): Likewise.
      	* cvt.c (ocp_convert): Likewise.
      	(convert): Likewise.
      	* decl.c (compute_array_index_type): Likewise.
      	(build_enumerator): Likewise.
      	* decl2.c (check_cp_case_value): Likewise.
      	* pt.c (convert_nontype_argument): Likewise.
      	(tsubst): Likewise.
      	* typeck.c (decay_conversion): Likewise.
      	(build_compound_expr): Likewise.
      	(build_reinterpret_cast): Likewise.
      	(build_c_cast): Likewise.
      	(convert_for_assignment): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33446 138bc75d-0d04-0410-961f-82ee72b054a4
      1202e392