aboutsummaryrefslogtreecommitdiff
path: root/dejagnu.h
diff options
context:
space:
mode:
authorJacob Bachmeyer <jcb@gnu.org>2022-11-30 22:09:10 -0600
committerJacob Bachmeyer <jcb@gnu.org>2022-11-30 22:09:10 -0600
commitccb3c518df57ff2e9a4b1333dd03283b5ec8232b (patch)
tree19112642d54b10a81801a632779727defa102e09 /dejagnu.h
parenta90a46c304d7ee6598941869017dad9e994913c4 (diff)
downloaddejagnu-ccb3c518df57ff2e9a4b1333dd03283b5ec8232b.zip
dejagnu-ccb3c518df57ff2e9a4b1333dd03283b5ec8232b.tar.gz
dejagnu-ccb3c518df57ff2e9a4b1333dd03283b5ec8232b.tar.bz2
Eliminate global buffer in dejagnu.h
Diffstat (limited to 'dejagnu.h')
-rw-r--r--dejagnu.h81
1 files changed, 47 insertions, 34 deletions
diff --git a/dejagnu.h b/dejagnu.h
index 03f24d0..77795e9 100644
--- a/dejagnu.h
+++ b/dejagnu.h
@@ -40,18 +40,18 @@ static struct {
int unsupported;
} DG__status = { 0 };
-static char buffer[512];
-
static inline void
pass (const char* fmt, ...)
{
va_list ap;
DG__status.pass++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tPASSED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tPASSED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -60,10 +60,12 @@ xpass (const char* fmt, ...)
va_list ap;
DG__status.xpass++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tXPASSED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tXPASSED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -72,10 +74,12 @@ fail (const char* fmt, ...)
va_list ap;
DG__status.fail++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tFAILED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tFAILED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -84,10 +88,12 @@ xfail (const char* fmt, ...)
va_list ap;
DG__status.xfail++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tXFAILED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tXFAILED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -96,10 +102,12 @@ untested (const char* fmt, ...)
va_list ap;
DG__status.untested++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tUNTESTED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tUNTESTED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -108,10 +116,12 @@ unresolved (const char* fmt, ...)
va_list ap;
DG__status.unresolved++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tUNRESOLVED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tUNRESOLVED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -120,10 +130,12 @@ unsupported (const char* fmt, ...)
va_list ap;
DG__status.unsupported++;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tUNSUPPORTED: %s\n", buffer);
+
+ flockfile (stdout);
+ fputs ("\tUNSUPPORTED: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void
@@ -131,10 +143,11 @@ note (const char* fmt, ...)
{
va_list ap;
- va_start (ap, fmt);
- vsnprintf (buffer, sizeof (buffer), fmt, ap);
- va_end (ap);
- printf ("\tNOTE: %s\n", buffer);
+ flockfile (stdout);
+ fputs ("\tNOTE: ", stdout);
+ va_start (ap, fmt); vfprintf (stdout, fmt, ap); va_end (ap);
+ fputc ('\n', stdout);
+ funlockfile (stdout);
}
static inline void