On Feb 17, 2009, at 9:37 AM, Ben Laurie wrote:

On Tue, Feb 17, 2009 at 4:45 PM, Ted Kremenek <[email protected]> wrote:
Hi Ben,

The analyzer knows that all functions with the 'noreturn' attribute don't
return.  What does the assert macro expand to on FreeBSD?

The problem is that __assert does not have noreturn set on FreeBSD.
I'm in the process of getting that fixed - but as an apprentice
FreeBSD committer that's probably harder for me than anyone else, so
it may take a while :-)

In the meantime, I think the right answer is for me to patch
/usr/include/assert.h.

__assert isn't the only "panic" function that isn't marked with noreturn. Since it occurs so frequently, I can just add it to the list of hard-coded functions that the analyzer knows about. That will also make the analyzer more applicable to earlier versions of FreeBSD (should you want to see how far a bug goes back, for example).
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to