如果可能,请在正常情况下禁用扩展,通常是由于标准一致性命名空间问题。这应该在运行C的任何宏之前调用编译器。此外,当使用此宏与AC_配置_标题
,请确保配置。小时包括在内在任何系统标题之前。
以下预处理器宏是无条件定义的:
_全部_来源
¶
在AIX 3和Interix上启用扩展。
_达尔文_C_来源
¶
在macOS上启用扩展。
_GNU_来源
¶
在GNU系统上启用扩展。
_网络BSD_SOURCE
¶
在NetBSD上启用常规扩展。在Minix上启用NetBSD兼容性扩展。
_打开bsd_SOURCE
¶
在NetBSD上启用OpenBSD兼容性扩展。奇怪的是,这对OpenBSD没有任何作用。
_POSIX_PTHREAD_SEMANTICS公司
¶
在Solaris上启用与Posix兼容的线程。
__STDC_WANT_IEC_60559_ATTRIBS_EXT公司__
¶
启用ISO/IEC TS 18661-5:2014规定的扩展。
__STDC_WANT_IEC_60559_BFP_EXT__
¶
启用ISO/IEC TS 18661-1:2014规定的扩展。
__STDC_WANT_IEC_60559_DFP_EXT__
¶
启用ISO/IEC TS 18661-2:2015规定的扩展。
__STDC_WANT_IEC_60559_EXT标准__
¶
启用C23附录F规定的扩展。
__STDC_WANT_IEC_60559_FUNCS_EXT公司__
¶
启用ISO/IEC TS 18661-4:2015规定的扩展。
__STDC_WANT_IEC_60559_类型_EXT__
¶
启用C23附录H和ISO/IEC TS 18661-3:2015规定的扩展。
__STDC_天线_LIB_EXT2__
¶
启用ISO/IEC TR 24731-2:2010规定的扩展。
__STDC_WANT_MATH_SPEC_FUNCS公司__
¶
启用ISO/IEC 24747:2009规定的扩展。
_串联_源
¶
在HP NonStop系统上启用扩展。
以下预处理器宏仅在必要时定义;它们允许访问某些操作系统上的扩展,但使残废其他操作系统上的扩展。
__扩展__
¶
在Solaris上启用常规扩展。仅当包含的标题AC_INCLUDES_DEFAULT公司
(请参见默认包括)正确使用定义的。
_迷你
¶
_POSIX_来源
_POSIX_1_来源
-
仅在MINIX上定义。_POSIX_来源
和_POSIX_1_来源
需要在该操作系统上启用许多POSIX功能。_迷你
不影响系统标头的行为;Autoconf的未来版本可能会停止定义它。需要识别Minix的程序应使用空调_空调_主机
.
_XOPEN_源
¶
仅在需要时定义(值为500)瓦查尔。小时声明mb状态_
。这在某些版本的HP/UX上是必需的。
C预处理器宏__STDC_WANT_DEC_FP公司__
未定义。ISO/IEC TR 24732:2009被ISO/IEC TS 18661-2:2015取代。
C预处理器宏__STDC_WANT_LIB_EXT1号机组__
未定义,因为C标准的附录K存在问题。参见:O’Donell C,Sebor M。字段附件K边界检查接口的经验.
Autoconf宏AC_USE_系统_扩展
于引入自动控制2.60。