extend.texi (nonnull): List no-argument form.

gcc/ChangeLog:

	* doc/extend.texi (nonnull): List no-argument form.  Reference
	-fno-delete-null-pointer-checks and -fisolate-erroneous-paths-attribute.

From-SVN: r265469
This commit is contained in:
Martin Sebor 2018-10-24 19:33:56 +00:00 committed by Martin Sebor
parent fd85b88869
commit a703b16ba4
2 changed files with 15 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2018-10-24 Martin Sebor <msebor@redhat.com>
* doc/extend.texi (nonnull): List no-argument form. Reference
-fno-delete-null-pointer-checks and -fisolate-erroneous-paths-attribute.
2018-10-24 Richard Biener <rguenther@suse.de>
* tree-ssa-sccvn.c (do_rpo_vn): Free rpo_state.

View File

@ -3075,7 +3075,8 @@ including those that do not have an attribute suitable for disabling
them individually. This attribute is supported mainly for the purpose
of testing the compiler.
@item nonnull (@var{arg-index}, @dots{})
@item nonnull
@itemx nonnull (@var{arg-index}, @dots{})
@cindex @code{nonnull} function attribute
@cindex functions with non-null pointer arguments
The @code{nonnull} attribute specifies that some function parameters should
@ -3092,10 +3093,15 @@ causes the compiler to check that, in calls to @code{my_memcpy},
arguments @var{dest} and @var{src} are non-null. If the compiler
determines that a null pointer is passed in an argument slot marked
as non-null, and the @option{-Wnonnull} option is enabled, a warning
is issued. The compiler may also choose to make optimizations based
on the knowledge that certain function arguments will never be null.
is issued. @xref{Warning Options}. Unless disabled by
the @option{-fno-delete-null-pointer-checks} option the compiler may
also perform optimizations based on the knowledge that certain function
arguments cannot be null. In addition,
the @option{-fisolate-erroneous-paths-attribute} option can be specified
to have GCC transform calls with null arguments to non-null functions
into traps. @xref{Optimize Options}.
If no argument index list is given to the @code{nonnull} attribute,
If no @var{arg-index} is given to the @code{nonnull} attribute,
all pointer arguments are marked as non-null. To illustrate, the
following declaration is equivalent to the previous example: