summaryrefslogtreecommitdiffstats
path: root/gcc/testsuite/gcc.c-torture/execute/builtins/printf.c
diff options
context:
space:
mode:
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-26 01:25:20 +0000
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-26 01:25:20 +0000
commit6d77ed9258cbd3bc0de2971c6c501140493686db (patch)
tree3361bfee7bbd0f755ff02c5d8d2bb9e0a58ca2d3 /gcc/testsuite/gcc.c-torture/execute/builtins/printf.c
parent4e741c1ddb038b1409c7c0c974c8f7f3ebfeb3ac (diff)
downloadppe42-gcc-6d77ed9258cbd3bc0de2971c6c501140493686db.tar.gz
ppe42-gcc-6d77ed9258cbd3bc0de2971c6c501140493686db.zip
PR middle-end/25022
* builtins.c (expand_builtin_printf, expand_builtin_fprintf, fold_builtin_fputs, fold_builtin_printf, fold_builtin_fprintf): Lookup the explicit replacement functions for any unlocked stdio builtin transformations. testsuite: * gcc.c-torture/execute/builtins/fprintf.c, gcc.c-torture/execute/builtins/fputs-lib.c, gcc.c-torture/execute/builtins/fputs.c, gcc.c-torture/execute/builtins/lib/fprintf.c, gcc.c-torture/execute/builtins/lib/printf.c, gcc.c-torture/execute/builtins/printf.c: Test the unlocked style. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107535 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/builtins/printf.c')
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/builtins/printf.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/printf.c b/gcc/testsuite/gcc.c-torture/execute/builtins/printf.c
index 0d01e544aa1..e493f90b7cd 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtins/printf.c
+++ b/gcc/testsuite/gcc.c-torture/execute/builtins/printf.c
@@ -6,6 +6,7 @@
Written by Kaveh R. Ghazi, 12/4/2000. */
extern int printf (const char *, ...);
+extern int printf_unlocked (const char *, ...);
extern void abort(void);
void
@@ -28,8 +29,12 @@ main_test (void)
if (s3 != s2+1 || *s3 != 0)
abort();
+ printf ("");
+ printf ("%s", "");
printf ("\n");
+ printf ("%s", "\n");
printf ("hello world\n");
+ printf ("%s", "hello world\n");
/* Test at least one instance of the __builtin_ style. We do this
to ensure that it works and that the prototype is correct. */
@@ -38,4 +43,10 @@ main_test (void)
prototypes are set correctly too. */
__builtin_putchar ('\n');
__builtin_puts ("hello");
+ /* Check the unlocked style, these evaluate to nothing to avoid
+ problems on systems without the unlocked functions. */
+ printf_unlocked ("");
+ __builtin_printf_unlocked ("");
+ printf_unlocked ("%s", "");
+ __builtin_printf_unlocked ("%s", "");
}
OpenPOWER on IntegriCloud