[PATCH] D47894: [clang]: Add support for "-fno-delete-null-pointer-checks"
James Y Knight via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jun 7 14:55:47 PDT 2018
jyknight added a comment.
In https://reviews.llvm.org/D47894#1125653, @efriedma wrote:
> The problem would come from propagating nonnull-ness from something which isn't inherently nonnull. For example, strlen has a nonnull argument, so `strlen(NULL)` is UB, therefore given `int z = strlen(x); if (x) {...}`, we can remove the null check. (Not sure we actually do this transform at the moment, but it's something we could do in the future.)
I think the question there is actually whether we need to, in addition to supporting null pointer dereference, also cause all __attribute__((nonnull)) annotations at the C/C++ level to be ignored.
And, yes, I believe we should.
Repository:
rC Clang
https://reviews.llvm.org/D47894
More information about the cfe-commits
mailing list