* conform/conformtest.pl: Define $mustprepend{"stdio.h"}.
	* libio/stdio.h: Always define __need___va_list.
This commit is contained in:
Ulrich Drepper 2001-01-28 09:13:22 +00:00
parent ddd1037e4d
commit f9b9f291b7
9 changed files with 29 additions and 27 deletions

View File

@ -1,5 +1,8 @@
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.

View File

@ -56,6 +56,7 @@ $CFLAGS{"XOPEN2K"} = "-I. '-D__attribute__(x)=' -D_XOPEN_SOURCE=600";
$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";

View File

@ -32,9 +32,7 @@ __BEGIN_DECLS
# 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>

View File

@ -35,8 +35,8 @@
/* 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;

View File

@ -91,7 +91,7 @@ struct _pthread_descr_struct __pthread_initial_thread = {
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 */
@ -148,7 +148,7 @@ struct _pthread_descr_struct __pthread_manager_thread = {
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 */

View File

@ -99,7 +99,7 @@ extern int __pthread_unlock(struct _pthread_fastlock *lock);
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)
@ -141,7 +141,7 @@ extern void __pthread_alt_unlock(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)
@ -165,7 +165,7 @@ 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;
}

View File

@ -1,5 +1,5 @@
/* 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
@ -20,9 +20,9 @@
/* 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 }

View File

@ -31,26 +31,26 @@ __BEGIN_DECLS
/* 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

View File

@ -1,5 +1,5 @@
/* 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
@ -19,9 +19,9 @@
/* 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 }