1. 28 Jan, 2003 1 commit
    • coretypes.h (cpp_reader): Forward declare struct. · e150159c
              * coretypes.h (cpp_reader): Forward declare struct.
              * c-pragma.h (cpp_reader): Remove forward declaration.
              * hashtable.h (cpp_reader): Likewise.
              * scan.h (cpp_reader): Likewise.
              * tree.h (cpp_reader): Likewise.
              * config/darwin-protos.h (cpp_reader): Likewise.
              * config/arm/arm-protos.h (cpp_reader): Likewise.
              * config/rs6000/rs6000-protos.h: Remove GCC_CPPLIB_H ifdef, use
              struct cpp_reader in prototypes.
      
      From-SVN: r62050
      Stan Shebs committed
  2. 01 Jan, 2003 1 commit
    • c-pragma.c (c_register_pragma): New. · c58b209a
      	* c-pragma.c (c_register_pragma): New.
      	(init_pragma): Use it.
      	* c-pragma.h (cpp_register_pragma): Don't declare.
      	(c_register_pragma): New.
      	* cpplib.h: Remove #ifdef GCC_C_PRAGMA_H.
      	* config/darwin.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/arm/arm.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/h8300/h8300.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/i370/i370.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/i960/i960.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/rs6000/rs6000.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/sh/sh.h (REGISTER_TARGET_PRAGMAS): Update.
      	* config/v850/v850.h (REGISTER_TARGET_PRAGMAS): Update.
      	* doc/tm.texi (REGISTER_TARGET_PRAGMAS): Update
      cp:
      	* lex.c: Remove superfluous include of cpplib.h.
      	(CONSTRAINT): Define without conditions.
      	(init_cp_pragma): Use c_register_pragma.
      
      From-SVN: r60740
      Neil Booth committed
  3. 08 Jul, 2002 1 commit
  4. 25 May, 2002 1 commit
    • Makefile.in (C_COMMON_H): Fix. · 81a75f0f
      	* Makefile.in (C_COMMON_H): Fix.
      	Update other targets.
      	* c-common.c: Don't include c-lex.h.
      	(builtin_define_with_value): Make static and prototype.
      	(builtin_define_std): Move from c-lex.h.
      	* c-common.h (init_c_lex): Move from c-lex.h.
      	* c-decl.c: Don't include c-lex.h.
      	(make_pointer_declarator): Move from c-parse.in.
      	* c-lex.c: Don't include c-lex.h.
      	* c-lex.h: Remove.
      	* c-parse.in: Don't include c-lex.h; include c-pragma.h.
      	(make_pointer_declarator): Move to c-decl.c.
      	* c-pragma.c: Don't include c-lex.h.
      	* c-pragma.h (yydebug, YYDEBUG, parse_in, c_lex): Move from c-lex.h.
      	* c-tree.h (make_pointer_declarator): New.
      cp:
      	* lex.c: Don't include c-lex.h.
      	* parse.y, spew.c: Don't include c-lex.h; include c-pragma.h.
      doc:
      	* passes.texi, tm.texi: Update.
      objc:
      	* Make-lang.in: Update and correct.
      	* objc-act.c: Don't include c-lex.h or cpplib.h.
      treelang:
      	* treetree.c: Don't include c-lex.h.
      config:
      	* darwin-c.c: Don't include c-lex.h.
      	* c4x/c4x-c.c: Don't include c-lex.h.
      	* c4x/t-c4x: Update.
      	* i370/i370-c.c: Don't include c-lex.h.
      	* i370/t-i370: Update.
      	* i960/i960-c.c: Don't include c-lex.h.
      	* i960/i960.c: Don't include cpplib.h, c-lex.h or c-pragma.h.
      	* i960/t-960bare: Update.
      	* i960/t-vxworks: Update.
      	* rs6000/rs6000-c.c: Don't include c-lex.h; include c-pragma.h.
      	* rs6000/t-darwin: Update.
      	* rs6000/t-rs6000-c-rule: Update.
      	* v850/v850-c.c: Don't include c-lex.h.
      	* v850/v850.c: Don't include c-lex.h or cpplib.h.
      
      From-SVN: r53876
      Neil Booth committed
  5. 22 Mar, 2002 1 commit
    • c-pragma.c (maybe_apply_renaming_pragma): New. · 41c64394
              * c-pragma.c (maybe_apply_renaming_pragma): New.
              (handle_pragma_redefine_extname, pending_redefine_extname): New.
              (handle_pragma_extern_prefix, pragma_extern_prefix): New.
              (init_pragma): Register them.
              * c-pragma.h (maybe_apply_renaming_pragma): Declare.
              * c-decl.c (finish_decl): Call it.
              * cp/decl.c (cp_finish_decl): Likewise.
              * doc/extend.texi: Document the new pragmas.
      
              * config/alpha/osf.h (CPP_SUBTARGET_SPEC): Add __EXTERN_PREFIX.
              (HANDLE_PRAGMA_EXTERN_PREFIX): New.
      
              * config/i386/sol2.h (CPP_PREDEFINES): Add __PRAGMA_REDEFINE_EXTNAME.
              (HANDLE_PRAGMA_REDEFINE_EXTNAME): New.
              * config/sparc/sol2.h: Likewise.
      
              * g++.dg/other/pragma-re-1.C: New.
              * g++.dg/other/pragma-ep-1.C: New.
              * gcc.dg/pragma-re-1.c, gcc.dg/pragma-re-2.c: New.
              * gcc.dg/pragma-ep-1.c, gcc.dg/pragma-ep-2.c: New.
              * gcc.dg/pragma-ep-3.c: New.
      
      From-SVN: r51200
      Richard Henderson committed
  6. 15 Mar, 2002 1 commit
    • c-decl.c: Include c-pragma.h. · ecb0eece
              * c-decl.c: Include c-pragma.h.
              (start_decl, start_function): Invoke maybe_apply_pragma_weak.
              (finish_function): Tidy.
              * c-pragma.c: Include c-common.h.
              (pending_weaks, apply_pragma_weak, maybe_apply_pragma_weak): New.
              (handle_pragma_weak): Use them.
              (init_pragma): Register pending_weaks.
              * c-pragma.h (maybe_apply_pragma_weak): Declare.
              * print-tree.c (print_node): Print DECL_WEAK.
              * varasm.c (mark_weak_decls): Remove.
              (remove_from_pending_weak_list): Remove.
              (add_weak): Remove.
              (asm_emit_uninitialised): Call globalize_decl for weak commons.
              (weak_decls): Make a tree_list.
              (declare_weak): Cons weak_decls directly.
              (globalize_decl): Remove weak_decls elements directly.
              (weak_finish): Simplify weak_decls walk.  Don't weaken unused
              symbols.  Don't pretend to handle aliases.
              (init_varasm_once): Update weak_decls registry.
      	* Makefile.in: Update dependencies.
      
              * cp/decl.c: Include c-pragma.h.
              (start_decl, start_function): Invoke maybe_apply_pragma_weak.
      	* cp/Make-lang.in: Update dependencies.
      
      	* gcc.dg/weak-1.c: New.
      
      From-SVN: r50797
      Richard Henderson committed
  7. 01 Mar, 2002 1 commit
    • tm.texi (ASM_WEAKEN_DECL): Document. · 79c4e63f
      	* doc/tm.texi (ASM_WEAKEN_DECL): Document.
      	(ASM_WEAKEN_LABEL): Mention ASM_WEAKEN_DECL.
      	(SUPPORTS_WEAK): Likewise.
      	* output.h (add_weak): Add tree param.
      	* varasm.c (add_weak): Likewise.  Save decl.
      	(struct weak_syms): Add decl field.
      	(mark_weak_decls): New function.
      	(init_varasm_once): ggc_add_root mark_weak_decls.
      	(assemble_start_function): Use ASM_WEAKEN_DECL.
      	(assemble_variable): Likewise.
      	(assemble_alias): Likewise.
      	(declare_weak): Pass decl to add_weak.
      	(weak_finish): Use ASM_WEAKEN_DECL. Try to find decl.
      	(remove_from_pending_weak_list): Declare and define for
      	ASM_WEAKEN_DECL.
      	* c-pragma.c (handle_pragma_weak): Adjust add_weak call.
      	* c-pragma.h (HANDLE_PRAGMA_WEAK): Define if ASM_WEAKEN_DECL too.
      	* defaults.h (SUPPORTS_WEAK): Likewise.
      	* config/rs6000/linux64.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
      	.weak for code sym.  Do emit .size for descriptor sym.
      	(ASM_DECLARE_FUNCTION_SIZE): Define.
      	* config/rs6000/rs6000.h (ASM_WEAKEN_DECL): Define.
      	(ASM_OUTPUT_DEF_FROM_DECLS): Don't emit .weak here.  Don't output
      	.lglobl unless TARGET_XCOFF.  Formatting fixes.
      	* config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
      	.weak for code sym.
      	(HANDLE_PRAGMA_WEAK): Remove.
      	(ASM_WEAKEN_LABEL): Remove.
      	* config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Define.
      
      Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
      
      From-SVN: r50181
      Alan Modra committed
  8. 18 Jan, 2002 1 commit
    • bitmap.h: Fix comment formatting. · 3ef42a0c
      	* bitmap.h: Fix comment formatting.
      	* combine.c: Likewise.
      	* cppfiles.c: Likewise.
      	* c-pragma.h: Likewise.
      	* c-typeck.c: Likewise.
      	* df.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* function.c: Likewise.
      	* gcc.c: Likewise.
      	* genattrtab.c: Likewise.
      	* gthr-win32.h: Likewise.
      	* haifa-sched.c: Likewise.
      	* predict.c: Likewise.
      	* rtlanal.c: Likewise.
      	* rtl.h: Likewise.
      	* unwind-dw2-fde.h: Likewise.
      	* unwind-pe.h: Likewise.
      	* vmsdbgout.c: Likewise.
      
      From-SVN: r48987
      Kazu Hirata committed
  9. 14 Oct, 2001 1 commit
    • c-pragma.h (cpp_register_pragma_space): Remove. · a5da89c6
      	* c-pragma.h (cpp_register_pragma_space): Remove.
      	* cpplib.h (cpp_register_pragma_space): Remove.
      	* cpplib.c (lookup_pragma_entry, insert_pragma_entry): New.
      	(cpp_register_pragma_space): Remove.
      	(cpp_register_pragma): Simplify using lookup_pragma_entry,
      	add sanity checks.
      	(do_pragma): Similarly.
      	(_cpp_init_internal_pragmas): Don't register namespaces.
      
      	* config/v850/v850.h (REGISTER_TARGET_PRAGMAS):
      	Don't register namespaces.
      	* cp/lex.c (init_cp_pragma): Similarly.
      	* doc/tm.texi: Update.
      
      From-SVN: r46254
      Neil Booth committed
  10. 28 Aug, 2001 1 commit
    • c-pragma.h (add_weak): Move prototype from here... · 46f9491e
      2001-08-28  Eric Christopher <echristo@redhat.com>
      	    Richard Henderson <rth@redhat.com>
      
      	* c-pragma.h (add_weak): Move prototype from here...
      	* output.h (add_weak): ... to here.
      	* varasm.c (add_weak): Fix typo.
      	* config/mips/crti.asm: New file.
      	* config/mips/crtn.asm: Ditto.
      	* config/mips/elf.h (SBSS_SECTION_ASM_OP) Add #undef.
      	(CTOR_LISTS_DEFINED_EXTERNALLY): Remove.
      	(INVOKE__main): Ditto.
      	(INIT_SECTION_ASM_OP): New.
      	(FINI_SECTION_ASM_OP): Ditto.
      	(STARTFILE_SPEC): Add crti.
      	(ENDFILE_SPEC): Add crtn.
      	* config/mips/elf64.h: Same.
      	* config/mips/rtems64.h (INVOKE__main, NAME__MAIN, SYMBOL__MAIN):
      	Remove.
      	* config/mips/vxworks.h: Ditto.
      	* config/mips/t-elf: Support crti and crtn.
      
      Co-Authored-By: Richard Henderson <rth@redhat.com>
      
      From-SVN: r45243
      Eric Christopher committed
  11. 24 Aug, 2001 1 commit
  12. 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
  13. 17 Jul, 2001 1 commit
    • c-pragma.h (HANDLE_PRAGMA_WEAK): Define iff ASM_WEAKEN_LABEL and ASM_OUTPUT_WEAK_ALIAS are defined. · 3aa8ab7b
      	* c-pragma.h (HANDLE_PRAGMA_WEAK): Define iff ASM_WEAKEN_LABEL and
      	ASM_OUTPUT_WEAK_ALIAS are defined.
      	* defaults.h (ASM_OUTPUT_WEAK_ALIAS): Define if possible.
      	* config/mips/iris6.h (ASM_OUTPUT_WEAK_ALIAS, ASM_WEAKEN_LABEL):
      	Moved ...
      	* config/mips/iris5.h: ... here.
      	(HANDLE_SYSV_PRAGMA): Defined as 1.
      	* varasm.c (weak_finish): Use ASM_OUTPUT_WEAK_ALIAS.
      	* doc/tm.texi (ASM_OUTPUT_WEAK_ALIAS): Support the undefined weak
      	symbol.
      
      Co-Authored-By: Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
      
      From-SVN: r44072
      H.J. Lu committed
  14. 26 May, 2001 1 commit
  15. 20 May, 2001 1 commit
    • Makefile.in (OBJS, [...]): Update. · 2a967f3d
      	* Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
      	cpplib.o, cpphash.o, fix-header): Update.
      	(hashtable.o): New target.
      	* c-common.h: Include cpplib.h.  Define C_RID_CODE and
      	struct c_common_identifier here.
      	* c-lang.c (c_init_options): Update.  Call set_identifier_size.
      	* c-lex.c (c_lex): Update.
      	* c-pragma.h: Update.
      	* c-tree.h (struct lang_identifier): Contain c_common_identifier.
      	Delete rid_code.
      	(C_RID_CODE): Delete.
      	* cpphash.c: Rewrite to use hashtable.c.
      	* cpphash.h: Update include guards.
      	(struct cpp_reader): Remove hashtab.
      	hash_ob and buffer_ob are no longer pointers.  Add hash_table
      	and our_hashtable.
      	(HASHSTEP, _cpp_init_hashtable,	_cpp_lookup_with_hash): Delete.
      	(_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
      	(_cpp_cleanup_stacks): Rename _cpp_init_directives.
      	* cppinit.c (cpp_create_reader): Update.
      	* cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
      	(cpp_interpret_charconst): Eliminate warning.
      	* cpplib.c (do_pragma, do_endif, push_conditional,
      	cpp_push_buffer, cpp_pop_buffer): Update.
      	(_cpp_init_stacks): Rename cpp_init_directives.
      	(_cpp_cleanup_stacks): Remove.
      	* cpplib.h: Update include guards.  Include tree-core.h and c-rid.h.
      	(cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
      	 cpp_forall_identifiers, cpp_create_reader): Update.
      	(C_RID_CODE, cpp_make_node): New.
      	(c_common_identifier): New identifier node for C front ends.
      	* cppmain.c (main): Update.
      	* fix-header.c (read_scan_file): Update.
      	* flags.h (id_clash_len): Make unsigned.
      	* ggc.h (ggc_mark_nonnull_tree): New.
      	* hashtable.c: New.
      	* hashtable.h: New.
      	* stringpool.c: Update comments and copyright.  Update to use
      	hashtable.c.
      	* toplev.c (approx_sqrt): Move to hashtable.c.
      	(id_clash_len): Make unsigned.
      	* toplev.h (ident_hash): New.
      	* tree.c (gcc_obstack_init): Move to hashtable.c.
      	* tree.h: Include hashtable.h.
      	(IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
      	(GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
      	(struct tree_identifier): Update.
      	(make_identifier): New.
      cp:
      	* cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
      	(C_RID_CODE): Remove.
      	* lex.c (cxx_init_options): Call set_identifier_size.  Update.
      	(init_parse): Don't do it here.
      objc:
      	* objc-act.c (objc_init_options): Call set_identifier_size. Update.
      
      From-SVN: r42334
      Neil Booth committed
  16. 25 Nov, 2000 1 commit
    • c-common.c: Remove USE_CPPLIB conditional inclusions. · a32f2771
              * c-common.c: Remove USE_CPPLIB conditional inclusions.
              * c-common.h: Similarly.
              * c-decl.c: Similarly.
              * c-lang.c: Similarly.
              * c-lex.c: Similarly.
              * c-parse.in: Similarly.
              * c-pragma.c: Similarly.
              * c-pragma.h: Similarly.
              * gcc.c: Similarly.
              * toplev.c: Similarly.
              * cp/cp-tree.h: Similarly.
              * cp/decl2.c: Similarly.
              * cp/lang-specs.h: Similarly.
              * cp/lex.c: Similarly.
              * cp/lex.h: Similarly.
              * cp/spew.c: Similarly.
              * java/lang-options.h: Similarly.
              * objc/lang-specs.h: Similarly.
              * objc/objc-act.c: Similarly.
      
              * configure.in: Remove configure option.
              * config.in: Regenerate.
              * configure: Regenerate.
      
      From-SVN: r37742
      Neil Booth committed
  17. 08 Sep, 2000 1 commit
    • c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS. · ae54392b
      	* c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS.
      	(init_pragma): Avoid warning if pfile happens to be unused.
      	* c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS.  Never
      	define init_pragma to nothing.  Always prototype
      	init_pragma.  Prototype dispatch_pragma if !USE_CPPLIB.
      
      	* c-lex.c (process_directive): Always call dispatch_pragma.
      	Initialize entering_c_header to 0.
      
      From-SVN: r36277
      Zack Weinberg committed
  18. 07 Sep, 2000 2 commits
    • c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if REGISTER_TARGET_PRAGMAS is defined. · 8b97c5f8
      	* c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if
      	REGISTER_TARGET_PRAGMAS is defined.  Duplicate some
      	definitions from cpplib.h.
      	* cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has
      	already done it.
      	* tm.texi: Document HANDLE_PRAGMA as no longer supported.  Add
      	documentation for REGISTER_TARGET_PRAGMAS.
      
      	* c-lex.c: Include cpplib.h before c-pragma.h.  Define a
      	default-pragma callback to implement -Wunknown-pragmas if
      	USE_CPPLIB.
      	* c-parse.in: Move all includes to top of file.
      	* c-pragma.c: Include cpplib.h before c-pragma.h.  Include
      	tm_p.h.
      	(dispatch_pragma): Put the namespace in the -Wunknown-pragmas
      	warning.
      	(init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it.
      
      	* arm.h, arm-protos.h, arm.c,
      	  c4x.h, c4x-protos.h, c4x.c,
      	  h8300.h, h8300-protos.h, h8300.c,
      	  i370.h, i370-protos.h, i370.c,
      	  i960.h, i960-protos.h, i960.c,
      	  sh.h, sh-protos.h, sh.c,
      	  v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based
      	pragmata scheme to use REGISTER_TARGET_PRAGMAS instead.
      
      	* d30v.h: Don't mention HANDLE_PRAGMA in comment.  Add
      	multiple include guard.
      	* i370.md (untyped_call): Use GEN_CALL.
      	(umodsi3): Remove unused variable.
      	* sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA.
      	* v850.c (output_move_single, output_move_double): Constify
      	return value.
      	(print_operand): Constify a char *.
      	* v850.h (struct small_memory_info): Constify name member.
      
      From-SVN: r36249
      Zack Weinberg committed
    • Integrated preprocessor. · 0e5921e8
      top level:
      	* Makefile.in: Remove all references to c-parse.gperf,
      	c-gperf.h, and c-parse.h.  Remove -d from yacc command line
      	generating c-parse.c.  Update dependencies.
      	* c-parse.gperf, c-gperf.h: Delete.
      
      	* c-common.c: Don't define parse_options, cpp_token, yy_cur,
      	yy_lim, or yy_get_token.  Don't define get_directive_line if
      	USE_CPPLIB.
      	* c-common.h: Add multiple include guard.  Define RID values
      	for every keyword in C, C++, and Objective C.  Put all the
      	modifiers first.
      	(struct c_fileinfo, get_fileinfo, dump_time_statistics): New.
      	* c-decl.c (c_decode_option): Handle -lang-objc here.
      	(print_lang_identifier): Handle C_IS_RESERVED_WORD case.
      	(grokdeclarator): Adjust for new RID scheme.
      	(extract_interface_info): New stub.
      	* c-lang.c: Don't declare yy_cur or parse_options.
      	(lang_init_options): Call cpp_init.  Don't call
      	cpp_options_init.
      	(lang_init): Don't call check_newline if USE_CPPLIB.
      
      	* c-lex.c: Don't include c-parse.h.  Do include timevar.h.
      	Elide lots of unnecessary code if USE_CPPLIB.  Delete code
      	rendered unnecessary by new architecture.  Move routines not
      	shared with C++ to c-parse.in.  Maintain a local idea of the
      	line number.    Handle C++ as well as C.
      	[USE_CPPLIB]: Declare and register callbacks for #ident and
      	for entering/leaving files.
      	(init_c_lex, c_lex): Are now the entry points to this file.
      	(check_newline): Break out directive handling to
      	process_directive.
      	(read_ucs, is_extended_char, utf8_extend_token): Moved here
      	from C++ front end.
      	(readescape, parse_float): Overhaul.
      	(lex_number, lex_string, lex_charconst): Break out of c_lex
      	(n'ee yylex).
      	(get_fileinfo, update_header_times, dump_one_header,
      	dump_time_statistics): New and/or moved here from C++.
      	Support per-file data needed by C++ and per-header timing
      	statistics (C++ only, at the moment).
      	* c-lex.h: Update prototypes.  Add multiple include guard.
      	* c-tree.h (struct lang_identifier): Add rid_code field.
      	(C_IS_RESERVED_WORD, C_RID_CODE): New.
      
      	* c-parse.in: Include c-pragma.h. Remove unnecesary calls to
      	reinit_parse_for_function and/or position_after_white_space.
      	(save_filename, save_lineno): Look ahead before saving.
      	(label -> identifier ':'): Save file and line before shifting ':'.
      	(reservedwords): No need to call get_identifier.
      	(init_parse, finish_parse, yyerror, yylex, yyprint,
      	make_pointer_declarator): Are now here for C/ObjC.
      	(rid_to_yy): Conversion table from RID constants to Yacc codes.
      
      	* c-pragma.c: Rewrite parsing logic to fit with cpplib's
      	#pragma registry.  Provide dummy implementation of that
      	interface if !USE_CPPLIB.
      	* c-pragma.h: Update to match.
      
      	* flags.h: Add multiple include guard.
      	(flag_detailed_statistics): Moved here from C++.
      	* toplev.c: Define flag_detailed_statistics.
      
      	* gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case
      	#if USE_CPPLIB.
      	* timevar.def (TV_CPP, TV_LEX): New.
      	* timevar.h: Add multiple include guard.
      
      	* objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case
      	#if USE_CPPLIB.
      	* objc/objc-act.c: Don't mention yy_cur or parse_options.
      	Initialize cpplib properly.  Force lineno to 0 after first
      	call to check_newline.  Don't handle -lang-objc here.
      	Move forget_protocol_qualifiers and remember_protocol_qualifiers here.
      
      cp:
      	* Make-lang.in, Makefile.in: Remove all references to input.c,
      	gxx.gperf, and hash.h.  Add ../c-lex.o to C_OBJS.
      	* gxx.gperf, hash.h, input.c: Delete.
      	* lang-specs.h: Pass -lang-c++ to cc1plus so cpplib is
      	initialized properly.
      
      	* class.c (fixup_pending_inline): Take a tree, not a
      	struct pending_inline *.  All callers changed.
      	(init_class_processing): Set RID_PUBLIC, RID_PRIVATE,
      	RID_PROTECTED entries in ridpointers[] array here.
      	* decl.c (duplicate_decls): Do not refer to struct
      	pending_inline.
      	(record_builtin_type, init_decl_processing): Use RID_MAX not
      	CP_RID_MAX.
      	(grokdeclarator): Use C_IS_RESERVED_WORD.
      	* decl2.c (lang_decode_option): Ignore -lang-c++ for sake of
      	cpplib.
      	(grok_x_components): Do not inspect pending_inlines chain.
      
      	* cp-tree.h (struct lang_identifier): Add rid_code entry.
      	(C_IS_RESERVED_WORD, C_RID_CODE, C_RID_YYCODE): New.
      	(flag_no_gnu_keywords, flag_operator_names, rid_to_yy): Declare.
      	(DEFARG_LENGTH, struct pending_inline, TIME_IDENTIFIER_TIME,
      	TIME_IDENTIFIER_FILEINFO): Kill.
      	Update prototypes.
      	* lex.h: Expunge cp_rid.  Rewrite RIDBIT macros to use just a
      	single 32-bit word.
      	* parse.y: Call do_pending_inlines unconditionally.
      	reinit_parse_for_method is now snarf_method.  fn.defpen is no
      	longer necessary.  Remove unnecessary <itype> annotation on
      	SCOPE.  Do not refer to end_of_file or struct pending_inline.
      	* semantics.c (begin_inline_definitions): Call
      	do_pending_inlines unconditionally.
      
      	* lex.c: Remove all code now shared with C front end.
      	Initialize cpplib properly if USE_CPPLIB.  Put reserved words
      	into the get_identifier table.  Rewrite pragma handling to
      	work with the registry.  Move code to save tokens for later
      	processing to spew.c.
      
      	* spew.c: Rewrite everything in terms of token streams instead
      	of text.  Move routines here from lex.c / input.c as
      	appropriate.  GC-mark trees hanging off the pending inlines
      	chain.
      
      testsuite:
      	* g++.old-deja/g++.benjamin/13478.C: Put meaningful tags on
      	ERROR markers.
      	* g++.old-deja/g++.brendan/crash8.C: Move ERROR marker up one line.
      	* gcc.dg/c99-array-nonobj-1.c: Don't expect func[] cases to fail.
      	* gcc.dg/wtr-label-1.c: Don't use unconstrained .* in error regexps.
      	* gcc.dg/wtr-suffix-1.c: Correct error regexps.
      	* gcc.dg/cpp/unc1.c, gcc.dg/cpp/unc2.c, gcc.dg/cpp/unc3.c:
      	Preprocess only.
      	* gcc.dg/cpp/unc4.c: Adjust line number in dg-error line.
      	* gcc.dg/noncompile/const-ll-1.c: Generalize error regexp.
      
      From-SVN: r36216
      Zack Weinberg committed
  19. 29 Aug, 2000 1 commit
    • top level: · 63ad61ed
      	* 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_variable): Add braces to avoid dangling else.
      	(classify_dependence): Constify char * arrays.
      	* profile.c (output_func_start_profiler): Constify a char *.
      	* stor-layout.c (finalize_record_size): Constify a char *.
      	* tree.c (is_attribute_p): Constify a char *.
      	* varasm.c (add_weak, remove_from_pending_weak_list): Constify argument.
      
      	* varasm.c (make_function_rtl, make_decl_rtl): Rearrange code
      	for comprehensibility.  Do not call get_identifier if we did
      	not change the DECL_ASSEMBLER_NAME of the decl.  Use alloca to
      	create temporary string constants, not ggc_alloc_string.  No
      	need to copy result of ASM_FORMAT_PRIVATE_NAME.  Use const
      	char * to hold IDENTIFIER_POINTERs.
      ch:
      	* inout.c (add_enum_to_list): Use DECL_NAME directly, don't get
      	its IDENTIFIER_POINTER and immediately call get_identifier on it.
      	* lex.c (yywrap): Constify a char *.
      cp:
      	* class.c (build_secondary_vtable): Constify a char *.
      	* decl.c (init_decl_processing): Initialize function_id_node,
      	pretty_function_id_node, and func_id_node.
      	* input.c (struct input_source): Constify 'str'.
      	(feed_input): Constify first argument.
      	* mangle.c (write_identifier): Constify argument.
      	* pt.c (mangle_class_name_for_template): Constify argument.
      f:
      	* ansify.c: Use #line, not # <number>.
      java:
      	* jcf-parse.c (set_source_filename): Constify a char *.
      	* jcf-write.c (append_innerclasses_attribute,
      	make_class_file_name): Constify a char *.  Don't recycle a
      	variable for an unrelated purpose.
      	* parse.y: (build_alias_initializer_parameter_list): Constify a char *.
      	(breakdown_qualified): Do not modify IDENTIFIER_POINTER strings.
      
      From-SVN: r36055
      Zack Weinberg committed
  20. 12 Jan, 2000 1 commit
    • c-common.c: PROTO -> PARAMS. · 6e090c76
              * c-common.c: PROTO -> PARAMS.
              * c-common.h: Likewise.
              * c-decl.c: Likewise.
              * c-iterate.c: Likewise.
              * c-lang.c: Likewise.
              * c-lex.c: Likewise.
              * c-lex.h: Likewise.
              * c-parse.in: Likewise.
              * c-pragma.c: Likewise.
              * c-pragma.h: Likewise.
              * c-tree.h: Likewise.
              * c-typeck.c: Likewise.
              * objc/objc-act.c: Likewise.
              * objc/objc-act.h: Likewise.
      
      From-SVN: r31362
      Kaveh R. Ghazi committed
  21. 19 Oct, 1999 1 commit
  22. 18 Sep, 1999 1 commit
  23. 09 Sep, 1999 1 commit
    • Makefile.in (cppexp.o): Depend on cpphash.h. · fc009f96
      	* Makefile.in (cppexp.o): Depend on cpphash.h.
      	* cppexp.c (cpp_lex): Handle `defined (xxx)' for poisoned xxx.
      	Include cpphash.h.
      	* cpphash.c (special_symbol): Handle plain `xxx' for poisoned xxx.
      	* cpplib.c (do_define): Generalise to handle poisoned definitions,
      	redefining poisoned identifiers, etc.
      	(do_undef): Don't allow poisoned identifiers to be undefined.
      	(do_pragma): Add #pragma poison.
      	(do_xifdef): Handle `#ifdef xxx' for poisoned xxx.
      
      	* cccp.c: Add T_POISON node type.
      	(special_symbol): Handle `defined(xxx)' and plain `xxx' for
      	poisoned xxx.
      	(do_define): Generalise to handle poisoned definitions,
      	redefining poisoned identifiers, etc.
      	(do_undef): Don't allow poisoned identifiers to be undefined.
      	(do_pragma): Add #pragma poison.
      	(do_xifdef): Handle `#ifdef xxx' for poisoned xxx.
      
      	* c-pragma.c (handle_pragma_token): Ignore #pragma poison.
      	* c-pragma.h: Add ps_poison state.  We now always have generic
      	pragmas.
      
      From-SVN: r29224
      Geoff Keating committed
  24. 26 Apr, 1999 1 commit
  25. 26 Feb, 1999 1 commit
  26. 18 Feb, 1999 1 commit
    • bitmap.c (bitmap_print): Qualify a char* with the `const' keyword. · 5d5993dd
              * bitmap.c (bitmap_print): Qualify a char* with the `const' keyword.
              * bitmap.h (bitmap_print): Likewise.
              * c-decl.c (builtin_function, grokdeclarator, grokfield): Likewise.
              * c-lang.c (build_objc_string): Likewise.
              * c-lex.c (yyerror, extend_token_buffer): Likewise.  Don't include
              limits.h or ctype.h.  Remove unused variable `p'.
              * c-lex.h (yyerror): Qualify a char* with the `const' keyword.
              * c-pragma.c (handle_pragma_token): Likewise.
              * c-pragma.h (handle_pragma_token): Likewise.
              * c-tree.h (build_objc_string, builtin_function, grokfield,
              build_indirect_ref, lvalue_or_else, readonly_warning, error_init,
              pedwarn_init): Likewise.
              * c-typeck.c (convert_for_assignment, warn_for_assignment,
              push_string, warning_init, incomplete_type_error,
              build_indirect_ref, lvalue_or_else, readonly_warning,
              build_c_cast, spelling, push_member_name, print_spelling,
              error_init, pedwarn_init, start_init): Likewise.
              * objc/objc-act.c (build_objc_string): Likewise.
              * print-tree.c (print_node_brief, print_node): Likewise.
              * tree.h (lvalue_or_else, print_node, print_node_brief): Likewise.
      
      From-SVN: r25296
      Kaveh R. Ghazi committed
  27. 07 Oct, 1998 1 commit
  28. 01 Oct, 1998 1 commit
  29. 02 Sep, 1998 1 commit
  30. 15 Jun, 1995 1 commit
  31. 16 May, 1995 1 commit
  32. 18 Apr, 1995 3 commits