Age | Commit message (Collapse) | Author | Files | Lines |
|
* cccp.c (sys_errlist): Remove special 4.4bsd declaration.
* collect2.c (sys_errlist): Likewise.
* cpplib.c (sys_errlist): Likewise.
* gcc.c (sys_errlist): Likewise.
* protoize (sys_errlist): Likewise.
* configure.in: Check for strerror.
* xm-freebsd.h (HAVE_STRERROR): Remove definition.
* xm-gnu.h (HAVE_STRERROR): Likewise.
* xm-linux.h (HAVE_STRERROR): Likewise.
* xm-netbsd.h (HAVE_STRERROR): Likewise.
* xm-bsd386.h (HAVE_STRERROR): Likewise.
* xm-cygwin32.h (HAVE_STRERROR): Likewise.
* xm-dos.h (HAVE_STRERROR): Likewise.
* xm-mingw32.h (HAVE_STRERROR): Likewise.
* xm-pa.h (HAVE_STRERROR): Likewise.
* xm-papro.h (HAVE_STRERROR): Likewise.
* xm-sysv4.h (HAVE_STRERROR): Likewise.
* configure, config.in: Rebuilt.
Remove the need to define HAVE_STRERROR for each host port.
From-SVN: r15011
|
|
From-SVN: r14408
|
|
From-SVN: r14339
|
|
(safe_write): If MAX_WRITE_LEN is defined, limit
incremental write attempts to that amount.
(safe_read): Analogous situation for MAX_READ_LEN.
From-SVN: r14092
|
|
From-SVN: r14023
|
|
system header.
(do_include): Diagnose #import and #include_next if pedantic and if
not in a system header.
(do_warning): #warning now causes an error if -pedantic-errors is
given; this is needed since #warning isn't ANSI.
From-SVN: r13887
|
|
(main): Set warn_undef from -Wundef and -Wno-undef.
From-SVN: r13876
|
|
From-SVN: r13752
|
|
analyzing directives like `#line 0'.
From-SVN: r13751
|
|
(main): Set it to 1 if -lang-c89.
From-SVN: r13747
|
|
(BSTRING): Delete (obsolete; usage occurs prior to definition).
(do_include): Handle old VAX C style includes better.
From-SVN: r13721
|
|
(check_macro_name, collect_expansion, rescan): Likewise.
From-SVN: r13659
|
|
(is_hor_space): Now static.
From-SVN: r13653
|
|
token-pasting (e.g.
(rescan): Insert a space after `.' as well, to prevent accidental
token-pasting (e.g. `.x' -> `.10').
From-SVN: r13578
|
|
not 2.6.
From-SVN: r13522
|
|
From-SVN: r13362
|
|
(include_defaults_array): Do not use LOCAL_INCLUDE_DIR or
TOOL_INCLUDE_DIR if they are not defined.
From-SVN: r13238
|
|
From-SVN: r12939
|
|
(main): Initialize is_idchar and is_idstart directly when given -$.
Ignore DOLLARS_IN_IDENTIFIERS.
(rescan): Diagnose $ in identifier if pedantic.
(initialize_char_syntax): Assume $ is allowed in identifier; `main' will
change this if -$ is given.
From-SVN: r12934
|
|
#define and 2 for #pragma.
(struct directive, directive_table, handle_directive): pass_thru now 1 for
#define and 2 for #pragma.
(handle_directive): When deciding whether to suppress comment at end of
directive, ignore tabs and spaces after comment. Remove redundant limit test.
With -dD -C, copy comment when isolating definition.
(skip_to_end_of_comment): With -C, don't copy newline at end of C++ comment.
From-SVN: r12831
|
|
cygwin32.
* cccp.c (absolute_filename): Drive specifiers make the pathname
absolute in cygwin32.
From-SVN: r12655
|
|
From-SVN: r12390
|
|
From-SVN: r12327
|
|
OLD_GPLUSPLUS_INCLUDE_DIR.
From-SVN: r11930
|
|
Handle multiple adjacent backslash-newlines correctly.
Accept a new parameter LIMIT to specify end of input;
this prevents confusion when the input contains '\0' characters.
(collect_expansion): Fix off-by-1 error when searching for `*/'
at end of a comment used for traditional token concatenation.
(macarg1): Fix off-by-1 error when skipping past `*/'
at end of comment.
From-SVN: r11330
|
|
From-SVN: r11114
|
|
(parse_escape, parse_c_expression, eval_if_expression, get_lintcmd, do_line,
do_if, do_elif): Replace `long' with `HOST_WIDE_INT'.
(trigraph_pcp): Don't assume a pointer difference fits in an int.
From-SVN: r11060
|
|
(pcfinclude): Use HOST_WIDE_INT for casting pointer to integer.
From-SVN: r11037
|
|
From-SVN: r11032
|
|
(parse_escape, parse_c_expression, eval_if_expression):
Change return type to `long'; all callers changed.
(pcfinclude): Use `int', not HOST_WIDE_INT; any integral type will do.
From-SVN: r11025
|
|
skipped multiline strings elicit a warning, not an error.
(rescan): Minor code reorg to keep it parallel with skip_quoted_string.
From-SVN: r11023
|
|
warning was issued if not pedantic.
From-SVN: r10992
|
|
be diagnosed properly.
From-SVN: r10903
|
|
(new_include_prefix): Don't try to stat dir prefixes in VMS.
From-SVN: r10890
|
|
Simplify include file names so that they are more likely to match.
E.g. simplify "./a//b" to "a/b". Represent directories with simplified
prefixes, e.g. replace "./a//b" with "a/b/", and "." with "".
(absolute_filename): New function.
(do_include): Use it.
(read_name_map): Likewise; this makes things more consistent for DOS.
(main, do_include, open_include_file): -M output now contains operands
of -imacros and -include.
(skip_to_end_of_comment): When copying a // comment, don't try to
change it to a /* comment.
(rescan, skip_if_group, skip_to_end_of_comment, macarg1): Tune.
(rescan, skip_if_group, skip_to_end_of_comment, macarg1):
If warn_comments is nonzero, warn if backslash-newline appears
in a // comment. Simplify method for finding /* /* */ comment.
(skip_if_group): Optionally warn if /* /* */ appears between # and
a directive inside a skipped if group.
(macarg): Optionally warn if /* /* */ appears in a macro argument.
(strncat, VMS_strncat, vms_ino_t, ino_t): Remove.
(INCLUDE_LEN_FUDGE): Add 2 if VMS, for trailing ".h".
(INO_T_EQ, INO_T_HASH): New macros.
(struct file_buf): New member `inc'.
(expand_to_temp_buffer): Initialize it.
(struct file_name_list): New member `inc'.
(struct file_name_list): New member `st'.
c_system_include_path is now 1 if not 0.
fname is now an array, not a pointer.
(struct include_file): New members `next_ino', `deps_output', `st'.
Remove members `inode' and `dev'; they are now in `st'.
(INCLUDE_HASHSIZE): Rename from INCLUDE_HASH_SIZE.
(include_hashtab): Rename from include_hash_table.
(include_ino_hashtab): New variable.
(main): Store file status in struct stat, not in long and int pieces.
Use base_name to strip prefixes from file names.
When printing directory prefixes, omit trailing / and print "" as ".".
Fatal error if the input file is a directory.
(main, path_include): Regularize operands of -include, -imacros,
-isystem, -iwithprefix, and -iwithprefixbefore.
Regularize default include directories.
(do_include):
Allocate dsp with alloca, since fname is now dynamically allocated.
Use -3 to represent a never-opened file descriptor.
Make copy of file name, and simplify the copy.
Use base_name to identify the end of fname's directory.
Do not prepend dir for "..." if it matches the search list's first dir.
open_include_file now subsumes redundant_include_p and lookup_import.
Use bypass_slot to remember when to skip directories when including
a file that has already been seen.
Instead of using 0 to represent the working directory, and ""
to represent a directory to be ignored, use "" for the former,
and assume the latter has been removed before we get here.
Assume the directory prefixes have already been simplified.
Report as errors all open failures other than ENOENT.
Fatal error if fstat fails.
Use new deps_output member to avoid printing dependencies twice.
(bypass_hashtab): New variable.
(do_include, open_control_file, record_control_macro): New convention:
control_macro is "" if the file was imported or had #pragma once.
(pragma_once_marker): Remove.
(redundant_include_p, include_hash, lookup_include, lookup_import,
add_import, file_size_and_mode): Remove; subsumed by open_include_file.
(skip_redundant_dir_prefix): Remove; subsumed by simplify_filename.
(is_system_include, read_name_map, remap_include_file):
Assume arg is a directory prefix.
(base_name, simplify_filename, remap_include_file,
lookup_ino_include, new_include_prefix): New functions.
(open_include_file): New arguments `importing' and `pinc'.
Move filename mapping into new remap_include_file function.
First try to find file by name in include_hashtab;
if that doesn't work, open and fstat it and try to find it
by inode and dev in include_ino_hashtab.
(finclude): Get file status from inc->st instead of invoking fstat.
Store inc into fp->inc so that record_control_macro doesn't
need to do a table lookup.
(finclude, record_control_macro): Accept struct include_file *
instead of char * to identify include file. All callers changed.
(check_precompiled): Get file status from new argument `st'.
(do_pragma): Output at most one warning about #pragma implementation.
Always return 0 instead of returning garbage sometimes.
(do_pragma, hack_vms_include_specification):
Use base_name for consistency, and remove redundant code.
From Per Bothner:
Unify the 3 separate mechanisms for avoiding processing
of redundant include files: #import, #pragma once, and
redundant_include_p to use a single more efficient data structure.
(struct file_name_list): Remove no-longer needed field control_macro.
(dont_repeat_files, all_include_files): Remove, no longer used.
(struct import_file): Renmed to struct include_file, moved earlier
in file, renamed field name to fname, and added control_macro field.
(pragma_once_marker): New constant.
(import_hash_table): Renamed to include_hash_table.
(import_hash): Renamed to include_hash.
(IMPORT_HASH_SIZE): Renamed to INCLUDE_HASH_SIZE.
(main, path_include): Don't clear removed control_macro field.
(lookup_include): New function - look up fname in include_hash_table.
(redundant_include_p): Re-write to use lookup_include.
(lookup_import, record_control_macro): Likewise.
(add_import): Defer fstat to caller. Combine two xmallocs into one.
(do_once): Use pragma_once_marker in include_hash_table.
(do_pragma): Re-implement to scan include_hash_table.
(do_include): Use new lookup_include and add_import.
From-SVN: r10784
|
|
From-SVN: r10631
|
|
white space around a backslash-newline.
From-SVN: r10519
|
|
preprocessor directives within macro args.
(rescan): Expand `#if foo && #bar' without a bogus complaint about preprocessor
directives within macro args.
Expand `foo' in `foo#bar' without requiring a space before `#'.
From-SVN: r10412
|
|
From-SVN: r10348
|
|
defined (__STDC__).
From-SVN: r10245
|
|
(trigraph_pcp): Use it, to avoid reporting line number.
(vwarning_with_line): Don't report line number if zero.
From-SVN: r10217
|
|
makes sense.
(do_include, read_name_map): Omit leading "./" and trailing "/" when
it makes sense.
(skip_redundant_dir_prefix): New function.
From-SVN: r10163
|
|
(output_dots): Remove.
From-SVN: r10150
|
|
But clear it if -traditional or the new option -lang-c89 is given.
From-SVN: r10148
|
|
comments.
From-SVN: r10118
|
|
From-SVN: r10012
|
|
From-SVN: r9959
|
|
From-SVN: r9725
|
|
From-SVN: r9711
|
|
(special_symbol): Handle it; emit value of IMMEDIATE_PREFIX.
(IMMEDIATE_PREFIX): Default to empty string.
(initialize_builtins): Install __IMMEDIATE_PREFIX__ builtin, parallel to
__REGISTER_PREFIX__.
From-SVN: r9661
|