Go to file
Matt Austern c162c75e43 c-common.c (fix_string_type): Build the unqualified array type unconditionally...
2004-09-20  Matt Austern <austern@apple.com>
	    Zack Weinberg  <zack@codesourcery.com>

	* c-common.c (fix_string_type): Build the unqualified array
	type unconditionally, then use c_build_qualified_type to get
	the proper const-qualified variant, and set its
	TYPE_MAIN_VARIANT to refer to the unqualified type.
	* c-lex.c (c_lex_return_raw_string): New global.
	(c_lex_with_flags): Honor it.
	* c-pragma.h: Declare it.

cp:
	* decl.c (make_rtl_for_nonlocal_decl, start_preparsed_function):
	Apply lbasename to input_filename before passing to get_fileinfo.
	* semantics.c (begin_class_definition): Likewise.
	* lex.c (handle_pragma_interface): Apply get_fileinfo to the
	correct filename.  Rename variables to be less confusing.
	(handle_pragma_implementation): Likewise.  Disable "appears
	after file is included" diagnostic.

	* parser.c (struct cp_token): Add in_system_header fiag.
	(CP_TOKEN_BLOCK_NUM_TOKENS, struct cp_token_block)
	(CP_TOKEN_BUFFER_SIZE, cp_token_cache_push_token)
	(CPP_NONE, cp_lexer_read_token): Delete.
	(struct cp_lexer): Remove first_token, string_tokens,
	main_lexer_p fields.  Clarify comments.
	(struct cp_token_cache): Now just a pair of pointers.
	(CP_LEXER_BUFFER_SIZE): New #define.
	(CPP_PURGED): New fake token type.
	(cp_lexer_new_from_token_array, cp_lexer_destroy)
	(cp_lexer_peek_token_emit_debug_info, cp_lexer_skip_purged_tokens)
	(cp_lexer_handle_pragma, cp_token_cache_new, cp_parser_string_literal):
	New functions.
	(cp_lexer_new_from_tokens): Now a simple wrapper around
	cp_lexer_new_from_token_array.
	(cp_lexer_set_source_position_from_token): Also update
	in_system_header.
	(cp_lexer_next_token, cp_lexer_prev_token, cp_lexer_advance_token):
	Don't wrap round.
	(cp_lexer_token_difference): Dont handle wrapping round.
	(cp_lexer_new_main): Enable pragma deferral and raw strings,
	read the entire translation unit through c_lex_with_flags into
	this lexer's buffer, then turn raw strings back off again.
	(cp_lexer_grow_buffer): Adjust for buffer no longer being circular.
	(cp_lexer_get_preprocessor_token): No need to handle not being
	the main lexer.  Set token->in_system_header too.
	(cp_lexer_peek_token): Skip purged tokens.  Feed pragma tokens
	to cp_lexer_handle_pragma.  No need to call cp_lexer_read_token.
	(cp_lexer_peek_nth_token): Likewise.
	(cp_lexer_purge_token): Mark the token PURGED, don't shift all
	the other tokens down.
	(cp_lexer_purge_tokens_after): Likewise.
	(cp_lexer_save_tokens, cp_lexer_rollback_tokens): Don't worry
	about there being no tokens.
	(cp_lexer_print_token): Revise to give useful information on
	all tokens.
	(struct cp_parser): Add field translate_strings_p.
	(cp_parser_new): Initialize it.
	(cp_parser_translation_unit): Destroy the lexer when done.
	(cp_parser_parameter_declaration): Restructure saving of
	default arguments.
	(cp_parser_save_member_function_body): Likewise.
	(cp_parser_check_for_invalid_template_id)
	(cp_parser_nested_name_specifier_opt, cp_parser_template_id):
	Adjust calls to cp_lexer_advance_token.
	(cp_parser_skip_to_closing_parenthesis, cp_parser_declaration):
	No need to fiddle c_lex_string_translate.
	(cp_parser_primary_expression, cp_parser_linkage_specification)
	(cp_parser_asm_definition, cp_parser_asm_specification_opt)
	(cp_parser_asm_operand_list, cp_parser_asm_clobber_list)
	Use cp_parser_string_literal.
	(cp_parser_attribute_list): Save and restore
	parser->translate_strings_p, not c_lex_string_translate.
	(cp_parser_cache_group): Delete.
	(cp_parser_cache_group_1): Rename cp_parser_cache_group.  Do
	not take a cache argument.

