Notice: We have migrated to GitLab launching 2024-05-01 see here: https://gitlab.rtems.org/

Ticket #3256: 0001-RTEMS-Ada-Fix-some-POSIX-types.patch

File 0001-RTEMS-Ada-Fix-some-POSIX-types.patch, 1.5 KB (added by Sebastian Huber, on 12/01/17 at 11:04:53)
  • gcc/ada/s-osinte-rtems.ads

    From 9e1126bd6a741c5efcb89f132fc465a0cf90a723 Mon Sep 17 00:00:00 2001
    From: Sebastian Huber <sebastian.huber@embedded-brains.de>
    Date: Fri, 1 Dec 2017 11:42:14 +0100
    Subject: [PATCH] RTEMS/Ada: Fix some POSIX types
    
    gcc/ada
    	* s-osinte-rtems.ads (pthread_cond_t): Use correct size and
    	alignment.
    	(pthread_mutex_t): Likewise.
    	(pthread_rwlock_t): Likewise.
    ---
     gcc/ada/s-osinte-rtems.ads | 18 +++++++++++++++---
     1 file changed, 15 insertions(+), 3 deletions(-)
    
    diff --git a/gcc/ada/s-osinte-rtems.ads b/gcc/ada/s-osinte-rtems.ads
    index a658bbe8b0d..9628d98eac7 100644
    a b private 
    659659
    660660   type pthread_t is new rtems_id;
    661661
    662    type pthread_mutex_t is new rtems_id;
     662   type pthread_mutex_t is record
     663      Data : char_array (1 .. OS_Constants.PTHREAD_MUTEX_SIZE);
     664   end record;
     665   pragma Convention (C, pthread_mutex_t);
     666   for pthread_mutex_t'Alignment use Interfaces.C.double'Alignment;
    663667
    664    type pthread_rwlock_t is new rtems_id;
     668   type pthread_rwlock_t is record
     669      Data : char_array (1 .. OS_Constants.PTHREAD_RWLOCK_SIZE);
     670   end record;
     671   pragma Convention (C, pthread_rwlock_t);
     672   for pthread_rwlock_t'Alignment use Interfaces.C.double'Alignment;
    665673
    666    type pthread_cond_t is new rtems_id;
     674   type pthread_cond_t is record
     675      Data : char_array (1 .. OS_Constants.PTHREAD_COND_SIZE);
     676   end record;
     677   pragma Convention (C, pthread_cond_t);
     678   for pthread_cond_t'Alignment use Interfaces.C.double'Alignment;
    667679
    668680   type pthread_key_t is new rtems_id;
    669681