Commit Graph

269 Commits

Author SHA1 Message Date
Zack Weinberg
6cf87ca4e5 * cpplib.h, cpphash.h, cppcharset.c, cpperror.c, cppexp.c
* cppfiles.c, cpphash.c, cppinit.c, cpplex.c, cpplib.c
	* cppmacro.c, cpppch.c, cpptrad.c, cppspec.c: Convert to
	ISO C: new-style function declarations, no need for PARAMS,
	no special punctuation on indirect function calls, use string
	constant concatenation where convenient.

From-SVN: r68070
2003-06-17 06:17:44 +00:00
Hans-Peter Nilsson
78b8811a38 Don't warn on dollars in builtin macro definitions,
e.g. __REGISTER_PREFIX__.
	* cpphash.h (struct cpp_reader): Move member warn_dollars...
	* cpplib.h (struct cpp_options): ...to here.  Change type to
	unsigned char.
	* cppinit.c (cpp_create_reader): Set it to 1 here.
	(post_options): Don't set it here.
	* c-opts.c (c_common_init_options): Reset it to 0 here.
	(finish_options): Set it here.
	* cpplex.c (forms_identifier_p): Tweak for new location of
	warn_dollars.

From-SVN: r67824
2003-06-12 06:09:15 +00:00
Neil Booth
6e2701797a c-cppbuiltin.c (c_cpp_builtins): Move __STDC_HOSTED__ into cpplib as it's a Standard Predefined Macro.
* c-cppbuiltin.c (c_cpp_builtins): Move __STDC_HOSTED__ into
	cpplib as it's a Standard Predefined Macro.
	* c-opts.c (finish_options): Pass flag_hosted to cpp_init_builtins.
	* cppinit.c (_cpp_init_builtins): Take HOSTED.  Define
	__STDC_HOSTED__ appropriately.
	* cpplib.h (_cpp_init_builtins): Update.
	* fix-header.c (read_scan_file): Update.
	* doc/cpp.texi, doc/cppopts.texi: Update documentation.
	* cppfiles.c (find_or_create_entry): Preserve errno.

From-SVN: r66688
2003-05-11 13:43:36 +00:00
Neil Booth
6338b35872 Makefile.in (c-lex.o, [...]): Update.
* Makefile.in (c-lex.o, LIBCPP_OBJS, cpplex.o): Update.
	* c-lex.c (MULTIBYTE_CHARS): Remove conditionals.
	(lex_string): Take cpp_string with full spelling.
	(cb_ident): Update.
	(c_lex): Update diagnostics.
	* cpplex.c (SPELL_NUMBER, SPELL_STRING): Combine into SPELL_LITERAL.
	(create_literal): New.
	(lex_string): Unterminated literals have type CPP_OTHER.
	(_cpp_lex_direct): Update calls to lex_string.  Use create_literal
	for CPP_OTHER.
	(cpp_token_len, cpp_spell_token, cpp_output_token): Simplify.
	(_cpp_equiv_tokens, cpp_interpret_charconst): Update.
	* cpplib.c (parse_include, do_line, do_linemarker,
	destringize_and_run): Update for token storing full spelling.
	* cpplib.h: Update token spelling types.
	* cppmacro.c (stringify_arg, check_trad_stringification):
	Update for token storing full spelling.
cp:
	* Make-lang.in (lex.o): Remove mbchar.h.
	* lex.c (MULTIBYTE_CHARS): Lose.
	* parser.c (cp_lexer_get_preprocessor_token): CPP_OTHER handled
	in c-lex.c.
testsuite:
	* gcc.dg/cpp/include2.c: Update.
	* gcc.dg/cpp/multiline-2.c: New.
	* gcc.dg/cpp/multiline.c: Update.
	* gcc.dg/cpp/strify2.c: Update.
	* gcc.dg/cpp/trad/literals-2.c: Update.

From-SVN: r66019
2003-04-23 22:44:06 +00:00
Neil Booth
1067694a52 c-lex.c (c_lex): Handle CPP_OTHER differently.
* c-lex.c (c_lex): Handle CPP_OTHER differently.
	* cppexp.c (_cpp_parse_expr): Similarly.
	* cpplex.c (SPELL_CHAR): Remove.
	(_cpp_lex_direct): Stray chars are saved as byte strings.
	(cpp_spell_token, cpp_output_token, _cpp_equiv_token): Don't
	handle SPELL_CHAR.
	(cpp_avoid_paste): Update handling of CPP_OTHER.
	* cpplib.h: Spell CPP_OTHER like a number.
	(struct cpp_token): Remove member c.
	* cppmacro.c (stringify_arg): Update handling of CPP_OTHER.

From-SVN: r65951
2003-04-22 19:28:00 +00:00
Neil Booth
74eb4b3e2e c-ppoutput.c (cb_include): Don't take a cpp_token.
* c-ppoutput.c (cb_include): Don't take a cpp_token.
	* cppfiles.c: Don't undef strcmp.
	(find_include_file): Don't take a cpp_token.  Check for empty
	file names.
	(_cpp_execute_include, _cpp_compare_file_date): Don't take a cpp_token.
	(cpp_push_include): Simplify.
	* cpphash.h (_cpp_execute_include, _cpp_compare_file_date): Update.
	* cpplib.c (glue_header_name): Return the file name, not a cpp_token.
	(parse_include): Similary.  Don't check for zero-length filenames.
	(do_include_common, do_pragma_dependency): Update accordingly.
	* cpplib.h (struct cpp_callbacks): Change prototype of include.

From-SVN: r65894
2003-04-21 19:21:59 +00:00
Per Bothner
b4e46cea24 Various cleanups to help compile server.
* cppinit.c (cpp_create_reader):  Take extra hash_table* argument,
	and pass that to _cpp_init_hashtable.
	(cpp_read_main_file):  Drop hash_table* argument; don't call
	_cpp_init_hashtable.
	* cpplib.h:  Update declarations to match.
	* c-opts.c (c_common_init_options):  Pass ident_hash to
	cpp_create_reader.
	(c_common_post_options):  Don't pass ident_hash to cpp_read_main_file.
	* fix-header.c (read_scan_file):  Likewise pass NULL table to
	cpp_create_reader rather than cpp_read_main_file.

	* cppfiles.c (cpp_rename_file):  Generalized and renamed
	to cpp_change_file.
	* cpplib.h:  Update declaration to match.
	* c-opts.c (push_command_line_line, finish_options):  Change
	cpp_rename_file calls to cpp_change_file.

