public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r13-1521] [Ada] Incorrect emptying of CUDA global subprograms
@ 2022-07-06 13:30 Pierre-Marie de Rodat
  0 siblings, 0 replies; only message in thread
From: Pierre-Marie de Rodat @ 2022-07-06 13:30 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:614c45555a11a658f0c9639afb67d1d4bbb3454f

commit r13-1521-g614c45555a11a658f0c9639afb67d1d4bbb3454f
Author: Justin Squirek <squirek@adacore.com>
Date:   Fri Jun 10 12:16:17 2022 +0000

    [Ada] Incorrect emptying of CUDA global subprograms
    
    This patch corrects an error in the compiler whereby no
    Corresponding_Spec was set for emptied CUDA global subprograms - leading
    to a malformed tree.
    
    gcc/ada/
    
            * gnat_cuda.adb (Empty_CUDA_Global_Subprogram): Set
            Specification and Corresponding_Spec to match the original
            Kernel_Body.

Diff:
---
 gcc/ada/gnat_cuda.adb | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/gcc/ada/gnat_cuda.adb b/gcc/ada/gnat_cuda.adb
index 44394b73163..3391263afed 100644
--- a/gcc/ada/gnat_cuda.adb
+++ b/gcc/ada/gnat_cuda.adb
@@ -165,17 +165,20 @@ package body GNAT_CUDA is
 
       Kernel_Elm := First_Elmt (Kernels);
       while Present (Kernel_Elm) loop
-         Kernel := Node (Kernel_Elm);
+         Kernel      := Node (Kernel_Elm);
          Kernel_Body := Subprogram_Body (Kernel);
-         Loc := Sloc (Kernel_Body);
+         Loc         := Sloc (Kernel_Body);
 
          Null_Body := Make_Subprogram_Body (Loc,
-           Specification              => Subprogram_Specification (Kernel),
+           Specification              => Specification (Kernel_Body),
            Declarations               => New_List,
            Handled_Statement_Sequence =>
              Make_Handled_Sequence_Of_Statements (Loc,
                Statements => New_List (Make_Null_Statement (Loc))));
 
+         Set_Corresponding_Spec (Null_Body,
+           Corresponding_Spec (Kernel_Body));
+
          Rewrite (Kernel_Body, Null_Body);
 
          Next_Elmt (Kernel_Elm);


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-07-06 13:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-06 13:30 [gcc r13-1521] [Ada] Incorrect emptying of CUDA global subprograms Pierre-Marie de Rodat

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).