|
1044 | 1044 | \pnum |
1045 | 1045 | \indextext{__va_args__@\mname{VA_ARGS}}% |
1046 | 1046 | \indextext{__va_opt__@\mname{VA_OPT}}% |
1047 | | -The identifiers \mname{VA_ARGS} and \mname{VA_OPT} |
| 1047 | +The identifiers \stdmacro{__VA_ARGS__} and \stdmacro{__VA_OPT__} |
1048 | 1048 | shall occur only in the \grammarterm{replacement-list} |
1049 | 1049 | of a function-like macro that uses the ellipsis notation in the parameters. |
1050 | 1050 |
|
|
1191 | 1191 | \indextext{argument substitution|see{macro, argument substitution}}% |
1192 | 1192 |
|
1193 | 1193 | \indextext{__va_opt__@\mname{VA_OPT}}% |
| 1194 | +%%\stdmacro{__VA_OPT__}% |
1194 | 1195 | \begin{bnf} |
1195 | 1196 | \nontermdef{va-opt-replacement}\br |
1196 | 1197 | \terminal{\mname{VA_OPT} (} \opt{pp-tokens} \terminal{)} |
|
1228 | 1229 |
|
1229 | 1230 | \pnum |
1230 | 1231 | \indextext{__va_args__@\mname{VA_ARGS}}% |
1231 | | -An identifier \mname{VA_ARGS} that occurs in the replacement list |
| 1232 | +An identifier \stdmacro{__VA_ARGS__} that occurs in the replacement list |
1232 | 1233 | shall be treated as if it were a parameter, and the variable arguments shall form |
1233 | 1234 | the preprocessing tokens used to replace it. |
1234 | 1235 |
|
|
1254 | 1255 |
|
1255 | 1256 | \pnum |
1256 | 1257 | \indextext{__va_opt__@\mname{VA_OPT}}% |
1257 | | -The identifier \mname{VA_OPT} |
| 1258 | +The identifier \stdmacro{__VA_OPT__} |
1258 | 1259 | shall always occur as part of the preprocessing token sequence |
1259 | 1260 | \grammarterm{va-opt-replacement}; |
1260 | 1261 | its closing \tcode{)} is determined by skipping |
|
1718 | 1719 |
|
1719 | 1720 | \item |
1720 | 1721 | \indextext{__date__@\mname{DATE}}% |
1721 | | -\mname{DATE}\\ |
| 1722 | +\stdmacro{__DATE__}\\ |
1722 | 1723 | The date of translation of the source file: |
1723 | 1724 | a character string literal of the form |
1724 | 1725 | \tcode{"Mmm~dd~yyyy"}, |
|
1735 | 1736 |
|
1736 | 1737 | \item |
1737 | 1738 | \indextext{__file__@\mname{FILE}}% |
1738 | | -\mname{FILE}\\ |
| 1739 | +\stdmacro{__FILE__}\\ |
1739 | 1740 | The presumed name of the current source file (a character string |
1740 | 1741 | literal). |
1741 | 1742 | \begin{footnote} |
|
1744 | 1745 |
|
1745 | 1746 | \item |
1746 | 1747 | \indextext{__line__@\mname{LINE}}% |
1747 | | -\mname{LINE}\\ |
| 1748 | +\stdmacro{__LINE__}\\ |
1748 | 1749 | The presumed line number (within the current source file) of the current source line |
1749 | 1750 | (an integer literal). |
1750 | 1751 | \begin{footnote} |
|
1755 | 1756 | \indextext{__stdc_hosted__@\mname{STDC_HOSTED}}% |
1756 | 1757 | \indextext{implementation!hosted}% |
1757 | 1758 | \indextext{implementation!freestanding}% |
1758 | | -\mname{STDC_HOSTED}\\ |
| 1759 | +\stdmacro{__STDC_HOSTED__}\\ |
1759 | 1760 | The integer literal \tcode{1} |
1760 | 1761 | if the implementation is a hosted implementation or |
1761 | 1762 | the integer literal \tcode{0} |
1762 | 1763 | if it is a freestanding implementation\iref{intro.compliance}. |
1763 | 1764 |
|
1764 | 1765 | \item |
1765 | 1766 | \indextext{__stdcpp_default_new_alignment__@\mname{STDCPP_DEFAULT_NEW_ALIGNMENT}}% |
1766 | | -\mname{STDCPP_DEFAULT_NEW_ALIGNMENT}\\ |
| 1767 | +\stdmacro{__STDCPP_DEFAULT_NEW_ALIGNMENT__}\\ |
1767 | 1768 | An integer literal of type \tcode{std::size_t} |
1768 | 1769 | whose value is the alignment guaranteed |
1769 | 1770 | by a call to \tcode{operator new(std::size_t)} |
|
1775 | 1776 |
|
1776 | 1777 | \item |
1777 | 1778 | \indextext{__stdcpp_float16_t__@\mname{STDCPP_FLOAT16_T}}% |
1778 | | -\mname{STDCPP_FLOAT16_T}\\ |
| 1779 | +\stdmacro{__STDCPP_FLOAT16_T__}\\ |
1779 | 1780 | Defined as the integer literal \tcode{1} |
1780 | 1781 | if and only if the implementation supports |
1781 | 1782 | the \IsoFloatUndated{} floating-point interchange format binary16 |
1782 | 1783 | as an extended floating-point type\iref{basic.extended.fp}. |
1783 | 1784 |
|
1784 | 1785 | \item |
1785 | 1786 | \indextext{__stdcpp_float32_t__@\mname{STDCPP_FLOAT32_T}}% |
1786 | | -\mname{STDCPP_FLOAT32_T}\\ |
| 1787 | +\stdmacro{__STDCPP_FLOAT32_T__}\\ |
1787 | 1788 | Defined as the integer literal \tcode{1} |
1788 | 1789 | if and only if the implementation supports |
1789 | 1790 | the \IsoFloatUndated{} floating-point interchange format binary32 |
1790 | 1791 | as an extended floating-point type. |
1791 | 1792 |
|
1792 | 1793 | \item |
1793 | 1794 | \indextext{__stdcpp_float64_t__@\mname{STDCPP_FLOAT64_T}}% |
1794 | | -\mname{STDCPP_FLOAT64_T}\\ |
| 1795 | +\stdmacro{__STDCPP_FLOAT64_T__}\\ |
1795 | 1796 | Defined as the integer literal \tcode{1} |
1796 | 1797 | if and only if the implementation supports |
1797 | 1798 | the \IsoFloatUndated{} floating-point interchange format binary64 |
1798 | 1799 | as an extended floating-point type. |
1799 | 1800 |
|
1800 | 1801 | \item |
1801 | 1802 | \indextext{__stdcpp_float128_t__@\mname{STDCPP_FLOAT128_T}}% |
1802 | | -\mname{STDCPP_FLOAT128_T}\\ |
| 1803 | +\stdmacro{__STDCPP_FLOAT128_T__}\\ |
1803 | 1804 | Defined as the integer literal \tcode{1} |
1804 | 1805 | if and only if the implementation supports |
1805 | 1806 | the \IsoFloatUndated{} floating-point interchange format binary128 |
1806 | 1807 | as an extended floating-point type. |
1807 | 1808 |
|
1808 | 1809 | \item |
1809 | 1810 | \indextext{__stdcpp_bfloat16_t__@\mname{STDCPP_BFLOAT16_T}}% |
1810 | | -\mname{STDCPP_BFLOAT16_T}\\ |
| 1811 | +\stdmacro{__STDCPP_BFLOAT16_T__}\\ |
1811 | 1812 | Defined as the integer literal \tcode{1} |
1812 | 1813 | if and only if the implementation supports an extended floating-point type |
1813 | 1814 | with the properties of the \grammarterm{typedef-name} \tcode{std::bfloat16_t} |
1814 | 1815 | as described in \ref{basic.extended.fp}. |
1815 | 1816 |
|
1816 | 1817 | \item |
1817 | 1818 | \indextext{__time__@\mname{TIME}}% |
1818 | | -\mname{TIME}\\ |
| 1819 | +\stdmacro{__TIME__}\\ |
1819 | 1820 | The time of translation of the source file: |
1820 | 1821 | a character string literal of the form |
1821 | 1822 | \tcode{"hh:mm:ss"} |
|
1914 | 1915 | \begin{description} |
1915 | 1916 | \item |
1916 | 1917 | \indextext{__stdc__@\mname{STDC}}% |
1917 | | -\mname{STDC}\\ |
| 1918 | +\stdmacro{__STDC__}\\ |
1918 | 1919 | Whether \mname{STDC} is predefined and if so, what its value is, |
1919 | 1920 | are \impldef{definition and meaning of \mname{STDC}}. |
1920 | 1921 |
|
1921 | 1922 | \item |
1922 | 1923 | \indextext{__stdc_mb_might_neq_wc__@\mname{STDC_MB_MIGHT_NEQ_WC}}% |
1923 | | -\mname{STDC_MB_MIGHT_NEQ_WC}\\ |
| 1924 | +\stdmacro{__STDC_MB_MIGHT_NEQ_WC__}\\ |
1924 | 1925 | The integer literal \tcode{1}, intended to indicate that, in the encoding for |
1925 | 1926 | \keyword{wchar_t}, a member of the basic character set need not have a code value equal to |
1926 | 1927 | its value when used as the lone character in an ordinary character literal. |
1927 | 1928 |
|
1928 | 1929 | \item |
1929 | 1930 | \indextext{__stdc_version__@\mname{STDC_VERSION}}% |
1930 | | -\mname{STDC_VERSION}\\ |
| 1931 | +\stdmacro{__STDC_VERSION__}\\ |
1931 | 1932 | Whether \mname{STDC_VERSION} is predefined and if so, what its value is, |
1932 | 1933 | are \impldef{definition and meaning of \mname{STDC_VERSION}}. |
1933 | 1934 |
|
1934 | 1935 | \item |
1935 | 1936 | \indextext{__stdc_iso_10646__@\mname{STDC_ISO_10646}}% |
1936 | | -\mname{STDC_ISO_10646}\\ |
| 1937 | +\stdmacro{__STDC_ISO_10646__}\\ |
1937 | 1938 | An integer literal of the form \tcode{yyyymmL} |
1938 | 1939 | (for example, \tcode{199712L}). |
1939 | 1940 | Whether \mname{STDC_ISO_10646} is predefined and |
|
1942 | 1943 |
|
1943 | 1944 | \item |
1944 | 1945 | \indextext{__stdcpp_threads__@\mname{STDCPP_THREADS}}% |
1945 | | -\mname{STDCPP_THREADS}\\ |
| 1946 | +\stdmacro{__STDCPP_THREADS__}\\ |
1946 | 1947 | Defined, and has the value integer literal 1, if and only if a program |
1947 | 1948 | can have more than one thread of execution\iref{intro.multithread}. |
1948 | 1949 |
|
|
0 commit comments