From-SVN: r87786
2004-09-21 02:22:45 +00:00
INSTALL README: Update wrt. 2001-06-13 14:51:33 +00:00
boehm-gc backgraph.c, gc_priv.h (GC_traverse_back_graph, [...]): split GC_traverse_back_graph. 2004-08-28 00:41:41 +00:00
config mh-x86omitfp: New host makefile fragment. 2004-09-20 00:58:42 +00:00
contrib Made fixincludes a toplevel build module. 2004-08-31 09:27:00 +00:00
fastjar re PR bootstrap/16164 (automake 1.8.5 upgrade changed fastjar into a read-write source directory) 2004-08-11 00:56:23 +00:00
fixincludes inclhack.def (linux_ia64_ucontext): New fix. 2004-09-17 22:58:40 +00:00
gcc c-common.c (fix_string_type): Build the unqualified array type unconditionally... 2004-09-21 02:22:45 +00:00
include Spacing bug. 2004-09-13 21:14:58 -04:00
intl Makefile.in (top_builddir): Define to . 2004-05-25 20:16:56 +00:00
libada * Makefile.in: Add .NOEXPORT. 2004-05-25 19:37:02 +00:00
libcpp * charset.c (_cpp_destroy_iconv, emit_numeric_escape) 2004-09-18 00:56:19 +00:00
libffi re PR libffi/17465 (Testsuite in libffi overrides LD_LIBRARY_PATH) 2004-09-14 14:16:29 -07:00
libgfortran config.h.in: Regenerate. 2004-09-18 23:55:22 +00:00
libiberty * vasprintf.c: Accept __va_copy in addition to va_copy. 2004-09-08 21:29:42 +00:00
libjava 2004-09-15 Michael Koch <konqueror@gmx.de> 2004-09-15 12:38:46 +00:00
libmudflap attribs.c, [...]: Use %<, %> and %q for quoting in diagnostics going through pretty-print.c. 2004-09-15 21:48:10 +01:00
libobjc encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro. 2004-09-16 01:35:01 -07:00
libstdc++-v3 Daily bump. 2004-09-21 00:16:13 +00:00
maintainer-scripts * crontab: Rename GCC 3.5 snapshots to GCC 4.0 snapshots. 2004-09-11 18:53:55 +00:00
zlib configure.ac: New name of configure.in. 2004-06-15 14:47:55 +00:00
.cvsignore configure, .cvsignore: Revert previous change... 2002-06-19 18:10:09 +00:00
ABOUT-NLS intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
COPYING COPYING: Update to current ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes... 2000-12-18 21:47:20 +00:00
COPYING.LIB COPYING.LIB: Update to LGPL 2.1 from the FSF. 2001-01-29 13:32:47 +00:00
ChangeLog mh-x86omitfp: New host makefile fragment. 2004-09-20 00:58:42 +00:00
ChangeLog.tree-ssa Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
MAINTAINERS * MAINTAINERS: Add self as c++ and type-safe vector maintainer. 2004-09-10 11:58:00 +00:00
Makefile.def Makefile.def: Remove libbanshee. 2004-09-09 20:53:41 +00:00
Makefile.in Makefile.def: Remove libbanshee. 2004-09-09 20:53:41 +00:00
Makefile.tpl Makefile.def: Remove libbanshee. 2004-09-09 20:53:41 +00:00
README * README: Remove version number. 2001-06-13 19:48:09 +01:00
README.SCO * README.SCO: New file. 2003-08-03 14:51:42 +00:00
compile compile: New file imported from automake. 2004-03-21 18:38:56 +00:00
config-ml.in config-ml.in: Pass FFLAGS and ADAFLAGS for multilibs, handle F77 like CC. 2004-05-30 23:54:22 +02:00
config.guess config.sub: Import latest version from master repository. 2004-09-06 08:52:57 +00:00
config.if * config.if: Remove unused libc_interface determination. 2003-07-16 06:34:53 +00:00
config.rpath intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
config.sub config.sub: Import latest version from master repository. 2004-09-06 08:52:57 +00:00
configure mh-x86omitfp: New host makefile fragment. 2004-09-20 00:58:42 +00:00
configure.in mh-x86omitfp: New host makefile fragment. 2004-09-20 00:58:42 +00:00
depcomp Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
install-sh re PR bootstrap/11932 (Parallel bootstrap failure with sparc libiberty multilib) 2004-02-20 02:01:16 +00:00
libtool.m4 re PR bootstrap/15120 ([3.3 only] [libtool bug] hidden symbol `__sdivsi3_i4' is referenced by DSO) 2004-05-18 10:11:38 +00:00
ltcf-c.sh Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltcf-cxx.sh Index: ChangeLog 2004-08-03 00:52:18 +00:00
ltcf-gcj.sh Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltconfig Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltmain.sh ltmain.sh: Use $pic_object as $non_pic_object if $non_pic_object=none. 2004-09-08 11:43:46 -04:00
missing missing: Import latest version from master repository. 2004-09-07 08:33:10 +00:00
mkdep merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkinstalldirs re PR bootstrap/11932 (Parallel bootstrap failure with sparc libiberty multilib) 2004-02-20 02:01:16 +00:00
move-if-change
symlink-tree * config-ml.in, symlink-tree: Add license. 2003-08-14 16:44:23 -04:00
ylwrap

README

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file COPYING
for copying permission.  The manuals, and some of the runtime
libraries, are under different terms; see the individual source files
for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs.html for how to report bugs usefully.