| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| ChangeLog | ||
| Make-lang.in | ||
| c-array-notation.c | ||
| c-aux-info.c | ||
| c-convert.c | ||
| c-decl.c | ||
| c-errors.c | ||
| c-lang.c | ||
| c-lang.h | ||
| c-objc-common.c | ||
| c-objc-common.h | ||
| c-parser.c | ||
| c-tree.h | ||
| c-typeck.c | ||
| config-lang.in | ||
| gccspec.c |
If an argument is marked as nonnull then passing in a NULL argument
will produce bad results even if the code checks against NULL. GCC
might optimize such checks away so warn the user when the function
contains such comparisons.
nn.c: In function ‘foo’:
nn.c:6:27: warning: nonnull argument ‘bar’ compared to NULL [-Wnonnull]
void foo(void *bar) { if (!bar) abort(); }
^
gcc/ChangeLog
* doc/invoke.texi (Wnonnull): Also warns when comparing against NULL.
gcc/c/ChangeLog
* c-typeck.c (build_binary_op): Check and warn when nonnull arg
parm against NULL.
gcc/cp/ChangeLog
* typeck.c (cp_build_binary_op): Check and warn when nonnull arg
parm against NULL.
gcc/testsuite/ChangeLog
* c-c++-common/nonnull-1.c: New test.
From-SVN: r227649
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| ChangeLog | Loading commit data... | |
| Make-lang.in | Loading commit data... | |
| c-array-notation.c | Loading commit data... | |
| c-aux-info.c | Loading commit data... | |
| c-convert.c | Loading commit data... | |
| c-decl.c | Loading commit data... | |
| c-errors.c | Loading commit data... | |
| c-lang.c | Loading commit data... | |
| c-lang.h | Loading commit data... | |
| c-objc-common.c | Loading commit data... | |
| c-objc-common.h | Loading commit data... | |
| c-parser.c | Loading commit data... | |
| c-tree.h | Loading commit data... | |
| c-typeck.c | Loading commit data... | |
| config-lang.in | Loading commit data... | |
| gccspec.c | Loading commit data... |