aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_prag.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/sem_prag.adb')
-rw-r--r--gcc/ada/sem_prag.adb11
1 files changed, 6 insertions, 5 deletions
diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb
index a1d645e..7647b6d 100644
--- a/gcc/ada/sem_prag.adb
+++ b/gcc/ada/sem_prag.adb
@@ -14725,6 +14725,8 @@ package body Sem_Prag is
end if;
if Nkind (N) = N_Aggregate
+ and then not Null_Record_Present (N)
+ and then No (Component_Associations (N))
and then List_Length (Expressions (N)) = 3
then
Expr := First (Expressions (N));
@@ -14746,7 +14748,7 @@ package body Sem_Prag is
Shared_Memory : Node_Id;
Stream : Node_Id;
- -- Start of processing for CUDA_Execute
+ -- Start of processing for CUDA_Execute
begin
GNAT_Pragma;
@@ -14755,7 +14757,7 @@ package body Sem_Prag is
Analyze_And_Resolve (Kernel_Call);
if Nkind (Kernel_Call) /= N_Function_Call
- or else Etype (Kernel_Call) /= Standard_Void_Type
+ or else Etype (Kernel_Call) /= Standard_Void_Type
then
-- In `pragma CUDA_Execute (Kernel_Call (...), ...)`,
-- GNAT sees Kernel_Call as an N_Function_Call since
@@ -14796,7 +14798,7 @@ package body Sem_Prag is
-- CUDA_Global --
-----------------
- -- pragma CUDA_Global (IDENTIFIER);
+ -- pragma CUDA_Global ([Entity =>] IDENTIFIER);
when Pragma_CUDA_Global => CUDA_Global : declare
Arg_Node : Node_Id;
@@ -14804,8 +14806,7 @@ package body Sem_Prag is
Pack_Id : Entity_Id;
begin
GNAT_Pragma;
- Check_At_Least_N_Arguments (1);
- Check_At_Most_N_Arguments (1);
+ Check_Arg_Count (1);
Check_Optional_Identifier (Arg1, Name_Entity);
Check_Arg_Is_Local_Name (Arg1);