gcc/gcc ChangeLog c-common.c c-common.h c-decl ...

thorpej@gcc.gnu.org thorpej@gcc.gnu.org
Thu May 23 08:48:00 GMT 2002


CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	thorpej@gcc.gnu.org	2002-05-23 08:48:05

Modified files:
	gcc            : ChangeLog c-common.c c-common.h c-decl.c 
	                 c-format.c c-typeck.c 
	gcc/doc        : extend.texi invoke.texi 
Added files:
	gcc/testsuite/gcc.dg: nonnull-1.c nonnull-2.c 

Log message:
	* c-common.c (warn_nonnull): Declare.
	(c_common_attribute_table): Add "nonnull" attribute.
	(handle_nonnull_attribute, check_function_nonnull, nonnull_check_p,
	check_nonnull_arg, get_nonnull_operand, check_function_arguments,
	check_function_arguments_recurse): New functions.
	* c-common.h (warn_nonnull): Declare extern.
	(check_function_arguments, check_function_arguments_recurse): New
	prototypes.
	* c-decl.c (c_decode_option): Add -Wnonnull option.
	* c-format.c (set_Wformat): Set warn_nonnull if enabling
	format checking.
	(format_check_context): New structure.
	(check_format_info_recurse): Remove recursion and rename to...
	(check_format_arg): ...this.  Update comment.
	(check_format_info): Use check_function_arguments_recurse.
	* c-typeck.c (build_function_call): Call check_function_arguments
	instead of check_function_format.
	* doc/extend.texi: Document "nonnull" attribute.
	* doc/invoke.texi: Docuemnt -Wnonnull option.
	* testsuite/gcc.dg/nonnull-1.c: New test.
	* testsuite/gcc.dg/nonnull-2.c: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.14220&r2=1.14221
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.c.diff?cvsroot=gcc&r1=1.330&r2=1.331
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.h.diff?cvsroot=gcc&r1=1.137&r2=1.138
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-decl.c.diff?cvsroot=gcc&r1=1.327&r2=1.328
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-format.c.diff?cvsroot=gcc&r1=1.21&r2=1.22
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-typeck.c.diff?cvsroot=gcc&r1=1.194&r2=1.195
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/extend.texi.diff?cvsroot=gcc&r1=1.72&r2=1.73
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&r1=1.147&r2=1.148
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/nonnull-1.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/nonnull-2.c.diff?cvsroot=gcc&r1=NONE&r2=1.1



More information about the Gcc-cvs mailing list