From-SVN: r64617
2003-03-20 08:46:18 -08:00
Neil Booth
783e29899b c-opts.c: Default TARGET_EBCDIC to 0 if not defined.
* c-opts.c: Default TARGET_EBCDIC to 0 if not defined.
	(c_common_init): Set EBCDIC in cpp options.
	* cpplex.c (maybe_read_ucs, cpp_parse_escape): Use EBCDIC option,
	not conditional compilation.
	* cpplib.h (struct cpp_options): New entry EBCDIC.

From-SVN: r64471
2003-03-17 06:41:06 +00:00
Neil Booth
c1bad961ed Makefile.in: Update.
* Makefile.in: Update.
	* c-common.h (cb_register_builtins): Rename c_cpp_builtins.
	* c-lex.c (init_c_lex): Register builtins hook is dead.
	* c-opts.c (COMMAND_LINE_OPTIONS, missing_arg): Handle -A, -D and -U.
	(c_common_decode_option): Don't call cpp_handle_option.
	Handle -A, -D and -U.
	(handle_deferred_opts): Simplify.
	(finish_options): Define builtins and command line macros.
	* c-ppoutput.c (init_pp_output): Register builtins hook is dead.
	* cppinit.c: Don't include intl.h.
	(init_builtins): Rename cpp_init_builtins.  No hook to call.
	(init_library): Don't need to sort options.
	(cpp_create_reader): Don't set pending.
	(cpp_destroy): Don't free pending.
	(struct pending_option, cl_directive_handler, struct cpp_pending,
	APPEND, free_chain, new_pending_directive, parse_option, opt_comp,
	cpp_finish_options, COMMAND_LINE_OPTIONS, DEF_OPT, struct cl_option,
	cl_options, cpp_handle_option): Remove.
	* cpplib.h (struct cpp_pending, register_builtins, cpp_handle_option,
	cpp_finish_options): Remove.
	(cpp_init_builtins): New.
	* fix-header.c (read_scan_file): Update to handle -D.  Fix
	handling of -I.  Replace call to cpp_finish_options.
cp:
	* Make-lang.in: Update.

From-SVN: r64398
2003-03-15 12:18:47 +00:00
Neil Booth
c19b12cb00 cppfiles.c (cpp_rename_file, [...]): New.
* cppfiles.c (cpp_rename_file, cpp_push_include): New.
	* cppinit.c (push_include): Move with changes to cppfiles.c.
	(cpp_read_main_file): Mark named operators here...
	(cpp_finish_options): ...not here.  Update.
	(_cpp_maybe_push_include_file): Update.
	* cpplib.h (cpp_push_include, cpp_rename_file): New.

From-SVN: r64266
2003-03-12 21:31:51 +00:00
Neil Booth
63973df350 Makefile.in: Update.
* Makefile.in: Update.
	* c-common.c (flag_no_line_commands, flag_no_output,
	flag_dump_macros, flag_dump_includes): New.
	* c-common.h (flag_no_line_commands, flag_no_output,
	flag_dump_macros, flag_dump_includes, preprocess_file): New.
	(init_c_lex): Update prototype.
	* c-lex.c (init_c_lex): Update prototype; move some code to
	c_common_init.
	* c-opts.c (preprocess_file): Subsume into c_common_init.
	(c_common_decode_option): Update flags.
	(c_common_init): Move code from preprocess_file and init_c_lex.
	(sanitize_cpp_opts): Update.
	* c-ppoutput.c: New, cppmain.c almost verbatim.
	* cpphash.h (struct printer): Remove.
	(struct cpp_reader): Remove print.
	* cpplib.h (dump_none, dump_only, dump_names, dump_definitions,
	cpp_preprocess_file): Remove.
	(struct cpp_options): Remove no_output, no_line_commands, dump_macros
	and dump_includes.
	* cppmain.c: Remove.
	* doc/passes.texi: Update.

From-SVN: r63773
2003-03-04 07:00:39 +00:00
Neil Booth
986b1f1334 c-incpath.c (remove_component_p, [...]): Move back to cppfiles.c.
* c-incpath.c (remove_component_p, simplify_path): Move back to
	cppfiles.c.
	(remove_duplicates): Use cpp_simplify_path.
	* c-incpath.h (simplify_path): Remove.
	* c-lex.c: Don't include c-incpath.h.
	(init_c_lex): Remove simplify_path.
	* cppfiles.c (remove_component_p, cpp_simplify_path): Restore.
	(find_or_create_entry, validate_pch): Revert.

From-SVN: r63669
2003-03-02 17:44:18 +00:00
Neil Booth
5793b27668 Makefile.in (C_AND_OBJC_OBJS, [...]): Update.
* Makefile.in (C_AND_OBJC_OBJS, c-incpath.o, c-lex.o, LIBCPP_OBJS,
	cppinit.o, cppdefault.o, fix-header): Update.
	* c-incpath.c: New file.
	* c-incpath.h: New file.
	* c-lex.c: Include c-incpath.h.
	(init_c_lex): Register path simplifier.
	* c-opts.c: Include cppdefault.h and c-incpath.h.
	(TARGET_SYSTEM_ROOT, verbose, iprefix, sysroot, std_inc,
	std_cxx_inc, quote_chain_split, add_prefixed_path): New.
	(COMMAND_LINE_OPTIONS): Add more options from cpplib.
	(missing_arg, c_common_decode_option): Handle them.
	(c_common_post_options): Register include chains.
	(print_help): Update.
	* cppdefault.h (struct default include): Update.
	Move some macros to ...
	* cppdefault.c: ... here.
	(cpp_include_defaults): Add extra field add_sysroot.
	* cppfiles.c (include_file, search_from, find_or_create_entry,
	cpp_included, find_include_file, remap_filename): Update for
	renaming of search_path to cpp_path, and of the chain headers.
	(remove_component_p, _cpp_simplify_pathname): Move to c-incpath.c.
	* cpphash.h (struct search_path): Move to cpplib.h.
	(struct cpp_buffer, struct cpp_reader): Update.
	(_cpp_simplify_pathname): Remove.
	* cppinit.c: Don't include prefix.h and cppdefault.h.
	(INO_T_EQ, INO_T_COPY, path_include, append_include_chain,
	remove_dup_dir, remove_dup_nonsys_dirs, remove_dup_dirs,
	init_standard_includes, BRACKET, SYSTEM, AFTER, no_dir,
	no_pth, cpp_handle_options): Remove.
	(struct pending_option): Remove chain members.
	(cpp_destroy, cpp_read_main_file, COMMAND_LINE_OPTIONS,
	cpp_handle_option): Update.
	* cpplib.h (struct cpp_path, cpp_set_include_chains): New.
	(struct cpp_options): Remove quote_include, bracket_include,
	include_prefix, include_prefix_len, verbose, ignore_srcdir,
	no_standard_includes, no_standard_cplusplus_includes.
	(struct cpp_callbacks): Add simplify_path.
	(cpp_handle_options): Remove.
	* fix-header.c: Include c-incpath.h.
	(read_scan_file): Update to use c-incpath functionality.
	* doc/passes.texi: Update.
