[cfe-commits] [cfe-dev] How to fix null-deref-ps.c on FreeBSD?
Ted Kremenek
kremenek at apple.com
Tue Feb 17 08:45:29 PST 2009
Hi Ben,
The analyzer knows that all functions with the 'noreturn' attribute
don't return. What does the assert macro expand to on FreeBSD?
On Feb 17, 2009, at 7:08 AM, Ben Laurie wrote:
> This test fails on FreeBSD, and the following patch fixes it:
>
> Index: test/Analysis/null-deref-ps.c
> ===================================================================
> --- test/Analysis/null-deref-ps.c (revision 64762)
> +++ test/Analysis/null-deref-ps.c (working copy)
> @@ -129,6 +129,8 @@
>
> int* qux();
>
> +void __assert(const char *, const char *, int, const char *)
> __attribute__((__noreturn__));
> +
> int f9(unsigned len) {
> assert (len != 0);
> int *p = 0;
>
> the problem being, of course, that the analyzer has to understand that
> a failed assert does not return...
>
> But how would I go about fixing this properly?
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
More information about the cfe-commits
mailing list