re PR ada/52110 (s-osinte.ads:447:09: "clockid_t" conflicts with declaration at line 194)

PR ada/52110
	* s-osinte-hpux-dce.ads: Declare pthread_rwlockattr_t and
	pthread_rwlock_t subtypes.  Delete duplicate declaration of clockid_t.
	* s-taspri-hpux-dce.ads: Change "pragma Atomic (Thread)" to comment.

From-SVN: r194024
This commit is contained in:
John David Anglin 2012-12-01 19:43:04 +00:00 committed by John David Anglin
parent 27ba7cea69
commit c88fe5d238
3 changed files with 18 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2012-12-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR ada/52110
* s-osinte-hpux-dce.ads: Declare pthread_rwlockattr_t and
pthread_rwlock_t subtypes. Delete duplicate declaration of clockid_t.
* s-taspri-hpux-dce.ads: Change "pragma Atomic (Thread)" to comment.
2012-11-28 Eric Botcazou <ebotcazou@adacore.com>
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Use

View File

@ -244,6 +244,14 @@ package System.OS_Interface is
type pthread_condattr_t is limited private;
type pthread_key_t is private;
-- Read/Write lock not supported on HPUX. To add support both types
-- pthread_rwlock_t and pthread_rwlockattr_t must properly be defined
-- with the associated routines pthread_rwlock_[init/destroy] and
-- pthread_rwlock_[rdlock/wrlock/unlock].
subtype pthread_rwlock_t is pthread_mutex_t;
subtype pthread_rwlockattr_t is pthread_mutexattr_t;
-----------
-- Stack --
-----------
@ -444,7 +452,6 @@ private
end record;
pragma Convention (C, timespec);
type clockid_t is new int;
CLOCK_REALTIME : constant clockid_t := 1;
type cma_t_address is new System.Address;

View File

@ -102,7 +102,9 @@ private
type Private_Data is record
Thread : aliased System.OS_Interface.pthread_t;
pragma Atomic (Thread);
-- pragma Atomic (Thread);
-- Unfortunately, the above fails because Thread is 64 bits.
-- Thread field may be updated by two different threads of control.
-- (See, Enter_Task and Create_Task in s-taprop.adb). They put the
-- same value (thr_self value). We do not want to use lock on those