rt_gccstream/gcc/testsuite/gnat.dg/noreturn2.adb

24 lines
599 B
Ada

-- { 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;