Go to file
Zack Weinberg ba412f14ad cpplib.h (CPP_ASSERTION, [...]): New token types.
* cpplib.h (CPP_ASSERTION, CPP_STRINGIZE, CPP_TOKPASTE): New
	token types.
	(struct cpp_reader): Add parsing_if_directive and
	parsing_define_directive flags.
	(struct cpp_options): Remove output_conditionals flag.
	(check_macro_name): Delete prototype.

	* cpphash.h (struct macrodef): Delete.
	(struct reflist): Separate from struct definition.
	(struct definition): Remove unused fields.  Add column number.
	(create_definition): Returns a DEFINITION *.  Takes a
	cpp_reader * and an int.

	* cpphash.c (SKIP_WHITE_SPACE): Delete.
	(PEEKC): Copy defn from cpplib.c.
	(rest_extension, REST_EXTENSION_LENGTH): Delete.
	(struct arg): New.
	(struct arglist): Simplify.
	(collect_expansion): Rewrite.  Get tokens by calling
	cpp_get_token.  Add more error checking.
	(collect_formal_parameters): New function, broken out of
	create_definition and reworked to use get_directive_token.
	(create_definition): All real work is now in collect_expansion
	and collect_formal_parameters.  do_define handles finding the
	macro name.  Return a DEFINITION, not a MACRODEF.
	(macroexpand): Replace bcopy with memcpy throughout.  Replace
	character-at-a-time copy loop with memcpy and pointer increments.
	(compare-defs): d1->argnames / d2->argnames might be null.

	* cpplib.c (copy_rest_of_line): Delete function.
	(skip_rest_of_line): Do all the work ourselves.
	(skip_string): New function.
	(parse_string): Use skip_string.
	(get_macro_name): New function.
	(check_macro_name): Delete.
	(copy_comment): Use CPP_RESERVE and CPP_PUTC_Q.
	(cpp_skip_hspace): Use CPP_BUMP_LINE.
	(handle_directive): ICE if we're called on a macro buffer.
	(do_define): Determine macro name and type (funlike/objlike)
	here.  Expunge all uses of MACRODEF.
	(cpp_push_buffer): Set line_base to NULL.
	(do_undef, read_line_number): Don't worry about getting a POP token.
	(eval_if_expression): Set/reset parsing_if_directive around
	cpp_parse_expr. Don't clear only_seen_white.
	(skip_if_group): Remove output_conditionals logic.  Use
	skip_rest_of_line.
	(cpp_get_token): Return ASSERTION, STRINGIZE, and TOKPASTE
	tokens under appropriate conditions.
	(cpp_unassert): Call do_unassert not do_assert.  Oops.

	* cppexp.c (parse_defined): New function, break out of
	cpp_lex.
	(cpp_lex): We now get CPP_ASSERTION tokens and can check them
	ourselves, with cpp_defined.
	* cppinit.c (cpp_handle_option, print_help): Delete -ifoutput.

	* gcc.dg/20000209-2.c: Turn off -pedantic-errors.
	* gcc.dg/strpaste-2.c: New.

From-SVN: r32274
2000-03-01 00:57:09 +00:00
boehm-gc gc.h (dlopen): Define as GC_dlopen on Linux. 2000-02-14 21:53:27 +00:00
config Add support for sh-pe and arm-wince-pe targets. 2000-02-23 01:25:56 +00:00
contrib newcvsroot: Add check on the number of command-line arguments. 1999-12-18 14:34:56 +00:00
etc
gcc cpplib.h (CPP_ASSERTION, [...]): New token types. 2000-03-01 00:57:09 +00:00
include symcat.h (STRINGX): Change "?" to "s" to stringify argument s. 2000-01-01 17:26:13 +00:00
INSTALL
libchill
libf2c Daily bump. 2000-02-29 01:45:07 -07:00
libffi ffi.c, [...]: New files. 2000-02-25 19:13:44 +00:00
libiberty pexecute.c: Conditionally include string.h. 2000-01-04 21:09:51 +00:00
libio fstream.h (ifstream::ifstream): Add ios::in to mode. 2000-01-28 09:55:33 +00:00
libjava THANKS updates 2000-02-29 17:11:46 +00:00
libobjc Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS. 2000-02-23 08:43:44 +00:00
libstdc++ stl_iterator.h: Make it possible to use standard class `iterator'. 2000-01-24 11:25:23 +00:00
texinfo
zlib
.cvsignore
ChangeLog Makefile.in (CC_FOR_TARGET): Add new winsup directory structure stuff to -L library search. 2000-02-26 13:04:50 -07:00
config-ml.in
config.guess config.guess: Synchronize with master repository. 2000-02-16 18:48:36 +00:00
config.if
config.sub Add support for an OS of "wince" 2000-02-24 21:21:31 +00:00
configure configure (gcc_version): When setting, narrow search to lines containing `version_string'. 2000-02-16 16:22:47 +00:00
configure.in Add support for sh-pe and arm-wince-pe targets. 2000-02-23 01:25:56 +00:00
COPYING
COPYING.LIB
install-sh
ltconfig
ltmain.sh
MAINTAINERS Obvious, micro-change: "Vladimir Markarov" -> "Vladimir Makarov". 2000-02-28 15:09:59 +00:00
Makefile.in Makefile.in (CC_FOR_TARGET): Add new winsup directory structure stuff to -L library search. 2000-02-26 13:04:50 -07:00
missing
mkinstalldirs
move-if-change
README
symlink-tree
ylwrap

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.


Check the INSTALL directory for detailed configuration and installation
instructions.


Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.