cp:
	* Make-lang.in (CXX_C_OBJS): Update.

From-SVN: r63612
2003-03-01 14:31:21 +00:00
Daniel Jacobowitz
047d636f54 Makefile.in (PREPROCESSOR_DEFINES): Add @TARGET_SYSTEM_ROOT_DEFINE@.
* Makefile.in (PREPROCESSOR_DEFINES): Add
	@TARGET_SYSTEM_ROOT_DEFINE@.
	* configure.in (PREFIX_INCLUDE_DIR): Don't define if $with_sysroot
	is specified or if building a cross compiler.
	(TARGET_SYSTEM_ROOT_DEFINE): Add TARGET_SYSTEM_ROOT_RELOCATABLE
	if the sysroot is under $exec_prefix.
	* configure: Regenerated.
	* cppdefault.h: Use native include paths if TARGET_SYSTEM_ROOT is
	defined.
	(struct default_include): Add add_sysroot field.
	(cpp_SYSROOT): Declare.
	* cppdefault.c (cpp_include_defaults): Fill in add_sysroot
	field.
	(cpp_SYSROOT): New variable.
	* cppinit.c (cpp_create_reader): Initialize
	CPP_OPTION (pfile, sysroot).
	(init_standard_includes): Handle add_sysroot.  Do not
	add unrelocated copies of relocated directories.
	(COMMAND_LINE_OPTIONS): Add -isysroot.
	(cpp_handle_option): Handle -isysroot.
	* cpplib.h (struct cpp_options): Add sysroot member.
	* gcc.c (The Specs Language): Update description of %I.
	(target_system_root_changed): New variable.
	(process_command): Conditionalize make_relative_prefix call
	on !VMS and TARGET_SYSTEM_ROOT_RELOCATABLE.  Set
	target_system_root_changed.
	(do_spec_1): Add -isysroot to %I.
	* doc/invoke.texi (Spec Files): Update description of %I.
	* doc/install.texi (--with-sysroot): Update comment about
	relocation.

From-SVN: r62853
2003-02-13 17:23:56 +00:00
Jason Merrill
9fbd3e4166 cpplib.h (struct cpp_options): Add warn_deprecated field.
* cpplib.h (struct cpp_options): Add warn_deprecated field.
        * cppinit.c (cpp_create_reader): Turn it on by default.
        * c-opts.c (c_common_decode_option): Set it.
        * cpplib.c (do_pragma_once): Only complain about #pragma once
        if warn_deprecated is set.

From-SVN: r62005
2003-01-28 14:30:00 -05:00
Kazu Hirata
95bd1dd72f alias.c: Fix comment typos.
* alias.c: Fix comment typos.
	* basic-block.h: Likewise.
	* c-common.c: Likewise.
	* c-common.h: Likewise.
	* c-decl.c: Likewise.
	* c-opts.c: Likewise.
	* c-pragma.c: Likewise.
	* c-pretty-print.h: Likewise.
	* cfg.c: Likewise.
	* cfganal.c: Likewise.
	* cfgbuild.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cfglayout.c: Likewise.
	* cfgrtl.c: Likewise.
	* convert.c: Likewise.
	* cpphash.h: Likewise.
	* cpplex.c: Likewise.
	* cpplib.h: Likewise.
	* df.h: Likewise.
	* diagnostic.c: Likewise.
	* diagnostic.h: Likewise.
	* dwarf2.h: Likewise.

From-SVN: r61462
2003-01-18 02:26:43 +00:00
Geoffrey Keating
17211ab553 Merge from pch-branch.
From-SVN: r61136
2003-01-10 02:22:34 +00:00
Neil Booth
c58b209a5d c-pragma.c (c_register_pragma): New.
* 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
2003-01-01 12:27:02 +00:00
Zack Weinberg
4977bab6ed Merge basic-improvements-branch to trunk
From-SVN: r60174
2002-12-16 18:23:00 +00:00
Kazu Hirata
40f0365880 c-common.h: Follow spelling conventions.
* c-common.h: Follow spelling conventions.
	* cpplex.c: Likewise.
	* cpplib.h: Likewise.
	* gthr-dce.h: Likewise.
	* gthr-posix.h: Likewise.
	* optabs.c: Likewise.
	* output.h: Likewise.
	* profile.c: Likewise.
	* protoize.c: Likewise.
	* ra-rewrite.c: Likewise.
	* real.c: Likewise.
	* recog.c: Likewise.
	* reg-stack.c: Likewise.
	* regclass.c: Likewise.
	* regmove.c: Likewise.
	* reload.c: Likewise.
	* reload.h: Likewise.
	* reload1.c: Likewise.
	* reorg.c: Likewise.
	* resource.c: Likewise.
	* rtl.h: Likewise.
	* rtlanal.c: Likewise.

From-SVN: r57555
2002-09-26 22:25:14 +00:00
Kazu Hirata
da7d830409 ChangeLog: Follow spelling conventions.
* ChangeLog: Follow spelling conventions.
	* ChangeLog.0: Likewise.
	* ChangeLog.1: Likewise.
	* ChangeLog.2: Likewise.
	* ChangeLog.3: Likewise.
	* ChangeLog.4: Likewise.
	* ChangeLog.5: Likewise.
	* ChangeLog.6: Likewise.
	* FSFChangeLog.10: Likewise.
	* FSFChangeLog.11: Likewise.
	* alias.c: Likewise.
	* basic-block.h: Likewise.
	* c-aux-info.c: Likewise.
	* c-common.c: Likewise.
	* c-common.h: Likewise.
	* c-decl.c: Likewise.
	* c-format.c: Likewise.
	* c-semantics.c: Likewise.
	* c-typeck.c: Likewise.
	* calls.c: Likewise.
	* cfganal.c: Likewise.
	* cfgloop.c: Likewise.
	* collect2.c: Likewise.
	* combine.c: Likewise.
	* conflict.c: Likewise.
	* cppexp.c: Likewise.
	* cppfiles.c: Likewise.
	* cpphash.h: Likewise.
	* cppinit.c: Likewise.
	* cpplex.c: Likewise.
	* cpplib.c: Likewise.
	* cpplib.h: Likewise.
	* cppmacro.c: Likewise.
	* cse.c: Likewise.

