Find a file
Joseph Myers 80a497e4e9 c-common.c (c_format_attribute_table): Make format and format_arg attributes apply to function types rather than to decls.
* c-common.c (c_format_attribute_table): Make format and
	format_arg attributes apply to function types rather than to
	decls.
	(is_valid_printf_arglist): Construct an attribute list and pass
	that to check_function_format rather than a name.
	* c-common.h (check_function_format): Adjust prototype.
	* c-decl.c (duplicate_decls): Preserve attributes from type of
	built-in decl when allowing for harmless conflict in types.
	* c-format.c (record_function_format,
	record_international_format, function_format_list,
	international_format_info, international_format_list): Remove.
	(function_format_info): Remove next, name and assembler_name.
	Make format_num and first_arg_num be unsigned HOST_WIDE_INT.
	(decode_format_attr): New.
	(handle_format_attribute): Handle receiving a type rather than a
	decl.  Call decode_format_attr.  Store format information in a
	function_format_info.
	(handle_format_arg_attribute): Correct comment.  Handle receiving
	a type rather than a decl.  Use unsigned HOST_WIDE_INT for
	arg_num.
	(check_format_info_recurse, check_format_info_main): Take argument
	numbers as unsigned HOST_WIDE_INT.
	(check_function_format): Take a list of attributes from the
	function type rather than a name or assembler name.  Check for
	format attributes in that list and the attributes on the type of
	the current function rather than looking through
	function_format_list.
	(check_format_info): Use unsigned HOST_WIDE_INT for argument
	numbers.
	(check_format_info_recurse): Take format_arg attributes from the
	type of the function calls rather than using
	international_format_list.  Allow for multiple format_arg
	attributes.
	* c-typeck.c (build_function_call): Pass type attributes to
	check_function_format rather than name or assembler name.  Don't
	require there to be a name or assembler name to check formats.

cp:
	* call.c (build_over_call), typeck.c (build_function_call_real):
	Pass type attributes to check_function_format rather than name or
	assembler name.  Don't require there to be a name or assembler
	name to check formats.

testsuite:
	* g++.dg/warn/format2.C, gcc.dg/format/attr-7.c,
	gcc.dg/format/multattr-1.c, gcc.dg/format/multattr-2.c,
	gcc.dg/format/multattr-3.c: New tests.
	* gcc.dg/format/attr-3.c: Update expected error texts.  Remove
	tests for format attributes on function pointers being rejected.

From-SVN: r45945
2001-10-02 08:19:47 +01:00
boehm-gc solaris_threads.c (MAX_ORIG_STACK_SIZE): Provide special Solaris 2/Intel definition. 2001-09-26 13:22:03 +00:00
config * mt-linux (CXXFLAGS_FOR_TARGET): Lose -fvtable-thunks. 2001-05-21 21:17:23 -04:00
contrib revert: gcc_update: (files_and_dependencies) Add gcc/java/parse.c gcc/java/parse-scan.c and... 2001-09-07 07:57:51 +00:00
fastjar re PR java/3949 (fastjar exits success if @file not found) 2001-08-28 18:35:32 -07:00
gcc c-common.c (c_format_attribute_table): Make format and format_arg attributes apply to function types rather than to decls. 2001-10-02 08:19:47 +01:00
include libiberty.h (reconcat): New function. 2001-09-24 22:38:22 +00:00
INSTALL README: Update wrt. 2001-06-13 14:51:33 +00:00
libchill Makefile.in (STROBJS): Get memmove.o from configure. 2000-05-31 16:54:07 -07:00
libf2c Daily bump. 2001-10-02 07:17:46 +00:00
libffi sysv.S: Avoid gas-only .balign directive. 2001-07-16 17:12:14 +00:00
libiberty * configure: Regenerate. 2001-09-29 12:48:58 -04:00
libjava FileWriter.java: Merge with Classpath. 2001-10-01 18:24:54 +00:00
libobjc gc.c: Removed the DEBUG declaration. 2001-09-10 16:24:11 +00:00
libstdc++-v3 Daily bump. 2001-10-02 07:17:46 +00:00
maintainer-scripts update_web_docs: Also check out texinfo.tex from gcc/doc/include. 2001-08-28 22:11:02 +01:00
zlib re PR bootstrap/3281 (Installation failure (mkinstalldirs)) 2001-07-03 22:29:32 +00:00
.cvsignore gcc_update: Dump timestamp in LAST_UPDATED. 2001-07-26 23:00:45 -07:00
ChangeLog * configure: Handle temporary files securely using mkdir. 2001-10-02 07:39:18 +01:00
config-ml.in config-ml.in (powerpc-*-* | rs6000-*-*): Allow aix64 and pthread multilibs to be disabled. 2001-06-12 22:12:07 -04:00
config.guess config.guess: Merge from master sources. 2001-08-31 06:35:37 +00:00
config.if * config.if: Assume enable_libstdcxx_v3 is defined. 2001-02-05 11:02:20 +00:00
config.sub config.guess: Merge from master sources. 2001-08-31 06:35:37 +00:00
configure * configure: Handle temporary files securely using mkdir. 2001-10-02 07:39:18 +01:00
configure.in configure.in (*-*-linux*): Disable configuration of target-newlib and target-libgloss. 2001-09-27 18:01:15 +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
install-sh Final changes from devo<->egcs merge. 1998-10-12 04:44:57 -06:00
libtool.m4 ltconfig, [...]: Upgraded to libtool 1.4a 1.641.2.254. 2001-05-20 18:55:59 +00:00
ltcf-c.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltcf-cxx.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltcf-gcj.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltconfig backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
ltmain.sh backport: ltcf-c.sh: Use $objext, not $ac_objext. 2001-09-01 00:47:19 +00:00
MAINTAINERS Add myself to "write after approval" list 2001-09-11 07:56:59 +00:00
Makefile.in * Makefile.in (configure-target-gperf): Depend on $(ALL_GCC_CXX). 2001-09-29 19:36:13 +00:00
missing merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkdep merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkinstalldirs
move-if-change FSF address fix in copyright header. 1999-01-11 07:12:18 -07:00
README * README: Remove version number. 2001-06-13 19:48:09 +01:00
symlink-tree Makefile.in: handle DOS-style absolute paths. 2000-12-09 11:06:19 -05:00
ylwrap ylwrap: Change absolute path checks to check for DOS style path names. 1998-10-08 17:26:54 -06:00

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.