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