gcc/
commit1e9af8800dc972d7945c2f273be192532136fa30
authordrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 19 Jul 2004 14:48:09 +0000 (19 14:48 +0000)
committerdrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 19 Jul 2004 14:48:09 +0000 (19 14:48 +0000)
tree906e9f5e207c1fa3893321a14e270e2788011949
parent7cbfc97423790d53b57ed29d2d8c1b0056eb1bd9
gcc/
* Makefile.in (c-format.o): Depend on c-format.h.
* c-format.h: New file.
(struct format_char_info): Add CHAIN member.
* c-format.c: Move some types and constants to c-format.h.
(format_type_error): Set to -1.
(struct function_format_info): Use an int for format_type.
(decode_format_type): Return an int.  Return format_type_error
on error.
(print_char_table, asm_fprintf_char_table, gcc_diag_char_table)
(gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table)
(scan_char_table, time_char_table, monetary_char_table): Initialize
CHAIN to NULL.
(n_format_types): New variable.
(check_format_info_main): Handle CHAIN in format_char_info.
(handle_format_attribute): Handle TARGET_FORMAT_TYPES and
TARGET_N_FORMAT_TYPES.
* config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*)
(sparc-*-solaris2*): Include config/t-sol2 and config/sol2-c.c.
* config/sol2-c.c: New file.
* config/t-sol2: New file.
* config/sol2.h (TARGET_N_FORMAT_TYPES, TARGET_FORMAT_TYPES): Define.
* config/sparc/elf.h, config/sparc/sp64-elf.h: Undefine
TARGET_N_FORMAT_TYPES and TARGET_FORMAT_TYPES.

* doc/extend.texi (Target Format Checks): New section.
(Function Attributes): Mention it.
* doc/invoke.texi: Mention target format checks.
* doc/sourcebuild.texi: Mention target format checks.
* dc/tm.texi (Misc): Document TARGET_N_FORMAT_TYPES and
TARGET_FORMAT_TYPES.
testsuite/
* gcc.dg/format/cmn-err-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84920 138bc75d-0d04-0410-961f-82ee72b054a4
16 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/c-format.c
gcc/c-format.h [new file with mode: 0644]
gcc/config.gcc
gcc/config/sol2-c.c [new file with mode: 0644]
gcc/config/sol2.h
gcc/config/sparc/elf.h
gcc/config/sparc/sp64-elf.h
gcc/config/t-sol2 [new file with mode: 0644]
gcc/doc/extend.texi
gcc/doc/invoke.texi
gcc/doc/sourcebuild.texi
gcc/doc/tm.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/format/cmn-err-1.c [new file with mode: 0644]