https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66970
Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED --- Comment #24 from Martin Sebor <msebor at gcc dot gnu.org> --- Committed in r277544. Unlike in Clang, arguments to the GCC __has_builtin operator are subject to macro expansion. Also unlike in Clang (as of today), in GCC __has_builtin (__is_aggregate) && __has_builtin (__builtin_launder) && __has_builtin (__builtin_offsetof) evaluates to non-zero.