![]() Subversion tag or revision number, e.g., “ 1.5 (trunk 102332)”. _clang_version_ Defined to a string that captures the Clang marketing version, including the _clang_patchlevel_ Defined to the marketing patch level of Clang (e.g., the 1 in 2.0.1). That marketing version numbers should not be used to check for languageįeatures, as different vendors use different numbering schemes. _clang_minor_ Defined to the minor version number of Clang (e.g., the 0 in 2.0.1). Instead, use the Feature Checking Macros. Language features, as different vendors use different numbering schemes. Note that marketing version numbers should not be used to check for _clang_ Defined when compiling with Clang _clang_major_ Defined to the major marketing version number of Clang (e.g., the 2 inĢ.0.1). _TIMESTAMP_ Defined to the date and time of the last modification of the current sourceįile. _INCLUDE_LEVEL_ Defined to an integral value that is the include depth of the file currentlyīeing translated. _COUNTER_ Defined to an integer value that starts at zero and is incremented each time Renders the last path component (the filename) instead of an invocationĭependent full path to that file. ![]() _FILE_NAME_ Clang-specific extension that functions similar to _FILE_ but only ![]() For instance, _cxx_rvalue_references_ can be used insteadīuiltin Macros ¶ _BASE_FILE_ Defined to a string that contains the name of the main input file passed toĬlang. The feature name or extension name can also be specified with a preceding andįollowing _ (double underscore) to avoid interference from a macro with The feature tag is described along with the language feature below. If the -pedantic-errors option is given, _has_extension is equivalent features not prefixed c_,Īnother use of _has_feature is to check for compiler features not related #endifįor backward compatibility, _has_feature can also be used to testįor support for non-standardized features, i.e. #endif #if _has_extension(cxx_rvalue_references) // This code will be compiled with the -std=c++11, -std=gnu++11, -std=c++98 // and -std=gnu++98 options, because rvalue references are supported as a // language extension in C++98. #if _has_feature(cxx_rvalue_references) // This code will only be compiled with the -std=c++11 and -std=gnu++11 // options, because rvalue references are only standardized in C++11. #endif #ifndef _has_extension #define _has_extension _has_feature // Compatibility with pre-3.0 compilers. #define _has_feature(x) 0 // Compatibility with non-clang compilers. #ifndef _has_feature // Optional of course. Intrinsics Support within Constant Expressions. ![]() Specifying Linker Options on ELF Targets.Specifying section names for global objects (#pragma clang section).Specifying an attribute for multiple declarations (#pragma clang attribute).Extensions to specify floating-point flags.Extensions for selectively disabling optimization.Initializer lists for complex numbers in C.Messages on deprecated and unavailable Attributes. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |