On Fri, Dec 5, 2014 at 1:25 PM, Ian Romanick <i...@freedesktop.org> wrote: > On 12/05/2014 01:17 PM, Carl Worth wrote: >> Previously, if __builtin_unreachable() was unavailable, the >> unreachable macro was defined to do nothing. We do better here, by at >> least still making it an assert. >> --- >> src/util/macros.h | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/src/util/macros.h b/src/util/macros.h >> index 5fc6729..eec8b93 100644 >> --- a/src/util/macros.h >> +++ b/src/util/macros.h >> @@ -82,7 +82,7 @@ do { \ >> #endif >> >> #ifndef unreachable >> -#define unreachable(str) >> +#define unreachable(str) assert(!str) > > I'd make this ASSERT. In Mesa, ASSERT only exists if DEBUG is defined. > It seems that many distros build without -DDEBUG and without -DNDEBUG. > I'd rather have no code for these cases in all release builds.
I'm surprised by that. I see that we add -DDEBUG with --enable-debug, but from experience assert() does nothing in my regular release build (without --enable-debug). Where is NDEBUG coming from in that case? I don't see it in the macros gcc automatically defines (gcc -g -dM -E - < /dev/null). _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev