mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-31 22:10:34 +03:00 
			
		
		
		
	POSIX.1:2001 added sem_timedwait, but said nothing about defining struct timespec in semaphore.h. The 2008 edition added a corresponding permission to include <time.h> from <semaphore.h>. Since this is the normal POSIX approach in such cases, it seems appropriate to consider this a bug fix, and so this patch makes the conform/ tests allow that inclusion for POSIX.1:2001 as well. Tested for x86_64. * conform/data/semaphore.h-data [XOPEN2K] (time.h): Allow header inclusion. * conform/Makefile (test-xfail-XOPEN2K/semaphore.h/conform): Remove.
		
			
				
	
	
		
			33 lines
		
	
	
		
			921 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			921 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42
 | |
| type sem_t
 | |
| 
 | |
| constant SEM_FAILED
 | |
| 
 | |
| function int sem_close (sem_t*)
 | |
| function int sem_destroy (sem_t*)
 | |
| function int sem_getvalue (sem_t*, int*)
 | |
| function int sem_init (sem_t*, int, unsigned int)
 | |
| function {sem_t*} sem_open (const char*, int, ...)
 | |
| function int sem_post (sem_t*)
 | |
| # if !defined POSIX && !defined UNIX98
 | |
| function int sem_timedwait (sem_t*, const struct timespec*)
 | |
| # endif
 | |
| function int sem_trywait (sem_t*)
 | |
| function int sem_unlink (const char*)
 | |
| function int sem_wait (sem_t*)
 | |
| 
 | |
| allow-header fcntl.h
 | |
| # if !defined POSIX2008 && !defined XOPEN2K8
 | |
| allow-header sys/types.h
 | |
| # endif
 | |
| // Consider addition of this permission in POSIX.1:2008 as a bug fix,
 | |
| // so allow for POSIX.1:2001 as well since that includes sem_timedwait.
 | |
| # if !defined POSIX && !defined UNIX98
 | |
| allow-header time.h
 | |
| # endif
 | |
| 
 | |
| allow sem_*
 | |
| allow SEM_*
 | |
| allow *_t
 | |
| #endif
 |