1. 05 Dec, 2001 1 commit
  2. 04 Dec, 2001 2 commits
    • re PR c/4787 (Different anonymous variables declared but only one allocated when… · db3acfa5
      re PR c/4787 (Different anonymous variables declared but only one allocated when the initialization is the same)
      
      	* c-common.def (COMPOUND_LITERAL_EXPR): New.
      	* c-common.c (c_expand_expr): Handle COMPOUND_LITERAL_EXPR.
      	(c_staticp): New function.
      	* c-common.h (COMPOUND_LITERAL_EXPR_DECL): New.
      	(c_staticp): Declare.
      	* c-typeck.c (default_function_array_conversion, build_unary_op):
      	Don't handle CONSTRUCTOR specially.
      	(lvalue_p, mark_addressable): Handle COMPOUND_LITERAL_EXPR.
      	* c-decl.c (build_compound_literal): New function.
      	* c-tree.h (build_compound_literal): Declare.
      	* c-parse.in (primary): Use build_compound_literal.
      	* c-lang.c (LANG_HOOKS_STATICP): Define.
      	* objc/objc-lang.c (LANG_HOOKS_STATICP): Likewise.
      	* doc/c-tree.texi: Document COMPOUND_LITERAL_EXPR.
      	* doc/extend.texi: Update documentation of compound literals.
      	Fixes PR c/4787.
      
      testsuite:
      	* gcc.c-torture/execute/20000722-1.x,
      	gcc.c-torture/execute/20010123-1.x: Remove.
      	* gcc.c-torture/compile/init-3.c: Don't use a compound literal.
      	* gcc.dg/c90-complit-1.c, gcc.dg/c99-complit-1.c,
      	gcc.dg/c99-complit-2.c: New tests.
      
      From-SVN: r47629
      Joseph Myers committed
    • c-decl.c (duplicate_decls): Revert rth's patch. · 23700f65
      * c-decl.c (duplicate_decls): Revert rth's patch.  If newdecl
      is in a different binding level, get its abstract origin to be
      olddecl.
      * tree-inline.c (expand_call_inline): Move DECL_INITIAL sanity
      check earlier.
      * tree.c (get_callee_fndecl): Follow DECL_ABSTRACT_ORIGIN if
      DECL_INITIAL is NULL.
      
      From-SVN: r47610
      Alexandre Oliva committed
  3. 03 Dec, 2001 1 commit
    • c-decl.c (grokdeclarator): Use ISO word. · c725bd79
      	* c-decl.c (grokdeclarator): Use ISO word.
      	* cppinit.c: Remove leading capital from diagnostic messages, as
      	per GNU coding standards.
      	* diagnostic.c: Similarly.
      	* emit-rtl.c: Similarly.
      	* final.c: Similarly.
      	* gcc.c: Similarly.
      	* tradcpp.c: Similarly.
      	* config/arm/arm.c: Similarly.
      	* config/arm/arm.h: Similarly.
      	* config/avr/avr.c: Similarly.
      	* config/avr/avr.h: Similarly.
      	* config/c4x/c4x.c: Similarly.
      	* config/cris/cris.c: Similarly.
      	* config/cris/cris.h: Similarly.
      	* config/d30v/d30v.c: Similarly.
      	* config/dsp16xx/dsp16xx.c: Similarly.
      	* config/dsp16xx/dsp16xx.h: Similarly.
      	* config/h8300/h8300.c: Similarly.
      	* config/i386/i386.c: Similarly.
      	* config/i386/xm-djgpp.h: Similarly.
      	* config/i960/i960.h: Similarly.
      	* config/m32r/m32r.c: Similarly.
      	* config/m68hc11/m68hc11.c: Similarly.
      	* config/m88k/m88k.c: Similarly.
      	* config/m88k/m88k.h: Similarly.
      	* config/mcore/mcore.c: Similarly.
      	* config/mcore/mcore.h: Similarly.
      	* config/mips/mips.c: Similarly.
      	* config/mmix/mmix.c: Similarly.
      	* config/pa/pa.c: Similarly.
      	* config/rs6000/rs6000.c: Similarly.
      	* config/rs6000/sysv4.h: Similarly.
      	* config/s390/s390.c: Similarly.
      	* config/sparc/sparc.c: Similarly.
      	* config/v850/v850-c.c: Similarly.
      	* config/v850/v850.c: Similarly.
      ch:
      	* actions.c: Remove leading capital from diagnostic messages, as
      	per GNU coding standards.
      	* decl.c: Similarly.
      	* expr.c: Similarly.
      	* inout.c: Similarly.
      	* lang.c: Similarly.
      	* loop.c: Similarly.
      	* nloop.c: Similarly.
      	* parse.c: Similarly.
      	* satisfy.c: Similarly.
      	* tasking.c: Similarly.
      	* tree.c: Similarly.
      	* typeck.c: Similarly.
      cp:
      	* typeck2.c: Remove leading capital from diagnostic messages, as
      	per GNU coding standards.
      f:
      	* com.c: Remove leading capital from diagnostic messages, as
      	per GNU coding standards.
      	* g77spec.c: Similarly.
      	* lex.c: Similarly.
      java:
      	* expr.c: Remove leading capital from diagnostic messages, as
      	per GNU coding standards.
      	* jcf-io.c: Similarly.
      	* jcf-parse.c: Similarly.
      	* jv-scan.c: Similarly.
      	* jvspec.c: Similarly.
      	* mangle.c: Similarly.
      
      From-SVN: r47558
      Neil Booth committed
  4. 02 Dec, 2001 2 commits
    • c-decl.c (duplicate_decls, [...]): Remove leading capital from diagnostics. · 1f978f5f
      	* c-decl.c (duplicate_decls, push_parm_decl): Remove leading
      	capital from diagnostics.
      	* c-lex.c (cb_file_change): Similarly.
      	* c-parse.in : Similarly.
      	* cfgrtl.c (verify_flow_info): Similarly.
      	* collect2.c: Similarly.
      	* cppfiles.c (find_include_file): Similarly.
      	* cppinit.c (cpp_handle_option): Similarly.
      	* cpplex.c (cpp_spell_token): Similarly.
      	* cppmain.c (do_preprocessing): Similarly.
      	* gcc.c (translate_options, process_command, do_spec1,
      	main, pfatal_execute): Similarly.
      	* genattr.c (main): Similarly.
      	* genattrtab.c (check_attr_test, operate_exp, simplify_test_exp,
      	write_test_expr, main): Similarly.
      	* gencodes.c (main): Similarly.
      	* genconfig.c (main): Similarly.
      	* genconstants.c (main): Similarly.
      	* genemit.c (main): Similarly.
      	* genextract.c (main): Similarly.
      	* genflags.c (main): Similarly.
      	* genopinit.c (main): Similarly.
      	* genoutput.c (process_template, main): Similarly.
      	* genpeep.c (main): Similarly.
      	* genrecog.c (main): Similarly.
      	* gensupport.c (is_predicable, identify_predicable_attribute,
      	alter_predicate_for_insn, init_md_reader_args, main): Similarly.
      	* ggc-page.c (alloc_anon): Similarly.
      	* mips-tfile.c (add_string, add_procedure, add_file, read_line,
      	parse_begin, parse_bend, parse_def, parse_end, parse_file,
      	parse_stabs_common, parse_stabs, write_varray, write_object,
      	read_seek, copy_object, main, error): Similarly.
      	* profile.c (compute_branch_probabilities): Similarly.
      	* reg-stack.c (check_asm_stack_operands): Similarly.
      	* reload.c (find_reloads): Similarly.
      	* reload1.c (spill_failure, failed_reload): Similarly.
      	* rtl-error.c (_fatal_insn_not_found): Similarly.
      	* toplev.c (read_integral_parameter, crash_signal,
      	decode_f_option, set_target_switch, parse_options_and_default_flags)
      	: Similarly.
      	* tradcif.y (parse_number, yylex): Similarly.
      	* tradcpp.c (main, fancy_abort): Similarly.
      	* tree.c (tree_check_failed): Similarly.
      	* varray.c (varray_check_failed): Similarly.
      	* xcoffout.c (xcoff_output_standard_types): Similarly.
      cp:
      	* call.c (build_java_interface_fn_ref): Similarly.
      	* except.c (is_admissible_throw_operand): Similarly.
      	* init.c (build_java_class_ref): Similarly.
      	* xref.c (open_xref_file): Similarly.
      objc:
      	* objc-act.c (get_object_ref, lookup_and_install_protocols,
      	build_objc_string_object, objc_declare_alias, build_ivar_chain,
      	finish_message_expr, build_protocol_expr, is_public,
      	start_class): Similarly.
      testsuite:
      	* objc.dg/alias.m: Update.
      	* objc.dg/class-1.m: Update.
      	* objc.dg/const-str-1.m: Update.
      	* objc.dg/fwd-proto-1.m: Update.
      	* objc.dg/id-1.m: Update.
      	* objc.dg/super-class-1.m: Update.
      
      From-SVN: r47518
      Neil Booth committed
  5. 01 Dec, 2001 1 commit
    • c-decl.c (duplicate_decls, [...]): Remove trailing period from diagnostics. · 357351e5
      	* c-decl.c (duplicate_decls, parmlist_tags_warning): Remove
      	trailing period from diagnostics.
      	* c-lex.c (cb_file_change): Similarly.
      	* cppmacro.c (check_trad_stringification): Similarly.
      	* gcc.c (do_spec_1): Similarly.
      	* genattr.c (main): Similarly.
      	* genattrtab.c (main, operate_exp, make_length_attrs): Similarly.
      	* gencodes.c (main): Similarly.
      	* genconfig.c (main): Similarly.
      	* genconstants.c (main): Similarly.
      	* genemit.c (main): Similarly.
      	* genextract.c (main): Similarly.
      	* genopinit.c (main): Similarly.
      	* genoutput.c (main): Similarly.
      	* genpeep.c (main): Similarly.
      	* genrecog.c (main): Similarly.
      	* mips-tfile.c (add_file, error): Similarly.
      	* profile.c (init_branch_prob): Similarly.
      	* reload1.c (spill_failure): Similarly.
      	* stmt.c (parse_output_constraint): Similarly.
      	* varasm.c (assemble_variable): Similarly.
      cp:
      	* class.c (finish_struct): Similarly.
      	* decl.c (check_tag_decl): Similarly.
      	* lex.c (cxx_set_yydebug): Similarly.
      	* typeck2.c (friendly_abort): Similarly.
      java:
      	* expr.c (expand_byte_code): Similarly.
      	* jcf-parse.c (load_class, jcf_parse): Similarly.
      	* jcf-write.c (generate_classfile): Similarly.
      	* lex.c (java_lex): Similarly.
      
      From-SVN: r47517
      Neil Booth committed
  6. 30 Nov, 2001 1 commit
  7. 23 Nov, 2001 1 commit
    • ChangeLog.0, [...]: Fix spelling errors. · a1f300c0
      	* ChangeLog.0, ChangeLog.2, ChangeLog.3, ChangeLog.4, ChangeLog,
      	FSFChangeLog.10, c-decl.c, cppfiles.c, cppinit.c, cpplex.c,
      	cpplib.c, cppmain.c, cse.c, df.c, diagnostic.c, dominance.c,
      	dwarf2out.c, dwarfout.c, emit-rtl.c, errors.c, except.c, except.h,
      	explow.c, function.c, gcse.c, genrecog.c, predict.c, regmove.c,
      	sched-rgn.c, ssa-ccp.c, stmt.c, toplev.c: Fix spelling errors.
      
      From-SVN: r47279
      Joseph Myers committed
  8. 21 Nov, 2001 1 commit
  9. 18 Nov, 2001 2 commits
    • c-decl.c (c_decode_option): Give deprecation warning for -traditional. · aa99bd09
      	* c-decl.c (c_decode_option): Give deprecation warning for
      	-traditional.
      	* doc/invoke.texi (-traditional): Note that this option is
      	deprecated.
      
      testsuite:
      	* gcc.dg/cpp/assert_trad1.c, gcc.dg/cpp/tr-paste.c,
      	gcc.dg/cpp/tr-str.c: Use -traditional-cpp instead of -traditional.
      	* gcc.dg/ext-glob.c: Expect -traditional deprecation warning.
      
      From-SVN: r47147
      Joseph Myers committed
    • c-common.c (struct disabled_builtin, [...]): New. · 7d14c755
      	* c-common.c (struct disabled_builtin, disabled_builtins,
      	disable_builtin_function, builtin_function_disabled_p): New.
      	(builtin_function_2): Check for disabled built-in functions.
      	* c-common.h (disable_builtin_function): Declare.
      	* c-decl.c (c_decode_option): Handle -fno-builtin-FUNCTION.
      	* doc/invoke.texi: Document -fno-builtin-FUNCTION.
      	* doc/extend.texi: Mention -fno-builtin-FUNCTION.
      
      testsuite:
      	* gcc.dg/no-builtin-1.c: New test.
      
      From-SVN: r47133
      Joseph Myers committed
  10. 15 Nov, 2001 1 commit
    • c-common.c: Include c-lex.h. · f5e99456
      	* c-common.c: Include c-lex.h.
      	(c_common_lang_init): Change prototype.  Call init_c_lex and
      	init_pragma from here.
      	* c-common.h (c_common_lang_init): Change prototype.
      	* c-decl.c (init_decl_processing): Rename.  Call c_parse_init.
      	* c-lang.c (c_init): Change prototype.  Update.
      	(c_init_options): Update.
      	* c-lex.c (cpp_filename): Remove.
      	(init_c_lex): Update.  Read the main file, and get the original
      	file name.
      	(yyparse): Finish the command line options.
      	* c-parse.in (c_parse_init): Call init_reswords here.
      	(init_parse): Remove.
      	* c-tree.h (c_init_decl_processing): New.
      	* cpphash.c (_cpp_init_hashtable): After initializing the hash
      	table, populate it.
      	* cppinit.c (read_original_filename, cpp_finish_options): New.
      	(cpp_create_reader): New prototype. Defer hash table initialization.
      	(cpp_start_read): Rename cpp_read_main_file.  Initialize the
      	hash table.  Get the original filename.
      	* cpplib.h (cpp_create_reader): Update.
      	(cpp_start_read): Remove.
      	(cpp_read_main_file, cpp_finish_options): New.
      	* cppmain.c (main, do_preprocessing): Update.
      	* langhooks.h (struct langhooks): Update init prototype.
      	* toplev.c (general_init, parse_options_and_default_flags,
      	process_options, lang_indpendent_init, lang_dependent_init,
      	init_asm_output): New; perform the bulk of initialization.
      	(compile_file): Move most of initialization to above functions.
      	(debug_hooks): Initialize statically.
      	(set_Wunused): Relocate.
      	(toplev_main): Move most of initialization to other init functions.
      	Have a clear logic flow.
      	* tree.h (init_parse, init_decl_processing): Remove.
      ada:
      	* misc.c (gnat_init): Change prototype.  Include the
      	functionality of the old init_parse and init_decl_processing.
      	(gnat_init_decl_processing): New prototype.
      	(init_parse): Remove.
      	* utils.c (init_decl_processing): Rename gnat_init_decl_processing.
      cp:	* cp-tree.h (init_reswords, cxx_init_decl_processing): New.
      	(cxx_init): Update prototype.
      	* decl.c (init_decl_processing): Rename.  Move null node init
      	to its creation time.
      	* lex.c (cxx_init_options): Update.
      	(cxx_init): Combine with old init_parse; also call
      	cxx_init_decl_processing.
      f:	* com.c (ffecom_init_decl_processing): Renamed from
      	init_decl_processing.
      	(init_parse): Move contents to ffe_init.
      	(ffe_init): Update prototype.
      java:	* decl.c (init_decl_processing): Rename java_init_decl_processing.
      	* java-tree.h: New prototype.
      	* lang.c (java_init): Update prototype.  Combine with old init_parse.
      objc:	* objc-act.c (objc_init): Update prototype, combine with old
      	init_parse.
      	(objc_init_options): Update.
      
      From-SVN: r47046
      Neil Booth committed
  11. 14 Nov, 2001 1 commit
    • cfglayout.c (fixup_fallthru_exit_predecesor): New static function. · 49778644
      	* cfglayout.c (fixup_fallthru_exit_predecesor): New static function.
      	(cfg_layout_finalize): Use it.
      	* bb-reorder.c (HAVE_epilogue): Remove.
      	(make_reorder_chain): Do not care special placement of
      	last basic block.
      
      	* predict.c (expected_value_to_br_prob): Delete the note
      	once transformed.
      
      	* c-decl.c (c_expand_body): Fix TV_EXPAND nesting problem;
      	measure integration time separately.
      
      From-SVN: r47019
      Jan Hubicka committed
  12. 12 Nov, 2001 1 commit
    • Makefile.in (c-lang.o): Depend on $(VARRAY_H). · 8b0e9a72
      * Makefile.in (c-lang.o): Depend on $(VARRAY_H).
      * c-decl.c (c_expand_body): Take argument can_defer_p.  Use it
      to decide whether to defer a function.
      (finish_function): Adjust.
      (c_expand_deferred_function): New function.
      * c-lang.c (deferred_fns): New variable.
      (c_init): Initialize it, and mark it as a root.
      (defer_fn): New function.
      (finish_file): Expand all deferred functions.
      * c-tree.h (defer_fn): Declare.
      (c_expand_deferred_function): Likewise.
      * objc/Make-lang.in (objc-act.o): Depend on $(VARRAY_H).
      * objc-act.c (deferred_fns): New variable.
      (objc_init): Initialize it, and mark it as a root.
      (defer_fn): New function.
      (finish_file): Expand all deferred functions.
      
      From-SVN: r46933
      Alexandre Oliva committed
  13. 09 Nov, 2001 1 commit
    • Makefile.in: Update. · 5d69f816
      	* Makefile.in: Update.
      	* c-decl.c (print_lang_decl, print_lang_type): Remove.
      	(print_lang_identifier): Rename c_print_identifier.
      	* c-lang.c (LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_SET_YYDEBUG): New.
      	(print_lang_statistics, lang_print_xnode): Remove.
      	* c-parse.in (set_yydebug): Rename c_set_yydebug.
      	* c-tree.h (c_set_yydebug, c_print_identifier): New.
      	* langhooks-def.h (lhd_print_tree_nothing, lhd_set_yydebug): New.
      	LANG_HOOKS_PRINT_STATISTICS, LANG_HOOKS_PRINT_XNODE,
      	LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE,
      	LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_SET_YYDEBUG): New.
      	(LANG_HOOKS_INITIALIZER): Update.
      	* langhooks.h (struct lang_hooks): New members.
      	(lang_print_tree_hook): New.
      	* langhooks.c (lhd_print_tree_nothing, lhd_set_yydebug): New.
      	* print-tree.c: Include langhooks.h.
      	(print_node): Update.
      	* toplev.c (decode_d_option): Update.
      	* tree.c: Include langhooks.h.
      	(dump_tree_statistics): Update.
      	* tree.h (print_lang_statistics, print_lang_decl, print_lang_type,
      	print_lang_identifier, set_yydebug, lang_print_xnode): Remove.
      ada:
      	* misc.c (gnat_print_decl, gnat_print_type): Renamed.
      	(LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
      	(print_lang_statistics, lang_print_xnode, print_lang_identifier,
      	set_yydebug): Remove.
      cp:
      	* cp-lang.c (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE,
      	LANG_HOOKS_PRINT_STATISTICS, LANG_HOOKS_PRINT_XNODE,
      	LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_SET_YYDEBUG): Override.
      	* cp-tree.h (print_class_statistics): Remove.
      	(cxx_print_statistics, cxx_print_xnode, cxx_print_decl, cxx_print_type,
      	cxx_print_identifier, cxx_set_yydebug): New.
      	* lex.c (set_yydebug): Rename c_set_yydebug.
      	* ptree.c (print_lang_decl, print_lang_type, print_lang_identifier,
      	lang_print_xnode): Rename.
      	* tree.c (print_lang_statistics): Rename.
      f:
      	* com.c (ffe_print_identifier): Rename.
      	(LANG_HOOKS_PRINT_IDENTIFIER): Override.
      	(lang_print_xnode, print_lang_decl, print_lang_statistics,
      	print_lang_type, set_yydebug): Remove.
      java:
      	* java-tree.h (java_set_yydebug): New.
      	* jcf-parse.c (set_yydebug): Rename java_set_yydebug.
      	* lang.c (LANG_HOOKS_SET_YYDEBUG): Override.
      	(print_lang_decl, print_lang_type, print_lang_identifier,
      	print_lang_statistics, lang_print_xnode): Remove.
      objc:
      	* objc-act.c (LANG_HOOKS_PRINT_IDENTIFIER,
      	LANG_HOOKS_SET_YYDEBUG): Override.
      	(lang_print_xnode, print_lang_statistics): Remove.
      
      From-SVN: r46907
      Neil Booth committed
  14. 07 Nov, 2001 1 commit
  15. 05 Nov, 2001 1 commit
  16. 03 Nov, 2001 1 commit
  17. 30 Oct, 2001 1 commit
    • Localization fixes. · 53fcdc76
      2001-10-30  Paolo Bonzini  <bonzini@gnu.org>
      
      	Localization fixes.
      	* c-decl.c (parmlist_tags_warning, start_struct,
      	check_for_loop_decls): Separate messages for struct, union and
      	enum cases to allow for languages in which they have different
      	genders.
      	* c-format.c (scanf_flag_specs): Separate short and long name of
      	the assignment suppression feature.
      	(check_format_types): Localize "pointer" and "different types"
      	strings.
      	* c-lex.c (lex_number): Localize "an unsigned long int" and
      	related strings.
      	(lex_string) [MULTIBYTE_CHARS]: Use initial lowercase letter on
      	warning message.
      	* c-typeck.c (build_unary_up): Separate messages for increment and
      	decrement cases to allow for languages in which they use different
      	articles.  Localize the strings "increment" and "decrement" in one
      	case.
      
      From-SVN: r46635
      Paolo Bonzini committed
  18. 29 Oct, 2001 1 commit
  19. 24 Oct, 2001 1 commit
  20. 23 Oct, 2001 1 commit
    • c-common.c (warn_div_by_zero): New. · 6c36d76b
      	* c-common.c (warn_div_by_zero): New.
      	* c-common.h (warn_div_by_zero): New.
      	* c-decl.c (c_decode_option): Take it on the command line.
       	* c-typeck.c (build_binary_op): Warn about division by zero.
      	* doc/invoke.texi: Document the new command line option, fix
      	documentation of -Wmultichar.
       	* testsuite/gcc.dg/divbyzero.c: New tests.
       	* testsuite/gcc.dg/noncompile/20010524-1.c: Update.
      
      From-SVN: r46439
      Neil Booth committed
  21. 20 Oct, 2001 1 commit
    • basic-block.h (find_sub_basic_blocks): Use sbitmap parameter. · b932f770
      	* basic-block.h (find_sub_basic_blocks): Use sbitmap parameter.
      	* cfgbuild.c (find_bb_boundaries, compute_outgoing_frequencies):
      	Break out from ...
      	(find_sub_basic_blocks): ... here;
      	(find_many_sub_basic_blocks): New.
      	* recog.c (split_all_insns): Update find_sub_basic_blocks call.
      
      	* i386.h (ASM_PREFERRED_EH_DATA_FORMAT): Define sdata4.
      
      	* i386.c (ix86_va_arg): Kill indirect_p handling; fix aliasing issues.:
      
      	* i386.c (split_di, split_ti): Revamp to use simplify_subreg.
      
      	* timevar.def (TV_LIFE, TV_LIFE_UPDATE, TV_MODE_SWITCH): new.
      	* flow.c (update_life_info): Measure time.
      	* c-decl.c: Include timevar.h
      	(c_expand_body): Measure time.
      	* toplev.c (rest_of_compilation): Measure time of mode switching
      	separately.
      	* Makefile.in (c-decl.o, cfgcleanup.o): Add dependancy.
      
      	* toplev.c (flag_asynchronous_unwind_tables): New global variable.
      	(lang_independent_options): Add asynchronous-unwind-tables
      	(toplev_main): flag_asynchronous_unwind_tables implies
      	flag_unwind_tables.
      	* flags.h (flag_asynchronous_unwind_tables): Declare.
      	* dwarf2out.c (dwarf2out_stack_adjust): Take into account
      	flag_asynchronous_unwind_tables.
      	(output_call_frame_info): Likewise.
      	* invoke.texi (-fasynchronous-unwind-tables): Document.
      	* i386.c (optimization_options): Enable
      	flag_asynchronous_unwind_tables.
      
      	* i386.c (ix86_expand_setcc):  Always expect target to be QImode.
      	* i386.md (s* expanders): Destination is QImode.
      
      	* toplev.c (rest_of_compilation): Do not call clear_log_links.
      	* rtl.h (clear_log_links): Kill.
      	* flow.c (clear_log_links): Make static; accept blocks parameter;
      	do no clear life info.
      	(update_life_info): Call clear_log_links.
      
      	* cfganal.c (forwarder_block_p): Avoid active_insn_p calls.
      
      From-SVN: r46374
      Jan Hubicka committed
  22. 18 Oct, 2001 1 commit
    • attribs.c (handle_noinline_attribute): New function. · 9162542e
      * attribs.c (handle_noinline_attribute): New function.
      (handle_used_attribute): Likewise.
      (c_common_attribute_table): Added noinline and used.
      * doc/extend.texi (Function Attributes): Document them.
      * c-decl.c (duplicate_decls): Propagate DECL_UNINLINABLE.
      Warn when merging inline with attribute noinline.
      (start_decl, start_function): Warn if inline and attribute
      noinline appear in the same declaration.
      
      From-SVN: r46334
      Alexandre Oliva committed
  23. 11 Oct, 2001 1 commit
    • alias.c: Remove uses of "register" specifier in declarations of arguments and local... · b3694847
      2001-10-10  Stan Shebs  <shebs@apple.com>
      
              * alias.c: Remove uses of "register" specifier in declarations
              of arguments and local variables.
              * c-common.c: Ditto.
              * c-convert.c: Ditto.
              * c-decl.c: Ditto.
              * c-format.c: Ditto.
              * c-semantics.c: Ditto.
              * c-typeck.c: Ditto.
              * caller-save.c: Ditto.
              * calls.c: Ditto.
              * cfg.c: Ditto.
              * cfgbuild.c: Ditto.
              * cfgrtl.c: Ditto.
              * collect2.c: Ditto.
              * combine.c: Ditto.
              * convert.c: Ditto.
              * cppexp.c: Ditto.
              * cppfiles.c: Ditto.
              * cse.c: Ditto.
              * dbxout.c: Ditto.
              * defaults.h: Ditto.
              * df.c: Ditto.
              * dwarf2out.c: Ditto.
              * dwarfout.c: Ditto.
              * emit-rtl.c: Ditto.
              * explow.c: Ditto.
              * expmed.c: Ditto.
              * expr.c: Ditto.
              * final.c: Ditto.
              * fix-header.c: Ditto.
              * floatlib.c: Ditto.
              * flow.c: Ditto.
              * fold-const.c: Ditto.
              * function.c: Ditto.
              * gcc.c: Ditto.
              * gcse.c: Ditto.
              * gen-protos.c: Ditto.
              * genattrtab.c: Ditto.
              * gencheck.c: Ditto.
              * genconfig.c: Ditto.
              * genemit.c: Ditto.
              * genextract.c: Ditto.
              * genflags.c: Ditto.
              * gengenrtl.c: Ditto.
              * genoutput.c: Ditto.
              * genpeep.c: Ditto.
              * genrecog.c: Ditto.
              * gensupport.c: Ditto.
              * global.c: Ditto.
              * gmon.c: Ditto.
              * graph.c: Ditto.
              * haifa-sched.c: Ditto.
              * hard-reg-set.h: Ditto.
              * hash.c: Ditto.
              * integrate.c: Ditto.
              * jump.c: Ditto.
              * lists.c: Ditto.
              * local-alloc.c: Ditto.
              * loop.c: Ditto.
              * mips-tdump.c: Ditto.
              * mips-tfile.c: Ditto.
              * optabs.c: Ditto.
              * prefix.c: Ditto.
              * print-rtl.c: Ditto.
              * read-rtl.c: Ditto.
              * real.c: Ditto.
              * recog.c: Ditto.
              * reg-stack.c: Ditto.
              * regclass.c: Ditto.
              * regmove.c: Ditto.
              * reload.c: Ditto.
              * reload1.c: Ditto.
              * reorg.c: Ditto.
              * resource.c: Ditto.
              * rtl.c: Ditto.
              * rtlanal.c: Ditto.
              * scan.c: Ditto.
              * sched-deps.c: Ditto.
              * sched-rgn.c: Ditto.
              * sdbout.c: Ditto.
              * simplify-rtx.c: Ditto.
              * stmt.c: Ditto.
              * stor-layout.c: Ditto.
              * toplev.c: Ditto.
              * tradcif.y: Ditto.
              * tradcpp.c: Ditto.
              * tree.c: Ditto.
              * unroll.c: Ditto.
              * varasm.c: Ditto.
              * xcoffout.c: Ditto.
      
      From-SVN: r46173
      Stan Shebs committed
  24. 10 Oct, 2001 1 commit
    • calls.c: Fix formatting. · 6d2f8887
      	* calls.c: Fix formatting.
      	* c-decl.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* combine.c: Likewise.
      	* cppfiles.c: Likewise.
      	* cpplib.c: Likewise.
      	* cppmacro.c: Likewise.
      	* crtstuff.c: Likewise.
      	* cse.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* expmed.c: Likewise.
      	* expr.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* gcse.c: Likewise.
      	* genattrtab.c: Likewise.
      	* ggc-page.c: Likewise.
      	* integrate.c: Likewise.
      	* libgcc2.c: Likewise.
      	* loop.c: Likewise.
      	* optabs.c: Likewise.
      	* profile.c: Likewise.
      	* protoize.c: Likewise.
      	* real.c: Likewise.
      	* recog.c: Likewise.
      	* reload1.c: Likewise.
      	* reload.c: Likewise.
      	* reorg.c: Likewise.
      	* resource.c: Likewise.
      	* sched-rgn.c: Likewise.
      	* sdbout.c: Likewise.
      	* stmt.c: Likewise.
      	* toplev.c: Likewise.
      	* varasm.c: Likewise.
      
      From-SVN: r46145
      Kazu Hirata committed
  25. 08 Oct, 2001 2 commits
    • c-decl.c (grokfield): Make sure the only unnamed fields we're allowing are… · 3e96a2fd
      c-decl.c (grokfield): Make sure the only unnamed fields we're allowing are either structs or unions.
      
      * c-decl.c (grokfield): Make sure the only unnamed fields
      we're allowing are either structs or unions.
      * doc/extend.texi: Add documentation for the unnamed field
      extension.
      
      From-SVN: r46088
      DJ Delorie committed
    • c-common.h (struct c_lang_decl): Add declared_inline. · 31ed8fea
              * c-common.h (struct c_lang_decl): Add declared_inline.
              * c-tree.h (DECL_DECLARED_INLINE_P): New.
              * c-lang.c (c_disregard_inline_limits): Use it.
              * c-decl.c (duplicate_decls): Likewise.
              (pushdecl, redeclaration_error_message): Likewise.
              (pushdecl): Allocate DECL_LANG_SPECIFIC if needed.
              (grokdeclarator): Likewise.  Set DECL_DECLARED_INLINE_P.
              Set DECL_INLINE if -finline-functions.
              (store_parm_decls): Don't allocate DECL_LANG_SPECIFIC here.
      
              * cp-tree.h (struct lang_decl_flags): Remove declared_inline.
              (DECL_DECLARED_INLINE_P): Use the bit in struct c_lang_decl.
      
      From-SVN: r46079
      Richard Henderson committed
  26. 07 Oct, 2001 1 commit
    • acinclude.m4: Fix spelling error of "separate" as "seperate". · cc712abf
      config:
      	* acinclude.m4: Fix spelling error of "separate" as "seperate".
      
      gcc:
      	* ChangeLog.2, c-decl.c, config/i386/i386.md, doc/gcc.texi, gcc.c,
      	genmultilib, toplev.c: Fix spelling errors of "separate" as
      	"seperate", and corresponding spelling errors of related words.
      
      gcc/ada:
      	* 5oosinte.adb: Fix spelling error of "separate" as "seperate".
      
      gcc/testsuite:
      	* gcc.c-torture/unsorted/unsorted.exp, lib/file-format.exp: Fix
      	spelling errors of "separate" as "seperate".
      
      libffi:
      	* src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
      
      libjava:
      	* defineclass.cc, java/awt/image/ColorModel.java,
      	java/awt/image/SampleModel.java, java/lang/Package.java,
      	java/security/cert/X509Extension.java: Fix spelling errors of
      	"separate" as "seperate", and corresponding spelling errors of
      	related words.
      
      libstdc++-v3:
      	* docs/html/22_locale/locale.html, docs/html/faq/index.html: Fix
      	spelling errors of "separate" as "seperate", and corresponding
      	spelling errors of related words.
      	* docs/html/faq/index.txt: Regenerate.
      
      From-SVN: r46063
      Joseph Myers committed
  27. 05 Oct, 2001 1 commit
    • Makefile.in (c-decl.o): Depend on tree-inline.h. · 4838c5ee
      * Makefile.in (c-decl.o): Depend on tree-inline.h.
      (c-lang.o): Likewise, as well as insn-config.h and integrate.h.
      * c-decl.c: Include tree-inline.h.
      (c_expand_body): Call optimize_inline_calls. Determine whether
      a function is inlinable upfront, and only clear
      DECL_SAVED_TREE, DECL_INITIAL and DECL_ARGUMENTS if it isn't.
      * c-lang.c: Include tree-inline.h, insn-config.h and integrate.h.
      (c_disregard_inline_limits): New function.
      (inline_forbidden_p, c_cannot_inline_tree_fn): Likewise.
      (c_post_options): Enable tree inlining if inlining is enabled.
      Don't inline trees when instrumenting functions.
      (c_init): Initialize lang_disregard_inline_limits and
      lang_cannot_inline_tree_fn.
      * tree-inline.c (initialize_inlined_parameters): Handle calls
      with fewer arguments than declared parameters, and fewer
      parameters than passed arguments.  Don't assume value is a
      DECL.
      (declare_return_variable): Convert return value back to the
      original type, if it was promoted.
      (tree_inlinable_function_p): New function.
      (inlinable_function_p): Don't look at DECL_INLINE if we're
      inlining all functions.  Make it work with a NULL id.
      Re-check DECL_UNINLINABLE after language-specific checks.
      (varargs_function_p): Move back to cp/tree.c.
      * tree-inline.h (tree_inlinable_function_p): Declare it.
      (varargs_function_p): Removed declaration.
      * integrate.h (function_attribute_inlinable_p): Declare it.
      * integrate.c (function_attribute_inlinable_p): Export it.
      (save_for_inline): Don't bother to prepare argvec when not
      inlining.
      * cse.c (check_for_label_ref): Don't check deleted labels.
      
      From-SVN: r46025
      Alexandre Oliva committed
  28. 02 Oct, 2001 2 commits
    • c-common.c (c_format_attribute_table): Make format and format_arg attributes… · 80a497e4
      c-common.c (c_format_attribute_table): Make format and format_arg attributes apply to function types rather than to decls.
      
      	* c-common.c (c_format_attribute_table): Make format and
      	format_arg attributes apply to function types rather than to
      	decls.
      	(is_valid_printf_arglist): Construct an attribute list and pass
      	that to check_function_format rather than a name.
      	* c-common.h (check_function_format): Adjust prototype.
      	* c-decl.c (duplicate_decls): Preserve attributes from type of
      	built-in decl when allowing for harmless conflict in types.
      	* c-format.c (record_function_format,
      	record_international_format, function_format_list,
      	international_format_info, international_format_list): Remove.
      	(function_format_info): Remove next, name and assembler_name.
      	Make format_num and first_arg_num be unsigned HOST_WIDE_INT.
      	(decode_format_attr): New.
      	(handle_format_attribute): Handle receiving a type rather than a
      	decl.  Call decode_format_attr.  Store format information in a
      	function_format_info.
      	(handle_format_arg_attribute): Correct comment.  Handle receiving
      	a type rather than a decl.  Use unsigned HOST_WIDE_INT for
      	arg_num.
      	(check_format_info_recurse, check_format_info_main): Take argument
      	numbers as unsigned HOST_WIDE_INT.
      	(check_function_format): Take a list of attributes from the
      	function type rather than a name or assembler name.  Check for
      	format attributes in that list and the attributes on the type of
      	the current function rather than looking through
      	function_format_list.
      	(check_format_info): Use unsigned HOST_WIDE_INT for argument
      	numbers.
      	(check_format_info_recurse): Take format_arg attributes from the
      	type of the function calls rather than using
      	international_format_list.  Allow for multiple format_arg
      	attributes.
      	* c-typeck.c (build_function_call): Pass type attributes to
      	check_function_format rather than name or assembler name.  Don't
      	require there to be a name or assembler name to check formats.
      
      cp:
      	* call.c (build_over_call), typeck.c (build_function_call_real):
      	Pass type attributes to check_function_format rather than name or
      	assembler name.  Don't require there to be a name or assembler
      	name to check formats.
      
      testsuite:
      	* g++.dg/warn/format2.C, gcc.dg/format/attr-7.c,
      	gcc.dg/format/multattr-1.c, gcc.dg/format/multattr-2.c,
      	gcc.dg/format/multattr-3.c: New tests.
      	* gcc.dg/format/attr-3.c: Update expected error texts.  Remove
      	tests for format attributes on function pointers being rejected.
      
      From-SVN: r45945
      Joseph Myers committed
    • attribs.c (decl_attributes): Possibly call insert_default_attributes to insert… · 6431177a
      attribs.c (decl_attributes): Possibly call insert_default_attributes to insert default attributes on...
      
      	* attribs.c (decl_attributes): Possibly call
      	insert_default_attributes to insert default attributes on
      	functions in a lazy manner.
      	* builtin-attrs.def: New file; define the default format and
      	format_arg attributes.
      	* c-common.c (c_format_attribute_table): Move to earlier in the
      	file.
      	(c_common_nodes_and_builtins): Initialize format_attribute_table.
      	(enum built_in_attribute, built_in_attributes,
      	c_attrs_initialized, c_init_attributes,
      	c_common_insert_default_attributes): New.
      	(c_common_lang_init): Don't initialize format_attribute_table.  Do
      	call c_init_attributes.
      	* Makefile.in (c-common.o): Depend on builtin-attrs.def.
      	* c-common.h (init_function_format_info): Don't declare.
      	(c_common_insert_default_attributes): Declare.
      	* c-decl.c (implicitly_declare, builtin_function): Call
      	decl_attributes.
      	(init_decl_processing): Don't call init_function_format_info.
      	(insert_default_attributes): New.
      	* c-format.c (handle_format_attribute,
      	handle_format_arg_attribute): Be quiet about inappropriate
      	declaration when applying default attributes.
      	(init_function_format_info): Remove.
      	* tree.h (enum attribute_flags): Add ATTR_FLAG_BUILT_IN.
      	(insert_default_attributes): Declare.
      
      cp:
      	* decl.c (init_decl_processing): Don't call
      	init_function_format_info.  Initialize lang_attribute_table
      	earlier.
      	(builtin_function): Call decl_attributes.
      	(insert_default_attributes): New.
      
      testsuite:
      	* gcc.dg/format/attr-5.c, gcc.dg/format/attr-6.c: New tests.
      
      From-SVN: r45942
      Joseph Myers committed
  29. 21 Sep, 2001 1 commit
    • Table-driven attributes. · 91d231cb
      	* c-decl.c, config/alpha/alpha.c, config/arc/arc.c,
      	config/arm/arm.c, config/arm/pe.c, config/avr/avr.c,
      	config/avr/avr.h, config/d30v/d30v.h, config/fr30/fr30.h,
      	config/h8300/h8300.c, config/i386/cygwin.h, config/i386/winnt.c,
      	config/m32r/m32r.c, config/mcore/mcore.c, config/sh/sh.c,
      	config/stormy16/stormy16.h, config/v850/v850.c, doc/c-tree.texi,
      	doc/tm.texi, ggc-common.c, integrate.c, print-tree.c, tree.c,
      	tree.h: Rename DECL_MACHINE_ATTRIBUTES to DECL_ATTRIBUTES.
      	* tree.h (struct tree_decl): Change machine_attributes to
      	attributes.
      	* doc/c-tree.texi: Document that all attributes are now attached
      	to decls and types.
      	* c-common.c (add_attribute, attrtab, attrtab_idx,
      	default_valid_lang_attribute, valid_lang_attribute): Remove.
      	(attribute_tables, attributes_initialized,
      	c_common_attribute_table, default_lang_attribute_table): New
      	variables.
      	(handle_packed_attribute, handle_nocommon_attribute,
      	handle_common_attribute, handle_noreturn_attribute,
      	handle_unused_attribute, handle_const_attribute,
      	handle_transparent_union_attribute, handle_constructor_attribute,
      	handle_destructor_attribute, handle_mode_attribute,
      	handle_section_attribute, handle_aligned_attribute,
      	handle_weak_attribute, handle_alias_attribute,
      	handle_no_instrument_function_attribute,
      	handle_no_check_memory_usage_attribute, handle_malloc_attribute,
      	handle_no_limit_stack_attribute, handle_pure_attribute): New
      	functions.
      	(init_attributes, decl_attributes): Rewrite to implement
      	table-driven attributes.
      	* c-common.h (enum attribute_flags): Move to tree.h.
      	* c-format.c (decl_handle_format_attribute,
      	decl_handle_format_arg_attribute): Rename to
      	handle_format_attribute and handle_format_arg_attribute.  Update
      	for table-driven attributes.
      	* c-common.h (decl_handle_format_attribute,
      	decl_handle_format_arg_attribute): Remove prototypes.
      	(handle_format_attribute, handle_format_arg_attribute): Add
      	prototypes.
      	* c-decl.c (grokdeclarator): Handle attributes nested inside
      	declarators.
      	* c-parse.in (setattrs, maybe_setattrs): Remove.
      	(maybe_type_quals_setattrs): Rename to maybe_type_quals_attrs.
      	Update to handle nested attributes properly.
      	(maybe_resetattrs, after_type_declarator,
      	parm_declarator_nostarttypename, notype_declarator, absdcl1_noea,
      	absdcl1_ea, direct_absdcl1): Update to handle nested attributes
      	properly.
      	(make_pointer_declarator): Update to handle nested attributes
      	properly.
      	* doc/extend.texi: Update documentation of limits of attributes
      	syntax.  Warn about problems with attribute semantics in C++.
      	* target.h (struct target): Remove valid_decl_attribute and
      	valid_type_attribute.  Add attribute_table and
      	function_attribute_inlinable_p.
      	* target-def.h (TARGET_VALID_DECL_ATTRIBUTE,
      	TARGET_VALID_TYPE_ATTRIBUTE): Remove.
      	(TARGET_ATTRIBUTE_TABLE, TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P):
      	Add.
      	(TARGET_INITIALIZER): Update.
      	* integrate.c (FUNCTION_ATTRIBUTE_INLINABLE_P): Remove default
      	definition.
      	(function_attribute_inlinable_p): New function.  Check for the
      	presence of any machine attributes before using
      	targetm.function_attribute_inlinable_p.
      	(function_cannot_inline_p): Update.
      	* Makefile.in (integrate.o): Update dependencies.
      	* doc/tm.texi: Update documentation of target attributes and
      	example definition of TARGET_VALID_TYPE_ATTRIBUTE.
      	* tree.c (default_valid_attribute_p, valid_machine_attribute):
      	Remove.
      	(default_target_attribute_table,
      	default_function_attribute_inlinable_p): New.
      	(lookup_attribute): Update comment to clarify handling of multiple
      	attributes with the same name.
      	(merge_attributes, attribute_list_contained): Allow multiple
      	attributes with the same name but different arguments to appear in
      	the same attribute list.
      	* tree.h (default_valid_attribute_p): Remove prototype.
      	(struct attribute_spec): New.
      	(default_target_attribute_table): Declare.
      	(enum attribute_flags): Move from c-common.h.  Add
      	ATTR_FLAG_TYPE_IN_PLACE.
      	(default_function_attribute_inlinable_p): Declare.
      	* config/alpha/alpha.c (vms_valid_decl_attribute_p): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(vms_attribute_table): New.
      	* config/arc/arc.c (arc_valid_decl_attribute): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(arc_attribute_table, arc_handle_interrupt_attribute): New.
      	* config/arm/arm.c (arm_valid_type_attribute_p,
      	arm_valid_decl_attribute_p, arm_pe_valid_decl_attribute_p):
      	Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE, TARGET_VALID_DECL_ATTRIBUTE): Don't
      	define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(arm_attribute_table, arm_handle_fndecl_attribute,
      	arm_handle_isr_attribute): New.
      	* config/avr/avr.c (avr_valid_type_attribute,
      	avr_valid_decl_attribute): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE, TARGET_VALID_TYPE_ATTRIBUTE): Don't
      	define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(avr_attribute_table, avr_handle_progmem_attribute,
      	avr_handle_fndecl_attribute): New.
      	* config/c4x/c4x.c (c4x_valid_type_attribute_p): Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(c4x_attribute_table, c4x_handle_fntype_attribute): New.
      	* config/h8300/h8300.c (h8300_valid_decl_attribute): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(h8300_attribute_table, h8300_handle_fndecl_attribute,
      	h8300_handle_eightbit_data_attribute,
      	h8300_handle_tiny_data_attribute): New.
      	* config/i386/i386-protos.h (ix86_valid_type_attribute_p,
      	i386_pe_valid_decl_attribute_p, i386_pe_valid_type_attribute_p):
      	Remove prototypes.
      	(ix86_handle_dll_attribute, ix86_handle_shared_attribute): New
      	declarations.
      	* config/i386/i386.c (ix86_valid_type_attribute_p: Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE, TARGET_VALID_DECL_ATTRIBUTE): Don't
      	define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(ix86_attribute_table, ix86_handle_cdecl_attribute,
      	ix86_handle_regparm_attribute): New.
      	* config/i386/winnt.c (i386_pe_valid_decl_attribute_p,
      	i386_pe_valid_type_attribute_p): Remove.
      	(ix86_handle_dll_attribute, ix86_handle_shared_attribute): New.
      	* config/ia64/ia64.c (ia64_valid_type_attribute): Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(ia64_attribute_table): New.
      	* config/m32r/m32r.c (m32r_valid_decl_attribute, interrupt_ident1,
      	interrupt_ident2, model_ident1, model_ident2): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(init_idents): Update.
      	(m32r_attribute_table, m32r_handle_model_attribute): New.
      	* config/m68hc11/m68hc11.c (m68hc11_valid_type_attribute_p):
      	Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(m68hc11_attribute_table, m68hc11_handle_fntype_attribute): New.
      	* config/mcore/mcore.c (mcore_valid_decl_attribute): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(mcore_attribute_table, mcore_handle_naked_attribute): New.
      	* config/ns32k/ns32k.c (ns32k_valid_type_attribute_p): Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(ns32k_attribute_table, ns32k_handle_fntype_attribute): New.
      	* config/rs6000/rs6000.c (rs6000_valid_type_attribute_p): Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(rs6000_attribute_table, rs6000_handle_longcall_attribute): New.
      	* config/sh/sh.c (sh_valid_decl_attribute): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(sh_attribute_table, sh_handle_interrupt_handler_attribute,
      	sh_handle_sp_switch_attribute, sh_handle_trap_exit_attribute):
      	New.
      	* config/stormy16/stormy16.c (stormy16_valid_type_attribute):
      	Remove.
      	(TARGET_VALID_TYPE_ATTRIBUTE): Don't define
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(stormy16_attribute_table, stormy16_handle_interrupt_attribute):
      	New.
      	* config/v850/v850.c (v850_valid_decl_attribute): Remove.
      	(TARGET_VALID_DECL_ATTRIBUTE): Don't define.
      	(TARGET_ATTRIBUTE_TABLE): Define.
      	(v850_attribute_table, v850_handle_interrupt_attribute,
      	v850_handle_data_area_attribute): New.
      	* config/v850/v850-c.c (mark_current_function_as_interrupt):
      	Return void.  Call decl_attributes instead of
      	valid_machine_attribute.
      
      cp:
      	Table-driven attributes.
      	* decl.c: Rename DECL_MACHINE_ATTRIBUTES to DECL_ATTRIBUTES.
      	* decl2.c (cplus_decl_attributes): Only take one attributes
      	parameter.
      	* cp-tree.c (cplus_decl_attributes): Update prototype.
      	* class.c (finish_struct), decl.c (start_decl, start_function),
      	decl2.c (grokfield), friend.c (do_friend), parse.y
      	(parse_bitfield): Update calls to cplus_decl_attributes.
      	* decl.c (grokdeclarator): Take a pointer to a single ordinary
      	attribute list.
      	* decl.h (grokdeclarator): Update prototype.
      	* decl2.c (grokfield): Take a single ordinary attribute list.
      	* friend.c (do_friend): Likewise.
      	* decl.c (shadow_tag, groktypename, start_decl,
      	start_handler_parms, grokdeclarator, grokparms, start_function,
      	start_method), decl2.c (grokfield, grokbitfield, grokoptypename),
      	parse.y (parse_field, parse_bitfield, component_decl_1), pt.c
      	(process_template_parm, do_decl_instantiation): Pass single
      	ordinary attribute lists around.
      	* decl.c (grokdeclarator): Correct handling of nested attributes.
      	Revert the patch
      	1998-10-18  Jason Merrill  <jason@yorick.cygnus.com>
      		* decl.c (grokdeclarator): Embedded attrs bind to the right,
      		not the left.
      	.
      	* cp-tree.h (cp_valid_lang_attribute): Remove declaration
      	(cp_attribute_table): Declare.
      	* decl.c (valid_lang_attribute): Don't define.
      	(lang_attribute_table): Define.
      	(init_decl_processing): Initialize lang_attribute_table instead of
      	valid_lang_attribute.
      	* tree.c (cp_valid_lang_attribute): Remove.
      	(handle_java_interface_attribute, handle_com_interface_attribute,
      	handle_init_priority_attribute): New functions.
      	(cp_attribute_table): New array.
      	* decl2.c (import_export_class): Don't use
      	targetm.valid_type_attribute.
      
      testsuite:
      	Table-driven attributes.
      	* g++.dg/ext/attrib1.C: New test.
      
      From-SVN: r45718
      Joseph Myers committed
  30. 12 Sep, 2001 1 commit
    • c-common.c (c_tree_code_name): Const-ification. · 27c38fbe
      	* c-common.c (c_tree_code_name): Const-ification.
      	* c-decl.c (c_decode_option): Likewise.
      	* c-typeck.c (warn_for_assignment): Likewise.
      	* collect2.c (libexts, is_ctor_dtor, main, ignore_library):
      	Likewise.
      	* cppinit.c (output_deps): Likewise.
      	* dependence.c (dependence_string, direction_string): Likewise.
      	* dwarf2out.c (output_ranges): Likewise.
      	* fixinc/fixfixes.c (emit_gnu_type): Likewise.
      	* fixinc/gnu-regex.c (re_error_msgid): Likewise.
      	* gcc.c (standard_exec_prefix, standard_exec_prefix_1,
      	standard_startfile_prefix, standard_startfile_prefix_1,
      	standard_startfile_prefix_2, tooldir_base_prefix,
      	standard_bindir_prefix, find_a_file): Likewise.
      	* genattrtab.c (make_length_attrs): Likewise.
      	* gencheck.c (tree_codes): Likewise.
      	* genemit.c (gen_split): Likewise.
      	* genrecog.c (special_mode_pred_table): Likewise.
      	* graph.c (graph_ext): Likewise.
      	* protoize (default_include): Likewise.
      	* reload.c (reload_when_needed_name): Likewise.
      	* sched-vis.c (visualize_stall_cycles): Likewise.
      	* tlink.c (recompile_files): Likewise.
      	* toplev.c (decode_g_option): Likewise.
      	* tradcpp.c (output_deps): Likewise.
      	* varasm.c (decode_reg_name): Likewise.
      
      	* arm.c (arm_condition_codes, strings_fpa, thumb_condition_code):
      	Const-ification.
      	* arm.md: Likewise.
      	* avr.c (avr_regnames, encode_section_info): Likewise.
      	* c4x.c (float_reg_names): Likewise.
      	* darwin.h (ASM_GLOBALIZE_LABEL): Likewise.
      	* elfos.h (const_section): Likewise.
      	* i386.c (ix86_comp_type_attributes): Likewise.
      	* i386/win32.h (STRIP_NAME_ENCODING): Likewise.
      	* ia64/aix.h (UNIQUE_SECTION): Likewise.
      	* ia64.c (type_names): Likewise.
      	* m68hc11.c (reg_class_names): Likewise.
      	* m88k.c (m_options): Likewise.
      	* mips.c (mips_output_conditional_branch, mips_unique_section):
      	Likewise.
      	* rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
      	* sparc.c (sparc_flat_function_prologue, sparc_flat_function_epilogue,
      	ultra_code_names): Likewise.
      	* sparc.h (OVERRIDE_OPTIONS): Likewise.
      
      From-SVN: r45567
      Kaveh R. Ghazi committed
  31. 31 Aug, 2001 1 commit
  32. 22 Aug, 2001 1 commit
    • Makefile.in, [...]: replace "GNU CC" with "GCC". · 1322177d
      	* Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c,
      	bitmap.h, builtin-types.def, builtins.c, builtins.def,
      	c-aux-info.c, c-common.c, c-common.def, c-common.h,
      	c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c,
      	c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in,
      	c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c,
      	caller-save.c, calls.c, collect2.c, collect2.h, combine.c,
      	conditions.h, config.gcc, configure.frag, configure.in,
      	conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c,
      	cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h,
      	dependence.c, df.c, df.h, diagnostic.c, diagnostic.h,
      	doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c,
      	dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c,
      	emit-rtl.c, errors.c, errors.h, except.c, except.h,
      	exgettext, explow.c, expmed.c, expr.c, expr.h, final.c,
      	fixproto, flags.h, flow.c, fold-const.c, fp-test.c,
      	function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp,
      	gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c,
      	gencheck.c, gencodes.c, genconfig.c, genemit.c,
      	genextract.c, genflags.c, gengenrtl.c, genmultilib,
      	genopinit.c, genoutput.c, genpeep.c, genrecog.c,
      	gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c,
      	ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c,
      	graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h,
      	gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h,
      	gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h,
      	hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h,
      	integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c,
      	libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h,
      	machmode.def, machmode.h, main.c, mbchar.c, mbchar.h,
      	mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk,
      	mkmap-symver.awk, optabs.c, output.h, params.c, params.def,
      	params.h, predict.c, predict.def, predict.h, prefix.c,
      	prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c,
      	read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c,
      	regclass.c, regmove.c, regrename.c, regs.h, reload.c,
      	reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c,
      	rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h,
      	sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c,
      	sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c,
      	ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c,
      	stringpool.c, system.h, timevar.c, timevar.def, timevar.h,
      	tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h,
      	tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h,
      	unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h,
      	unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c,
      	xcoffout.h: replace "GNU CC" with "GCC".
      
      From-SVN: r45105
      Lars Brinkhoff committed
  33. 09 Aug, 2001 1 commit
  34. 07 Aug, 2001 1 commit
    • varasm.c (assemble_constructor): Take a symbol_ref and a priority instead of a bare string. · 47907859
              * varasm.c (assemble_constructor): Take a symbol_ref and a
              priority instead of a bare string.  Move priority handling
              here from cp/decl2.c.
              * output.h: Update decls.
      
              * c-decl.c (c_expand_body): Update calls to assemble_constructor
              and assemble_destructor.
              * profile.c (output_func_start_profiler): Likewise.
              * objc/objc-act.c (finish_objc): Likewise.
              (build_module_descriptor): Return the symbol not the symbol name.
      
              * ch/grant.c (chill_finish_compile): Pass a symbol_ref and priority
              to assemble_constructor.
      
              * cp/decl2.c (finish_objects): Pass a symbol_ref and priority to
              assemble_{constructor,destructor}.  Remove priority handling.
      
              * java/class.c (emit_register_classes): Pass a symbol_ref and priority
              to assemble_constructor.
      
      From-SVN: r44678
      Richard Henderson committed
  35. 01 Aug, 2001 1 commit
    • alias.c: Fix comment formatting. · ec5c56db
      	* alias.c: Fix comment formatting.
      	* bitmap.c: Likewise.
      	* builtins.c: Likewise.
      	* calls.c: Likewise.
      	* c-common.c: Likewise.
      	* c-decl.c: Likewise.
      	* c-dump.c: Likewise.
      	* c-lex.c: Likewise.
      	* collect2.c: Likewise.
      	* combine.c: Likewise.
      	* conflict.c: Likewise.
      	* cppfiles.c: Likewise.
      	* cppinit.c: Likewise.
      	* cpplex.c: Likewise.
      	* cpplib.c: Likewise.
      	* cppmacro.c: Likewise.
      	* cppspec.c: Likewise.
      	* c-pragma.c: Likewise.
      	* crtstuff.c: Likewise.
      	* cse.c: Likewise.
      	* cselib.c: Likewise.
      	* c-semantics.c: Likewise.
      	* c-typeck.c: Likewise.
      
      From-SVN: r44547
      Kazu Hirata committed