https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93287
--- Comment #5 from Markus F.X.J. Oberhumer <markus at oberhumer dot com> --- I see, many thanks for the clarification. Still this is not nice from a usability perspective - why did the standard make this a declaration instead of a statement? Well, will revert back to using homegrown COMPILE_TIME_ASSERT macros...