Из info gcc
(выделено мной):
-ansi
В режиме C это эквивалентно
blockquote> blockquote>-std=c90
. В режиме C ++ это эквивалентно-std=c++98
. Это отключает некоторые функции GCC, которые несовместимы с ISO C90 (при компиляции кода C) или стандартным C ++ (при компиляции кода C ++), такими как ключевые словаasm
иtypeof
и предопределенные макросы, такие как «unix» 'и' vax ', которые определяют тип используемой вами системы. Он также позволяет использовать нежелательную и редко используемую функцию триггера ISO. Для компилятора C он отключает распознавание комментариев стиля C ++//
, а также ключевое словоinline
.(Он использует vax в примере вместо linux, потому что
Основная идея заключается в том, что GCC пытается полностью соответствовать стандартам ISO, когда он вызывается с опцией
-ansi
.