| -- { dg-do compile } | |
| procedure Raise_Expr is | |
| E : exception; | |
| type T is tagged limited null record; | |
| type TC is new T with null record; | |
| function F0 return Boolean is | |
| begin | |
| return raise E; | |
| end; | |
| function F return T'Class is | |
| TT : T; | |
| begin | |
| return raise E; -- Causes compile-time crash | |
| end F; | |
| begin | |
| declare | |
| O : T'class := F; | |
| begin | |
| null; | |
| end; | |
| end Raise_Expr; |