about summary refs log tree commit diff
path: root/include/printf.h
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2022-05-24 08:03:11 +0200
committerFlorian Weimer <fweimer@redhat.com>2022-05-24 08:03:11 +0200
commit46db9783476e7e2b3f2437ec6437436443699fca (patch)
tree0225f48df79bca5a3de63a53c29bca599a2492cb /include/printf.h
parent800d535504c06f16726f2add8602ee9a36baf808 (diff)
downloadglibc-46db9783476e7e2b3f2437ec6437436443699fca.tar.gz
glibc-46db9783476e7e2b3f2437ec6437436443699fca.tar.xz
glibc-46db9783476e7e2b3f2437ec6437436443699fca.zip
stdio-common: Move union printf_arg int <printf.h>
The type does not depend on wide vs narrow preprocessor macros,
so it does not need to be customized in stdio-common/printf-parse.h.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
Diffstat (limited to 'include/printf.h')
-rw-r--r--include/printf.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/printf.h b/include/printf.h
index fb0b71fa4c..78accaab6d 100644
--- a/include/printf.h
+++ b/include/printf.h
@@ -20,6 +20,27 @@ int __register_printf_specifier (int, printf_function,
 				 printf_arginfo_size_function);
 libc_hidden_proto (__register_printf_specifier)
 
+/* The various kinds of arguments that can be passed to printf.  */
+union printf_arg
+  {
+    wchar_t pa_wchar;
+    int pa_int;
+    long int pa_long_int;
+    long long int pa_long_long_int;
+    unsigned int pa_u_int;
+    unsigned long int pa_u_long_int;
+    unsigned long long int pa_u_long_long_int;
+    double pa_double;
+    long double pa_long_double;
+#if __HAVE_FLOAT128_UNLIKE_LDBL
+    _Float128 pa_float128;
+#endif
+    const char *pa_string;
+    const wchar_t *pa_wstring;
+    void *pa_pointer;
+    void *pa_user;
+};
+
 #include <bits/types/locale_t.h>
 
 /* Now define the internal interfaces.  */