From-SVN: r57398
2002-09-22 02:03:17 +00:00
Kazu Hirata
4912a07c88 ChangeLog: Follow spelling conventions.
* ChangeLog: Follow spelling conventions.
	* ChangeLog.0: Likewise.
	* ChangeLog.2: Likewise.
	* ChangeLog.3: Likewise.
	* ChangeLog.4: Likewise.
	* ChangeLog.5: Likewise.
	* ChangeLog.6: Likewise.
	* cppfiles.c: Likewise.
	* cppinit.c: Likewise.
	* cpplib.h: Likewise.
	* cse.c: Likewise.
	* debug.h: Likewise.
	* df.c: Likewise.
	* dominance.c: Likewise.
	* hashtable.c: Likewise.
	* hashtable.h: Likewise.
	* loop.c: Likewise.
	* config/arm/README-interworking: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/arm.h: Likewise.
	* config/arm/arm.md: Likewise.
	* config/dsp16xx/dsp16xx.h: Likewise.
	* config/frv/frv.c: Likewise.
	* config/frv/frv.h: Likewise.
	* config/ip2k/ip2k.h: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/stormy16/stormy-abi: Likewise.
	* config/stormy16/stormy16.h: Likewise.
	* config/v850/v850.c: Likewise.

From-SVN: r57146
2002-09-14 15:51:45 +00:00
Neil Booth
182d89a3e9 re PR preprocessor/7358 (Changes to Sun's make Dependencies)
PR preprocessor/7358
	* c-opts.c (check_deps_environment_vars): Ignore main file
	for SUNPRO_DEPENDENCIES.
	* cppfiles.c (stack_include_file): Ignore main file if
	appropriate.
	* cpplib.h (struct cpp_options): New member in deps.
	* doc/cppenv.texi: Update.

From-SVN: r56333
2002-08-14 22:34:50 +00:00
Neil Booth
f4ff5a691f c-opts.c (deps_seen, [...]): New.
* c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
	handle_deferred_opts, sanitize_cpp_opts, defer_opt,
	struct deferred_opt): New.
	(COMMAND_LINE_OPTIONS): Add -M*.
	(missing_arg): Update.
	(c_common_decode_option): Handle -M*.
	(c_common_post_options): Handle -M*.  Use sanitize_cpp_opts;
	don't call cpp_post_options.
	(c_common_finish, check_deps_environment_vars): Update.
	* cppfiles.c (stack_include_file, handle_missing_header): Update.
	* cpphash.h (CPP_PRINT_DEPS): Remove.
	* cppinit.c: Don't include version.h.
	(cpp_create_reader): Don't call deps_init.  Initialize
	warn_long_long.
	(cpp_read_main_file): Init deps if necessary.
	(cpp_destroy): Conditionally free deps.
	(cpp_finish): Update.
	(no_tgt): Remove.
	(COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
	(cpp_post_options): Rename post_options.
	* cpplib.h (struct cpp_options): Remove some dependency options;
	move others to a new structure.
	(cpp_post_options): Remove.
	(cpp_finish): Comment.
	* fix-header.c (read_scan_file): Don't call cpp_post_options.
treelang:
	* treelang.c: Remove cpp_post_options.

From-SVN: r56239
2002-08-12 22:44:30 +00:00
Neil Booth
460bd0e32d c-common.c (STDC_0_IN_SYSTEM_HEADERS, [...]): Move to c-copts.c.
* c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
	to c-copts.c.
	(warn_multichar): Die.
	(cb_register_builtins): Export.
	* c-common.h (warn_multichar, preprocess_file): Remove.
	(cb_register_builtins): New.
	* c-lang.c (c_init): Remove.
	(LANG_HOOKS_INIT): Use c_objc_common_init.
	* c-lex.c (init_c_lex): Don't canonicalize filename.
	* c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
	(preprocess_file): Make static.  Update for cpplib.
	(c_common_decode_option): Remove warn_multichar.  Use in_fname.
	(c_common_post_options): Set some cpp options here.
	(c_common_init): Move from c-common.c.
	* cppinit.c (cpp_post_options): Don't canonicalize in_fname.
	* cpplib.h (struct cpp_options): Remove in_fname.
	(cpp_preprocess_file): Update.
	* cppmain.c (cpp_preprocess_file): Update for new prototypes.

From-SVN: r56223
2002-08-12 06:02:53 +00:00
Neil Booth
76c3e73e32 c-common.c (c_common_init): Call preprocess_file instead.
* c-common.c (c_common_init): Call preprocess_file instead.
	(c_common_finish): Move to c-opts.c.
	* c-common.h (preprocess_file): new.
	* c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
	check_deps_environment_vars, c_common_finish): New.
	(c_common_decode_option): Update for out_fname and dependencies.
	* cppinit.c (init_dependency_output, output_deps): Remove.
	(cpp_destroy): Update prototype.
	(cpp_add_dependency_target): New.
	(cpp_read_main_file): Don't overlay a buffer.
	(cpp_finish): Take a deps output stream and write deps to it.
	Return the error count.
	(cpp_post_options): Don't canonicalize out_fname, or do anything
	with dependencies.
	* cpplib.h (struct cpp_options): Remove out_fname and
	preprocess_only.
	(cpp_add_dependency_target): New.
	(cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
	* cppmain.c (cpp_preprocess_file): Update prototype.  Don't
	set preprocess_only.  Don't handle the output stream directly.

From-SVN: r56214
2002-08-11 22:22:28 +00:00
Neil Booth
f749a36bbe c-opts.c (set_std_cxx98, [...]): New.
* c-opts.c (set_std_cxx98, set_std_c89): New.
	(COMMAND_LINE_OPTIONS): Move more from cppinit.c.
	(c_common_decode_option): Handle new switches from cppinit.c.
	Add -std=gnu++98.
	* cppinit.c (set_lang): Rename cpp_set_lang.  Export.
	(no_arg, no_num): Remove.
	(COMMAND_LINE_OPTIONS): Move more to c-opts.c.  Drop all lang-
	switches apart from -lang-objc and lang-asm.
	(cpp_handle_option): Similarly.
	* cpplib.h (cpp_set_lang): New.
	* doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
	-std=gnu++98.
	* objc/lang-specs.h: Remove -ansi.
cp:
	* lang-specs.h: Remove -ansi.

From-SVN: r56185
2002-08-10 20:58:45 +00:00
Neil Booth
4b7091eb62 Makefile.in (c-opts.o): Update
* Makefile.in (c-opts.o): Update
	* c-opts.c: Include intl.h.
	(print_help): Move from cppinit.c.  Remove unused options.
	(COMMAND_LINE_OPTIONS): Move more from cppinit.c.
	(missing_arg): Complain for switches without an argument.
	(c_common_decode_option): Reject missing joined arguments.
	Handle new switches from cppinit.c.
	* cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
	(cpp_handle_option): Similarly.
	(print_help): Moved to c-opts.c.
	* cpplib.h (struct cpp_options): Remove help_only.
	* gcc.c (cpp_unique_options): Remove -$.
	* doc/cppopts.texi: Undocument -h.

From-SVN: r56155
2002-08-09 06:19:08 +00:00
Neil Booth
58551c2335 cppinit.c (struct lang_flags): Rename trigraphs std.
* cppinit.c (struct lang_flags): Rename trigraphs std.
	(set_lang): Update.
	* cpplib.h (struct cpp_options): New member std.
	* cppmacro.c (_cpp_builtin_macro_text): Use std.
	(collect_args): Flag whether to swallow a possible future
	comma pasted with varargs.
	(replace_args): Use this flag.
	* doc/cpp.texi: Update varargs extension documentation.
testsuite:
	* gcc.dg/cpp/vararg3.c, gcc.dg/cpp/vararg4.c: New tests.

From-SVN: r56077
2002-08-06 20:35:46 +00:00
Neil Booth
a69cbaac60 cppexp.c (parse_defined): Mark macro used.
* cppexp.c (parse_defined): Mark macro used.
	* cpphash.h (struct cpp_macro): New member "used".
	(_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
	(struct cpp_reader): New member.
	* cppinit.c (cpp_finish_options): Set first_unused_line.
	(cpp_finish): Warn of unused macros if requested.
	(OPT_TABLE): New switches.
	(cpp_handle_option): Handle them.
	* cpplib.c (do_undef): Warn if macro unused.
	(do_ifdef, do_ifndef): Mark macro used.
	* cpplib.h (struct cpp_options): New member.
	* cppmacro.c (_cpp_warn_if_unused_macro): New.
	(enter_macro_context): Mark macro used.
	(_cpp_create_definition): Mark macro unused; warn if unused
	when redefined.
	* cpptrad.c (scan_out_logcial_line, push_replacement_text):
	Mark macros used.
	* doc/cppopts.texi: Update.
testsuite:
	* gcc.dg/cpp/trad/Wunused.c, gcc.dg/cpp/trad/Wunused.h,
	gcc.dg/cpp/Wunused.c, gcc.dg/cpp/Wunused.h: New tests.

From-SVN: r55692
2002-07-23 22:57:49 +00:00
Neil Booth
68e6527569 cppexp.c (struct op): Add token pointer.
* cppexp.c (struct op): Add token pointer.
	(check_promotion, CHECK_PROMOTION): New.
	(optab): Update.
	(_cpp_parse_expr): Update, use token pointer of struct op.
	(reduce): Warn about change of sign owing to promotion.
	* cppinit.c (cpp_handle_option): New warning if -Wall.
	* cpplib.h (struct cpp_options): New member.
testsuite:
	* gcc.dg/cpp/Wsignprom.c: New tests.

From-SVN: r55611
2002-07-20 13:31:56 +00:00
Neil Booth
23ff022370 cppexp.c (cpp_interpret_integer, [...]): Clarify and correct use of "bool" variables.
* cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
	eval_token): Clarify and correct use of "bool" variables.
	* cpplib.h (struct cpp_options): Similarly.
	* cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
	* cpptrad.c (recursive_macro): Similarly.

From-SVN: r55536
2002-07-17 17:27:14 +00:00
Neil Booth
1a76916c78 Makefile.in: Update cppmain.o.
* Makefile.in: Update cppmain.o.
	* cpphash.h (struct cpp_reader): Move some members to a
	nested structure.
	(trad_line): Rename saved_line.
	(_cpp_read_logical_line_trad): Update.
	(_cpp_remove_overlay): New.
	* cppinit.c (cpp_create_reader): No need to set saved_line.
	(cpp_destroy): Update.
	(cpp_read_main_file): Only overlay if compiling.
	* cpplex.c (continue_after_nul): Return false if in directive.
	* cpplib.c (EXPAND): New.
	(directive_table, SEEN_EOL): Update.
	(end_directive): Remove overlay if traditional; don't skip
	line in traditional #define.
	(prepare_directive_trad): New.
	(_cpp_handle_directive, run_directive): Update for traditional
	directives.
	(lex_macro_node): Simplify, don't use lex_identifier_trad.
	* cpplib.h (struct options): Add preprocess_only.
	* cppmain.c: Don't include intl.h.
	(cpp_preprocess_file): Set options->preprocess_only.
	(scan_translation_unit_trad): Fix, and print line numbers.
	* cpptrad.c (check_output_buffer, lex_identifier, scan_parameters,
	maybe_start_funlike, scan_out_logical_line, replace_args_and_push,
	save_replacement_text, _cpp_create_trad_definition): Update for
	variable renaming.
	(_cpp_overlay_buffer): Save line number.
	(_cpp_remove_overlay): Rename from restore_buff, restore line.
	(_cpp_read_logical_line_trad): Don't handle overlays here.
	(scan_out_logical_line): Process directives.

From-SVN: r54485
2002-06-11 05:36:17 +00:00
Zack Weinberg
09e77dee59 cppinit.c (COMMAND_LINE_OPTIONS): Give all relevant -W options their own entries.
* cppinit.c (COMMAND_LINE_OPTIONS): Give all relevant -W
	options their own entries.
	(parse_option): Clarify comment.
	(cpp_handle_option): Remove 'ignore' parameter and OPT_W
	special case.  Replace if/strcmp chain for -W options with
	use of new OPT_* entries for them.
	(cpp_handle_options): Update to match.
	* cpplib.h: Remove last parameter to cpp_handle_option from prototype.
	* c-decl.c, cp/decl2.c: Update call to cpp_handle_option.

From-SVN: r54352
2002-06-07 22:24:30 +00:00
Neil Booth
ceeedfc11a c-common.c (c_common_init): Override cpplib's default warn_long_long setting.
* c-common.c (c_common_init): Override cpplib's default
	warn_long_long setting.
	* c-lex.c (lex_number): Replace with interpret_integer,
	interpret_float, narrowest_unsigned_type and
	narrowest_signed_type, taking advantage of the new
	cpplib functionality.
	* cpperror.c (_cpp_begin_message): If a warning is turned
	into an error, avoid printing "warning:".
	* cppexp.c (cpp_num_sign_extend): New.
	* cppinit.c: Update comment.
	* cpplib.h (cpp_num_sign_extend): New.
	* tree.h: Update comment.
testsuite:
	* gcc.dg/wtr-int-type-1.c, gcc.dg/wtr-suffix-1.c,
	gcc.dg/cpp/paste4.c, gcc.dg/cpp/sysmac2.c:
	Update for mofified diagnostics.
	* gcc.dg/c99-intconst-1.c: No longer fail.

From-SVN: r54180
2002-06-02 19:37:34 +00:00
Neil Booth
cd7ab83f2d cppexp.c (cpp_num): Move to cpplib.h.
2002-05-29  Neil Booth  <neil@daikokuya.demon.co.uk>
	    Zack Weinberg <zack@codesourcery.com>

	* cppexp.c (cpp_num): Move to cpplib.h.
	(CPP_ERROR): Remove.
	(interpret_float_suffix, interpret_int_suffix): New.
	(struct suffix, vsuf_1, vsuf_2, vsuf_3): Remove.
	(cpp_classify_number, cpp_interpret_integer): New.
	(interpret_number): Remove.
	(eval_token): Update to use new routines.
	* cpphash.h (cpp_num_part): Move to cpplib.h.
	* cppinit.c (cpp_post_options): Set warn_long_long.
	* cpplib.h (struct cpp_options): Add warn_long_long.
	(cpp_num, cpp_num_part, CPP_N_CATEGORY, CPP_N_INVALID,
	CPP_N_INTEGER, CPP_N_FLOATING, CPP_N_WIDTH, CPP_N_SMALL,
	CPP_N_MEDIUM, CPP_N_LARGE, CPP_N_RADIX, CPP_N_DEC, CPP_N_HEX,
	CPP_N_OCTAL, CPP_N_UNSIGNED, CPP_N_IMAGINARY, cpp_classify_number,
	cpp_interpret_integer): New.
testsuite:
	* gcc.dg/cpp/c++98-pedantic.c, gcc.dg/cpp/c89-pedantic.c,
	gcc.dg/cpp/c94-pedantic.c, gcc.dg/cpp/gnuc89-pedantic.c,
	gcc.dg/cpp/if-1.c: Update for modified diagnostics.

Co-Authored-By: Zack Weinberg <zack@codesourcery.com>

From-SVN: r54007
2002-05-29 17:15:42 +00:00
Neil Booth
bdee42b16c cpperror.c (_cpp_begin_message): No special casing of CPP_FATAL_LIMIT.
* cpperror.c (_cpp_begin_message): No special casing
	of CPP_FATAL_LIMIT.
	* cppinit.c (sanity_checks): s/DL_FATAL/DL_ICE/.
	(output_deps, cpp_handle_option, cpp_post_options): Use DL_ERROR.
	* cpplib.c (do_include_common): Use DL_ERROR.
	* cpplib.h (CPP_FATAL_LIMIT, CPP_FATAL_ERRORS, DL_FATAL): Remove.
	(DL_ICE): Renumber.
	* fix-header.c (read_scan_file): Update.

From-SVN: r53765
2002-05-23 06:07:45 +00:00
Neil Booth
004cb26351 Makefile.in: Update for cpptrad.c.
* Makefile.in: Update for cpptrad.c.
	* cpphash.h (struct cpp_buffer): New members for buffer
	overlays.
	(struct cpp_reader): New members for traditional output.
	(_cpp_read_logical_line, _cpp_overlay_buffer): New.
	* cppinit.c (cpp_create_reader): Set trad_line.
	(cpp_destroy): Free trad_out_base if used.
	(cpp_read_main_file): Overlay an empty buffer if traditional.
	(cpp_finish_options): Don't do builtins.
	(COMMAND_LINE_OPTIONS): Add -traditional-cpp.
	(cpp_handle_option): Handle it.
	* cpplex.c (continue_after_nul): New.
	(_cpp_lex_direct): Use handle_nul.
	* cpplib.h (struct cpp_options): New traditional option.
	* cpptrad.c: New file.

From-SVN: r53568
2002-05-17 20:16:48 +00:00
Neil Booth
bdcae02bc4 c-common.c (c_common_init_options): Use C89 for Objective-C, and set the options flag.
* c-common.c (c_common_init_options): Use C89 for Objective-C,
	and set the options flag.
	* cppinit.c (lang_flags): Remove objc.
	(lang_defaults): Remove OBJC and OBJCXX.
	(set_lang): Update.
	(COMMAND_LINE_OPTIONS): Remove -+ and -lang-objc++.
	(cpp_handle_option): Remove -+ and -lang-objc++.
	For ObjC, just set a flag.
	(print_help): Update.
	* cpplib.h (enum c_lang): Remove CLK_OBJC and CLK_OBJCXX.

From-SVN: r53566
2002-05-17 19:37:43 +00:00
Zack Weinberg
5279d7394e c-common.c (STDC_0_IN_SYSTEM_HEADERS, [...]): Default-define here.
* c-common.c (STDC_0_IN_SYSTEM_HEADERS, REGISTER_PREFIX):
	Default-define here.
	(builtin_define_with_value): Can now wrap the expansion in
	quotation marks if such is wanted.
	(cb_register_builtins): Update calls to	builtin_define_with_value.
	Define __REGISTER_PREFIX__, __USER_LABEL_PREFIX__, and __VERSION__
	here.
	(c_common_init): Set options->stdc_0_in_system_headers.
	* c-lex.h: Update prototype of builtin_define_with_value.
	* cppdefault.h: Remove default definitions of USER_LABEL_PREFIX
	and REGISTER_PREFIX.

	* cppinit.c (VERS, ULP, C, X): Kill.
	(builtin_array): Remove entries for __VERSION__,
	__USER_LABEL_PREFIX__, __REGISTER_PREFIX__, and
	__HAVE_BUILTIN_SETJMP__.  Make __STDC__ always a builtin, not
	a constant.
	(init_builtins): Kill off a bunch of now-dead code.
	(COMMAND_LINE_OPTIONS): Remove -fleading-underscore and
	-fno-leading-underscore.
	(cpp_handle_option): Remove code to set user_label_prefix.
	(cpp_post_options): Likewise.

	* cpplib.h (struct cpp_options): Remove user_label_prefix.
	(stdc_0_in_system_headers): New.
	* cppmacro.c (builtin_macro): Check CPP_OPTION (pfile,
	stdc_0_in_system_headers) too to decide the value of __STDC__.

	* tradcpp.c (user_label_prefix): Kill.
	(main): Remove code handling -f(no-)leading-underscore.
	(initialize_builtins): Don't define __REGISTER_PREFIX__
	or __USER_LABEL_PREFIX__.
	(install_value): Wrap compound statement in dummy loop so the
	macro works properly in an if statement.

From-SVN: r53525
2002-05-16 19:03:02 +00:00
Neil Booth
44a147ad2e c-common.c (c_common_init): Set options->unsigned_wchar.
* c-common.c (c_common_init): Set options->unsigned_wchar.
	* cppinit.c (cpp_create_reader): Default unsigned_wchar,
	group target dependencies.
	(init_builtins, cpp_handle_option): Update.
	* cpplex.c (cpp_interpret_charconst): Update.
	* cpplib.h (struct cpp_options): Add unsigned_wchar, rename
	signed_char to unsigned_char, group target dependencies.
	* defaults.h (WCHAR_UNSIGNED): Remove.
	* system.h (WCHAR_UNSIGNED, MAX_CHAR_TYPE_SIZE): Poison.
config:
	* freebsd.h, interix.h, alpha/freebsd.h, arm/freebsd.h,
	i386/386bsd.h, i386/beos-elf.h, i386/bsd386.h, i386/cygwin.h,
	i386/djgpp.h, i386/freebsd-aout.h, i386/i386-interix.h,
	i386/win32.h, ia64/freebsd.h, mips/netbsd.h, rs6000/freebsd.h,
	sh/elf.h, sh/sh.h, sparc/freebsd.h: Remove WCHAR_UNSIGNED.
doc:
	* tm.texi: Remove MAX_CHAR_TYPE_SIZE.

From-SVN: r53271
2002-05-07 21:07:24 +00:00
Neil Booth
a5a49440f7 c-common.c (warn_multichar): New.
* c-common.c (warn_multichar): New.
	(c_common_init): Set CPP's warn_multichar.
	* c-common.h (warn_multichar): New.
	* c-decl.c (warn_multichar): Remove.
	* c-lex.c (lex_charconst): Update.
	* c-tree.h (warn_multichar): Remove.
	* cppexp.c (eval_token): Sign-extend charconst value.
	* cppinit.c (cpp_create_reader): Set warn_multichar.
	* cpplex.c (cpp_interpret_charconst): Don't sign-extend
	each character.  Update prototype.  Sign-extend the result.
	* cpplib.h: Fix conditions.
	(struct cpp_options): Add new warning flag.
	(cpp_interpret_charconst): Update prototype.
cp:
	* Make-lang.in (decl2.o): Update.
	* cp-tree.h (warn_multichar): Remove.
	* decl2.c: Include c-common.h.
	(warn_multichar): Remove.
doc:
	* cpp.texi: Update documentation.
testsuite:
	* gcc.dg/cpp/charconst-3.c: Correct tests accordingly.

From-SVN: r53240
2002-05-06 22:53:10 +00:00
Neil Booth
2443d4e110 c-common.c (c_common_init): Set up CPP arithmetic.
* c-common.c (c_common_init): Set up CPP arithmetic.
	* cppinit.c (cpp_create_reader): Default CPP arithmetic to
	something reasonable for the host.
	(sanity_checks): Add checks.
	(cpp_read_main_file): Call sanity_checks() from here...
	(cpp_post_options): ... not here.
	* cpplex.c (cpp_interpret_charconst): Get max_chars right.
	* cpplib.h (struct cpp_options): New member int_precision.
testsuite:
	* gcc.dg/cpp/charconst.c: Update tests.

From-SVN: r53186
2002-05-05 17:05:09 +00:00
Neil Booth
3d90d2908e Makefile.in (c-lex.o): Update.
* Makefile.in (c-lex.o): Update.
	* c-lex.c: Include target.h.
	(cb_register_builtins): New.
	(init_c_lex): Set builtins callback.
	* c-lex.h (cpp_define, cpp_assert): New prototypes.
	* cppinit.c (init_builtins): Use callback, including for
	GXX_WEAK.
	* cpplib.h (struct cpp_callbacks): New member.
	* target-def.h (TARGET_REGISTER_CPP_BUILTINS): New.
	(TARGET_INITIALIZER): Update.
	* target.h (struct gcc_target): New hook.
	* tree.c (default_register_cpp_builtins): New.
	* tree.h (default_register_cpp_builtins): New.
doc:
	* tm.texi (TARGET_REGISTER_CPP_BUILTINS): Document.

From-SVN: r53165
2002-05-04 20:15:00 +00:00
Neil Booth
625458d0b9 cppinit.c (MAX_WCHAR_TYPE_SIZE): Move to cpplib.h
* cppinit.c (MAX_WCHAR_TYPE_SIZE): Move to cpplib.h
	(cpp_post_options): Move sanity checks to...
	(sanity_checks): New.
	* cpplex.c (maybe_read_ucs): Fix prototype.
	(parse_string, cpp_parse_escape): Cast for %c format specifier.
	* cpplib.h (cppchar_t): Use unsigned long or unsigned long long
	if necessary.

From-SVN: r53163
2002-05-04 19:42:01 +00:00
Neil Booth
4268e8bb94 c-lex.c (lex_string): Let cpp_parse_escape handles truncation and sign-extension.
* c-lex.c (lex_string): Let cpp_parse_escape handles truncation
	and sign-extension.
	(lex_charconst): Update for change in prototype of
	cpp_interpret_charconst.  Extend from cppchar_t to HOST_WIDE_INT
	appropriately.
	* cpphash.h (BITS_PER_CPPCHAR_T): New.
	* cppinit.c (cpp_create_reader): Initialize them for no
	change in semantics.
	(cpp_post_options): Add sanity checks.
	* cpplex.c (cpp_parse_escape): Handle precision, sign-extension
	and truncation issues.  Calculate in type cppchar_t.
	(MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): Remove.
	(cpp_interpret_charconst): Calculate in type cppchar_t.  Handle
	run-time dependent precision correctly.  Return whether the
	result is signed or not.
	* cpplib.c (dequote_string): Use cppchar_t; update.
	* cpplib.h (cppchar_signed_t): New.
	struct cpp_options): New precision members.
	(cpp_interpret_charconst, cpp_parse_escape): Update prototypes.

