summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/cwebdir/iso_types.w
diff options
context:
space:
mode:
authorAndreas Scherer <andreas_tex@freenet.de>2021-04-16 12:49:28 +0000
committerAndreas Scherer <andreas_tex@freenet.de>2021-04-16 12:49:28 +0000
commit611b225a456949639e46d4ccb7d458761c3dc818 (patch)
tree23077732a961b5fcd9c25530d594a0ac2cd6fb1a /Build/source/texk/web2c/cwebdir/iso_types.w
parent296df34bd02be9e066be5af0f934d493916b2c67 (diff)
[CWEB] New release 4.3.
This release introduces new features to CWEB 4: * Former option '-t' is now called '-c'. - New option '-t' for CWEAVE when dealing with 'typename' in C++ templates. - New option '-k' for CTANGLE to keep '-separators in numeric literals. * Support for "variadic macros" along "variadic functions". * @d is printed similar to #define (and vice versa): - '#' is no longer printed in boldface. - Spacing is similar in most cases. * Support for extended C99/C++ numeric literals: - hexadecimal, octal, and -- new! -- binary numbers. - NOTE: 'cwebmac.tex 4.3' is NOT compatible with CWEAVE 4.2 and older and vice versa. * Long parameter lists in ANSI function definitions are indented similar to old-style function parameters. - Option '-i' works similar for old-style and modern function headers. * Additional C99/C++ keywords -- from 'alignas' to 'thread_local' -- are supported internally. * '@i'nclude file 'iso_types.w' for numeric types (in addition to 'c++lib.w'). * Countless code modifications, including some corrections amd improvements. Thanks and cudos to Github user "@texdraft" for numerous contributions to this feature release! git-svn-id: svn://tug.org/texlive/trunk@58884 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/cwebdir/iso_types.w')
-rw-r--r--Build/source/texk/web2c/cwebdir/iso_types.w95
1 files changed, 95 insertions, 0 deletions
diff --git a/Build/source/texk/web2c/cwebdir/iso_types.w b/Build/source/texk/web2c/cwebdir/iso_types.w
new file mode 100644
index 00000000000..c88e76b7f9e
--- /dev/null
+++ b/Build/source/texk/web2c/cwebdir/iso_types.w
@@ -0,0 +1,95 @@
+@q This file defines type names introduced in modern dialects @>
+@q of C and C++ as special entities for TeX formatting @>
+
+@q C99 and C11 underscore keywords @>
+@q http://en.cppreference.com/w/c/keyword @>
+
+@s _Alignas alignas
+@s _Alignof alignof
+@s _Atomic int
+@s _Bool bool
+@s _Complex complex
+@s _Generic class
+@s _Imaginary imaginary
+@s _Noreturn noreturn
+@s _Static_assert static_assert
+@s _Thread_local thread_local
+
+@q C99 and C11 core language atomic types @>
+@q http://en.cppreference.com/w/c/atomic @>
+
+@s atomic_bool bool
+@s atomic_char char
+@s atomic_schar char
+@s atomic_uchar char
+@s atomic_short short
+@s atomic_ushort short
+@s atomic_int int
+@s atomic_uint int
+@s atomic_long long
+@s atomic_ulong long
+@s atomic_llong long
+@s atomic_ullong long
+@s atomic_char8_t char8_t
+@s atomic_char16_t char16_t
+@s atomic_char32_t char32_t
+@s atomic_wchar_t wchar_t
+@s atomic_int_least8_t int
+@s atomic_uint_least8_t int
+@s atomic_int_least16_t int
+@s atomic_uint_least16_t int
+@s atomic_int_least32_t int
+@s atomic_uint_least32_t int
+@s atomic_int_least64_t int
+@s atomic_uint_least64_t int
+@s atomic_int_fast8_t int
+@s atomic_uint_fast8_t int
+@s atomic_int_fast16_t int
+@s atomic_uint_fast16_t int
+@s atomic_int_fast32_t int
+@s atomic_uint_fast32_t int
+@s atomic_int_fast64_t int
+@s atomic_uint_fast64_t int
+@s atomic_intptr_t int
+@s atomic_uintptr_t int
+@s atomic_ptrdiff_t ptrdiff_t
+@s atomic_size_t size_t
+@s atomic_intmax_t int
+@s atomic_uintmax_t int
+
+@q C99 preprocessor @>
+
+@s _Pragma pragma
+
+@q Integral types of C99 and C++, see @>
+@q http://en.cppreference.com/w/c/types/integer and @>
+@q http://en.cppreference.com/w/cpp/types/integer @>
+
+@s int8_t int
+@s int16_t int
+@s int32_t int
+@s int64_t int
+@s int_fast8_t int
+@s int_fast16_t int
+@s int_fast32_t int
+@s int_fast64_t int
+@s int_least8_t int
+@s int_least16_t int
+@s int_least32_t int
+@s int_least64_t int
+@s intmax_t int
+@s intptr_t int
+@s uint8_t int
+@s uint16_t int
+@s uint32_t int
+@s uint64_t int
+@s uint_fast8_t int
+@s uint_fast16_t int
+@s uint_fast32_t int
+@s uint_fast64_t int
+@s uint_least8_t int
+@s uint_least16_t int
+@s uint_least32_t int
+@s uint_least64_t int
+@s uintmax_t int
+@s uintptr_t int