https://gcc.gnu.org/g:ec4bf5b6c22e205c9396fc7250da971ec75e3aa3

commit r15-9418-gec4bf5b6c22e205c9396fc7250da971ec75e3aa3
Author: Eric Botcazou <ebotca...@adacore.com>
Date:   Mon Apr 14 09:23:30 2025 +0200

    Add testcase for PR lto/119792
    
    It demonstrates a serious LTO breakage for the Ada language.
    
    gcc/testsuite/
            PR lto/119792
            * gnat.dg/lto29.adb: New test.
            * gnat.dg/lto29_pkg.ads: New helper.

Diff:
---
 gcc/testsuite/gnat.dg/lto29.adb     |  9 +++++++++
 gcc/testsuite/gnat.dg/lto29_pkg.ads | 15 +++++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/gcc/testsuite/gnat.dg/lto29.adb b/gcc/testsuite/gnat.dg/lto29.adb
new file mode 100644
index 000000000000..44f556f04b6e
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/lto29.adb
@@ -0,0 +1,9 @@
+-- { dg-do run }
+-- { dg-options "-O -flto" { target lto } }
+
+with Lto29_Pkg;
+
+procedure Lto29 is
+begin
+  null;
+end;
diff --git a/gcc/testsuite/gnat.dg/lto29_pkg.ads 
b/gcc/testsuite/gnat.dg/lto29_pkg.ads
new file mode 100644
index 000000000000..6008dc58a74e
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/lto29_pkg.ads
@@ -0,0 +1,15 @@
+with Ada.Strings.Bounded;
+
+package Lto29_Pkg is
+
+  package M is new Ada.Strings.Bounded.Generic_Bounded_Length (10);
+
+  type T is new M.Bounded_String;
+
+  Null_T : constant T;
+
+private
+
+  Null_T : constant T := To_Bounded_String ("");
+
+end Lto29_Pkg;

Reply via email to