From-SVN: r53152
2002-05-04 07:30:32 +00:00
Neil Booth
87ed109f1f cppexp.c (lex): Update to use state.skip_eval.
* cppexp.c (lex): Update to use state.skip_eval.
	(struct op): Remove prio and flags members.
	(FLAG_BITS, FLAG_MASK, PRIO_SHIFT, EXTRACT_PRIO, EXTRACT_FLAGS,
	SHORT_CIRCUIT, RIGHT_ASSOC, ..._PRIO, op_to_prio): Remove.
	(LEFT_ASSOC): New macro.
	(optab): New table of operator priorities and flags.
	(SHIFT): Update.
	(_cpp_parse_expr): Clean up logic.  Return bool.  Use a
	malloc-ed parser stack.
	(reduce): New; reduce the operator stack.
	(_cpp_expand_op_stack): Expand the operator stack as necessary.
	* cpphash.h (struct op): Predeclare.
	(struct cpp_reader): New members op_stack, op_limit.
	(struct lexer_state): New member skip_eval.
	(_cpp_parse_expr): Update.
	(_cpp_expand_op_stack): New.
	* cpplib.c (do_if): Update.
	* cppinit.c (cpp_create_reader): Create op stack.
	(cpp_destroy): And destroy it.
	* cpplib.h (CPP_LAST_CPP_OP): Correct.
	(TTYPE_TABLE): Correct.
