(root)/
gcc-13.2.0/
gcc/
testsuite/
gnat.dg/
noreturn2.adb
-- { dg-do compile }

package body Noreturn2 is

   procedure Raise_Exception_No_Defer (Message : String);
   pragma No_Return (Raise_Exception_No_Defer);

   procedure Raise_From (X : Exception_Occurrence) is
      Occurrence_Message : constant String := Exception_Message (X);
   begin
      if Occurrence_Message = "$" then
         Raise_Exception_No_Defer (Occurrence_Message);
      else
         Raise_Exception_No_Defer ("::" & Occurrence_Message);
      end if;
   end;

   procedure Raise_Exception_No_Defer (Message : String) is
   begin
     raise Program_Error;
   end;

end Noreturn2;