aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sysdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/sysdep.c')
-rw-r--r--gcc/ada/sysdep.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ada/sysdep.c b/gcc/ada/sysdep.c
index 21cd37c..1ecbd14 100644
--- a/gcc/ada/sysdep.c
+++ b/gcc/ada/sysdep.c
@@ -871,9 +871,13 @@ __gnat_get_task_options (void)
- VX_PRIVATE_UMASK as a user-definable option
This leads to VX_USR_TASK_OPTIONS allowing 0x8000 as VX_PRIVATE_UMASK but
taskCreate refusing this option (VX_DEALLOC_TCB is not allowed)
+
+ Note that the same error occurs in both RTP and Kernel mode, but
+ VX_DEALLOC_TCB is not defined in the RTP headers, so we need to
+ explicitely check if VX_PRIVATE_UMASK has value 0x8000
*/
-# if defined (VX_PRIVATE_UMASK) && (VX_DEALLOC_TCB == VX_PRIVATE_UMASK)
- options &= ~VX_DEALLOC_TCB;
+# if defined (VX_PRIVATE_UMASK) && (0x8000 == VX_PRIVATE_UMASK)
+ options &= ~VX_PRIVATE_UMASK;
# endif
options &= VX_USR_TASK_OPTIONS;
#endif