[clang] f3f5d8b - [NFC][clang] Quote literal builtin attribute markers in Builtins.def docs (#160080)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 25 06:55:22 PDT 2025
Author: Radovan Božić
Date: 2025-09-25T13:55:18Z
New Revision: f3f5d8bea836e01a2bc12edf5980c3a51de2fd7a
URL: https://github.com/llvm/llvm-project/commit/f3f5d8bea836e01a2bc12edf5980c3a51de2fd7a
DIFF: https://github.com/llvm/llvm-project/commit/f3f5d8bea836e01a2bc12edf5980c3a51de2fd7a.diff
LOG: [NFC][clang] Quote literal builtin attribute markers in Builtins.def docs (#160080)
Clarify the documentation in Builtins.def by quoting literal attribute
markers (e.g. 'n', 'r', 'U', 'N') to distinguish them from placeholders
such as N in C<N,...>. This avoids confusion and makes the attribute
docs clearer.
Added:
Modified:
clang/include/clang/Basic/Builtins.def
Removed:
################################################################################
diff --git a/clang/include/clang/Basic/Builtins.def b/clang/include/clang/Basic/Builtins.def
index 48437c9397570..9aad00b55d64a 100644
--- a/clang/include/clang/Basic/Builtins.def
+++ b/clang/include/clang/Basic/Builtins.def
@@ -66,7 +66,8 @@
// The third value provided to the macro specifies information about attributes
// of the function. These must be kept in sync with the predicates in the
-// Builtin::Context class. Currently we have:
+// Builtin::Context class. Note: In the descriptions below, {num} is a
+// placeholder for an integer. Currently we have:
// n -> nothrow
// r -> noreturn
// U -> pure
@@ -82,23 +83,23 @@
// h -> this function requires a specific header or an explicit declaration.
// i -> this is a runtime library implemented function without the
// '__builtin_' prefix. It will be implemented in compiler-rt or libgcc.
-// p:N: -> this is a printf-like function whose Nth argument is the format
-// string.
-// P:N: -> similar to the p:N: attribute, but the function is like vprintf
-// in that it accepts its arguments as a va_list rather than
-// through an ellipsis
-// s:N: -> this is a scanf-like function whose Nth argument is the format
-// string.
-// S:N: -> similar to the s:N: attribute, but the function is like vscanf
-// in that it accepts its arguments as a va_list rather than
-// through an ellipsis
+// p:{num}: -> this is a printf-like function whose {num}th argument is the
+// format string.
+// P:{num}: -> similar to the p:{num}: attribute, but the function is like
+// vprintf in that it accepts its arguments as a va_list rather than
+// through an ellipsis
+// s:{num}: -> this is a scanf-like function whose {num}th argument is the
+// format string.
+// S:{num}: -> similar to the s:{num}: attribute, but the function is like
+// vscanf in that it accepts its arguments as a va_list rather than
+// through an ellipsis
// e -> const, but only when -fno-math-errno and FP exceptions are ignored
// g -> const when FP exceptions are ignored
// j -> returns_twice (like setjmp)
// u -> arguments are not evaluated for their side-effects
-// V:N: -> requires vectors of at least N bits to be legal
-// C<N,M_0,...,M_k> -> callback behavior: argument N is called with argument
-// M_0, ..., M_k as payload
+// V:{num}: -> requires vectors of at least {num} bits to be legal
+// C<{num},M_0,...,M_k> -> callback behavior: argument {num} is called with
+// argument M_0, ..., M_k as payload
// z -> this is a function in (possibly-versioned) namespace std
// E -> this function can be constant evaluated by Clang frontend
// G -> this is a C++20 consteval function
More information about the cfe-commits
mailing list