testsuite:
	* gcc.dg/cpp/if-mop.c: Update.
	* gcc.dg/cpp/if-mpar.c: Add test.
	* gcc.dg/cpp/if-oppr.c: Update.

From-SVN: r52853
2002-04-28 19:42:54 +00:00
Neil Booth
f8b954fcdc cppexp.c (CPP_UMINUS, CPP_UPLUS): New.
* cppexp.c (CPP_UMINUS, CPP_UPLUS): New.
	(HAVE_NO_R_OPERAND): Remove.
	(HAVE_VALUE): Remove.
	(op_to_prio): Update.
	(UNARY): Don't alter flags.
	(_cpp_parse_expr): want_value used to indicate whether
	a number or unary operator is expected next.  Distinguish
	unary and binary +/-.
	(op_as_text): Update for unary operators.

From-SVN: r52780
2002-04-26 06:32:50 +00:00
Matthew Hiller
64cdc38350 cpplex.c: Remove conditional #undef of MULTIBYTE_CHARS.
2002-04-24  Matt Hiller  <hiller@redhat.com>

	* cpplex.c: Remove conditional #undef of MULTIBYTE_CHARS.
	* c-lex.c: Ditto.

	* cpplex.c (skip_line_comment): Process comment one multibyte
	character at a time rather than one char at a time, if
	appropriate.
	(parse_string): Process string one multibyte character at a time
	rather than one char at a time, if appropriate.
	* c-lex.c (lex_string): Lex and copy multibyte strings
	appropriately.
	* cpplib.h (cppchar_t): Change to unsigned.

