7.12 Совместимость с предыдущими версиями ¶
Теперь, когда существует окончательный стандарт ISO C++, G++ имеет спецификацию, которой нужно следовать. Язык C++ эволюционировал со временем, и функции, которые ранее допускались в предыдущих черновиках стандарта, такие как ARM [Annotated C++ Reference Manual], больше не принимаются. Для того, чтобы позволить компиляцию C++, написанного согласно этим черновикам, G++ содержит некоторые совместимости с предыдущими версиями. Все такие функции совместимости с предыдущими версиями могут исчезнуть в будущих версиях G++. Они должны рассматриваться как устаревшие. См. Устаревшие возможности.
Implicit C language-
Старые системные заголовочные файлы C не содержали
extern "C" {…}области для установки языка. В таких системах все системные заголовочные файлы неявно находятся в области языка C. Такие заголовки должны правильно прототипировать типы аргументов функций, нет свободы для()указывать неопределенный набор аргументов.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.5.0/gcc/Backwards-Compatibility.html