egcs/gcc ChangeLog c-common.h c-decl.c c-commo ...
jsm28@gcc.gnu.org
jsm28@gcc.gnu.org
Sun Aug 6 11:12:00 GMT 2000
CVSROOT: /cvs/gcc
Module name: egcs
Changes by: jsm28@sourceware.cygnus.com 2000-08-06 11:12:49
Modified files:
gcc : ChangeLog c-common.h c-decl.c c-common.c
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/gcc.dg: c99-printf-1.c
Log message:
* c-common.h (enum c_tree_index): Add CTI_SIGNED_SIZE_TYPE and
CTI_UNSIGNED_PTRDIFF_TYPE.
(signed_size_type_node): Define.
(unsigned_ptrdiff_type_node): Define.
* c-decl.c (init_decl_processing): Create the
signed_size_type_node and unsigned_ptrdiff_type_node types.
* c-common.c (T_SC): Define.
(T_SST): Define.
(T_UPD): Define.
(print_char_table): Use T_SST for %zd, %zi, %zn. Use T_UPD for
%to, %tu, %tx, %tX. Allow %hhn (T_SC). Add "c" to the flags for
%s and %p.
(scan_char_table): Use T_SC for %hhd, %hhi, %hhn. Use T_SST for
%zd, %zi, %zn. Use T_UPD for %to, %tu, %tx, %tX. Add "c" to the
flags for %c, %s and %[.
(check_format_info): Only allow leniency for signedness of targets
of character pointers (when pedantic) for formats flagged with
"c", so for strings but not for %hh formats. When pedantic, don't
allow character pointers to substitute for void pointers if a
second level of indirection is present.
testsuite:
* gcc.dg/c99-printf-1.c: New test.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.7357&r2=1.7358
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/c-common.h.diff?cvsroot=gcc&r1=1.27&r2=1.28
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/c-decl.c.diff?cvsroot=gcc&r1=1.139&r2=1.140
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/c-common.c.diff?cvsroot=gcc&r1=1.133&r2=1.134
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.636&r2=1.637
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.dg/c99-printf-1.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
More information about the Gcc-cvs
mailing list