From-SVN: r52737
2002-04-24 22:18:25 +00:00
Neil Booth
ebef4e8ca7 cpperror.c (print_location): Don't print include chain if line == 0.
* cpperror.c (print_location): Don't print include chain
	if line == 0.
	(cpp_begin_message): Update to use DL_ macros.
	(cpp_ice, cpp_fatal, cpp_error_from_errno, cpp_warning,
	cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
	cpp_notice, cpp_notice_from_errno): Remove.
	(cpp_error, cpp_error_with_line): Update to take a diagnostic
	level.
	(cpp_errno): New.
	* cppexp.c (CPP_ICE): Remove.
	(SYNTAX_ERROR, SYNTAX_ERROR2, parse_number, parse_defined,
	lex, integer_overflow, _cpp_parse_expr): Update.
	* cppfiles.c (read_include_file, find_include_file,
	handle_missing_header, _cpp_read_file, remap_filename): Update.
	* cpphash.h (enum error_type): Remove.
	(_cpp_begin_message): Update.
	* cppinit.c (append_include_chain, remove_dup_dirs, output_deps,
	cpp_handle_option, cpp_post_options): Update.
	* cpplex.c (trigraph_p, skip_escaped_newlines, skip_block_comment,
	skip_whitespace, parse_identifier, parse_slow, parse_string,
	_cpp_lex_direct, cpp_spell_token, maybe_read_ucs, cpp_parse_escape,
	cpp_interpret_charconst): Update.
	* cpplib.c (check_eol, directive_diagnostics, _cpp_handle_directive,
	lex_macro_node, do_undef, glue_header_name, parse_include,
	do_include_common, read_flag, do_line, do_linemarker, do_ident,
	cpp_register_pragma, do_pragma_once, do_pragma_system_header,
	do_pragma_poison, do_pragma_dependency, _cpp_do__Pragma, do_else,
	do_elif, do_endif, parse_answer, parse_assertion, do_assert,
	_cpp_pop_buffer, do_diagnostic): Update.
	* cpplib.h (DL_WARNING, DL_WARNING_SYSHDR, DL_PEDWARN, DL_ERROR,
	DL_FATAL, DL_ICE, DL_EXTRACT, DL_WARNING_P): New.
	(cpp_ice, cpp_fatal, cpp_error_from_errno, cpp_warning,
	cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
	cpp_notice, cpp_notice_from_errno): Remove.
	(cpp_error, cpp_error_with_line): Update to take a diagnostic
	level.
	(cpp_errno): New.
	* cppmacro.c (builtin_macro, stringify_arg, paste_all_tokens,
	collect_args, enter_macro_context, save_parameter, parse_params,
	_cpp_create_definition, check_trad_stringification,
	cpp_macro_definition): Update.
	* cppmain.c (cpp_preprocess_file): Update.
	* fix-header.c (read_scan_file): Update.

From-SVN: r52302
2002-04-14 18:42:47 +00:00