* conform/conformtest.pl: Define $mustprepend{"stdio.h"}.
* libio/stdio.h: Always define __need___va_list.
2001-01-28 Ulrich Drepper <drepper@redhat.com>
+ * conform/conformtest.pl: Define $mustprepend{"stdio.h"}.
+ * libio/stdio.h: Always define __need___va_list.
+
* conform/data/pthread.h-data: Make priority protocol related
functions optional. Fix typos.
$mustprepend{'regex.h'} = "#include <sys/types.h>\n";
$mustprepend{'sched.h'} = "#include <sys/types.h>\n";
$mustprepend{'signal.h'} = "#include <pthread.h>\n";
+$mustprepend{'stdio.h'} = "#include <stdarg.h>\n";
$mustprepend{'wchar.h'} = "#include <stdarg.h>\n";
$mustprepend{'wordexp.h'} = "#include <stddef.h>\n";
# define __need_NULL
# include <stddef.h>
-# ifndef __USE_XOPEN
-# define __need___va_list
-# endif
+# define __need___va_list
# include <stdarg.h>
# include <bits/types.h>
/* Array of active threads. Entry 0 is reserved for the initial thread. */
struct pthread_handle_struct __pthread_handles[PTHREAD_THREADS_MAX] =
-{ { LOCK_INITIALIZER, &__pthread_initial_thread, 0},
- { LOCK_INITIALIZER, &__pthread_manager_thread, 0}, /* All NULLs */ };
+{ { __LOCK_INITIALIZER, &__pthread_initial_thread, 0},
+ { __LOCK_INITIALIZER, &__pthread_manager_thread, 0}, /* All NULLs */ };
/* For debugging purposes put the maximum number of threads in a variable. */
const int __linuxthreads_pthread_threads_max = PTHREAD_THREADS_MAX;
0, /* Always index 0 */
0, /* int p_report_events */
{{{0, }}, 0, NULL}, /* td_eventbuf_t p_eventbuf */
- ATOMIC_INITIALIZER, /* struct pthread_atomic p_resume_count */
+ __ATOMIC_INITIALIZER, /* struct pthread_atomic p_resume_count */
0, /* char p_woken_by_cancel */
0, /* char p_condvar_avail */
0, /* char p_sem_avail */
1, /* Always index 1 */
0, /* int p_report_events */
{{{0, }}, 0, NULL}, /* td_eventbuf_t p_eventbuf */
- ATOMIC_INITIALIZER, /* struct pthread_atomic p_resume_count */
+ __ATOMIC_INITIALIZER, /* struct pthread_atomic p_resume_count */
0, /* char p_woken_by_cancel */
0, /* char p_condvar_avail */
0, /* char p_sem_avail */
static inline void __pthread_init_lock(struct _pthread_fastlock * lock)
{
lock->__status = 0;
- lock->__spinlock = LT_SPINLOCK_INIT;
+ lock->__spinlock = __LT_SPINLOCK_INIT;
}
static inline int __pthread_trylock (struct _pthread_fastlock * lock)
static inline void __pthread_alt_init_lock(struct _pthread_fastlock * lock)
{
lock->__status = 0;
- lock->__spinlock = LT_SPINLOCK_INIT;
+ lock->__spinlock = __LT_SPINLOCK_INIT;
}
static inline int __pthread_alt_trylock (struct _pthread_fastlock * lock)
WRITE_MEMORY_BARRIER();
res = 0;
}
- lock->__spinlock = LT_SPINLOCK_INIT;
+ lock->__spinlock = __LT_SPINLOCK_INIT;
}
return res;
}
/* Generic definitions for spinlock initializers.
- Copyright (C) 2000 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
/* Initial value of a spinlock. Most platforms should use zero,
unless they only implement a "test and clear" operation instead of
the usual "test and set". */
-#define LT_SPINLOCK_INIT 0
+#define __LT_SPINLOCK_INIT 0
/* Macros for lock initializers, using the above definition. */
-#define LOCK_INITIALIZER { 0, LT_SPINLOCK_INIT }
-#define ALT_LOCK_INITIALIZER { 0, LT_SPINLOCK_INIT }
-#define ATOMIC_INITIALIZER { 0, LT_SPINLOCK_INIT }
+#define __LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
+#define __ALT_LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
+#define __ATOMIC_INITIALIZER { 0, __LT_SPINLOCK_INIT }
/* Initializers. */
#define PTHREAD_MUTEX_INITIALIZER \
- {0, 0, 0, PTHREAD_MUTEX_TIMED_NP, LOCK_INITIALIZER}
+ {0, 0, 0, PTHREAD_MUTEX_TIMED_NP, __LOCK_INITIALIZER}
#ifdef __USE_GNU
# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \
- {0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP, LOCK_INITIALIZER}
+ {0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP, __LOCK_INITIALIZER}
# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \
- {0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP, LOCK_INITIALIZER}
+ {0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP, __LOCK_INITIALIZER}
# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \
- {0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP, LOCK_INITIALIZER}
+ {0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP, __LOCK_INITIALIZER}
#endif
-#define PTHREAD_COND_INITIALIZER {LOCK_INITIALIZER, 0}
+#define PTHREAD_COND_INITIALIZER {__LOCK_INITIALIZER, 0}
#ifdef __USE_UNIX98
# define PTHREAD_RWLOCK_INITIALIZER \
- { LOCK_INITIALIZER, 0, NULL, NULL, NULL, \
+ { __LOCK_INITIALIZER, 0, NULL, NULL, NULL, \
PTHREAD_RWLOCK_DEFAULT_NP, PTHREAD_PROCESS_PRIVATE }
#endif
#ifdef __USE_GNU
# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \
- { LOCK_INITIALIZER, 0, NULL, NULL, NULL, \
+ { __LOCK_INITIALIZER, 0, NULL, NULL, NULL, \
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, PTHREAD_PROCESS_PRIVATE }
#endif
/* PA-RISC specific definitions for spinlock initializers.
- Copyright (C) 2000 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
/* Initial value of a spinlock. PA-RISC only implements atomic load
and clear so this must be non-zero. */
-#define LT_SPINLOCK_INIT 1
+#define __LT_SPINLOCK_INIT 1
/* Macros for lock initializers, using the above definition. */
-#define LOCK_INITIALIZER { 0, LT_SPINLOCK_INIT }
-#define ALT_LOCK_INITIALIZER { 0, LT_SPINLOCK_INIT }
-#define ATOMIC_INITIALIZER { 0, LT_SPINLOCK_INIT }
+#define __LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
+#define __ALT_LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
+#define __ATOMIC_INITIALIZER { 0, __LT_SPINLOCK_INIT }