https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108796
--- Comment #15 from Joseph S. Myers <jsm28 at gcc dot gnu.org> --- The [[]] syntax is supported in C from GCC 10 onwards (in C++ in older versions as well). What's new in GCC 14 is that you can use it with :: in pre-C23 modes (with previous versions you needed -std=gnu2x / -std=c2x, otherwise the :: wasn't parsed as it's two separate : tokens in older versions and only a single :: token in C23). If you're writing extern "C" in C++ and your code also supports being used from C, you already have some language conditionals.