From: Mark Wooding Date: Sat, 10 Aug 2019 21:39:13 +0000 (+0100) Subject: doc/clang.tex: Squish the `\desclabel' mess for simple C types. X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/commitdiff_plain/a13386ba3e5cbeecd0e4315a423e3280dabf0f1c doc/clang.tex: Squish the `\desclabel' mess for simple C types. No idea why I tolerated all of the `c-type-MUMBLE' repetition the first time. --- diff --git a/doc/clang.tex b/doc/clang.tex index 76539c7..0213269 100644 --- a/doc/clang.tex +++ b/doc/clang.tex @@ -508,16 +508,13 @@ In Sod, the leaf types are Two simple type objects are equal if and only if they have @|string=| names and matching qualifiers. - \def\x#1{\desclabel{const}{#1}} - \x{c-type-bool} \x{c-type-char} \x{c-type-wchar-t} \x{c-type-signed-char} - \x{c-type-unsigned-char} \x{c-type-short} \x{c-type-unsigned-short} - \x{c-type-int} \x{c-type-unsigned} \x{c-type-long} \x{c-type-unsigned-long} - \x{c-type-long-long} \x{c-type-unsigned-long-long} \x{c-type-size-t} - \x{c-type-ptrdiff-t} \x{c-type-float} \x{c-type-double} - \x{c-type-long-double} \x{c-type-float-imaginary} - \x{c-type-double-imaginary} \x{c-type-long-double-imaginary} - \x{c-type-float-complex} \x{c-type-double-complex} - \x{c-type-long-double-complex} \x{c-type-va-list} \x{c-type-void} + \def\x#1{\desclabel{const}{c-type-#1}} + \x{bool} \x{char} \x{wchar-t} \x{signed-char} \x{unsigned-char} \x{short} + \x{unsigned-short} \x{int} \x{unsigned} \x{long} \x{unsigned-long} + \x{long-long} \x{unsigned-long-long} \x{size-t} \x{ptrdiff-t} \x{float} + \x{double} \x{long-double} \x{float-imaginary} \x{double-imaginary} + \x{long-double-imaginary} \x{float-complex} \x{double-complex} + \x{long-double-complex} \x{va-list} \x{void} A number of symbolic type specifiers for builtin types are predefined as shown in \xref{tab:codegen.c-types.simple}. These are all defined as if by @|define-simple-c-type|, so can be used to construct qualified types.