[cfe-commits] r86504 - in /cfe/trunk: lib/Analysis/CheckSizeofPointer.cpp test/Analysis/sizeofpointer.c
Ted Kremenek
kremenek at apple.com
Mon Nov 9 15:13:20 PST 2009
Hi Zhongxing,
I think the previous wording was more in the right direction as it
explained the actual problem; "This can produce an unexpected result."
is fairly content-free unless you already know what the warning is
about.
How about:
"Call to sizeof() returns the size of the pointer (X bytes) instead
of how much memory has been allocated by malloc()"
(where X bytes is filled in with the pointer size)
On Nov 8, 2009, at 6:28 PM, Zhongxing Xu wrote:
> Author: zhongxingxu
> Date: Sun Nov 8 20:28:12 2009
> New Revision: 86504
>
> URL: http://llvm.org/viewvc/llvm-project?rev=86504&view=rev
> Log:
> Add a test case for CWE-467, and simplify the wording of the warning.
>
> Added:
> cfe/trunk/test/Analysis/sizeofpointer.c
> Modified:
> cfe/trunk/lib/Analysis/CheckSizeofPointer.cpp
>
> Modified: cfe/trunk/lib/Analysis/CheckSizeofPointer.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/CheckSizeofPointer.cpp?rev=86504&r1=86503&r2=86504&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- cfe/trunk/lib/Analysis/CheckSizeofPointer.cpp (original)
> +++ cfe/trunk/lib/Analysis/CheckSizeofPointer.cpp Sun Nov 8
> 20:28:12 2009
> @@ -47,7 +47,7 @@
> SourceRange R = E->getArgumentExpr()->getSourceRange();
> BR.EmitBasicReport("Potential unintended use of sizeof() on
> pointer type",
> "Logic",
> - "The code calls sizeof() on a malloced
> pointer type, which always returns the wordsize/8. This can produce
> an unexpected result if the programmer intended to determine how
> much memory has been allocated.",
> + "The code calls sizeof() on a pointer type.
> This can produce an unexpected result.",
> E->getLocStart(), &R, 1);
> }
> }
>
> Added: cfe/trunk/test/Analysis/sizeofpointer.c
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Analysis/sizeofpointer.c?rev=86504&view=auto
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- cfe/trunk/test/Analysis/sizeofpointer.c (added)
> +++ cfe/trunk/test/Analysis/sizeofpointer.c Sun Nov 8 20:28:12 2009
> @@ -0,0 +1,8 @@
> +// RUN: clang-cc -analyze -warn-sizeof-pointer -verify %s
> +
> +struct s {
> +};
> +
> +int f(struct s *p) {
> + return sizeof(p); // expected-warning{{The code calls sizeof() on
> a pointer type. This can produce an unexpected result.}}
> +}
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
More information about the cfe-commits
mailing list