1-- { dg-do run } 2-- { dg-options "-O0 -gnata -gnateV" } 3 4with Ada.Exceptions; use Ada.Exceptions; 5 6procedure Valid_Scalars2 is 7 8 Traced : Boolean := False; 9 10 procedure Trace (E : in Exception_Occurrence) is 11 pragma Assert (E'Valid_scalars); 12 begin 13 Traced := True; 14 end Trace; 15 16begin 17 raise Program_Error; 18exception 19 when E : others => 20 pragma Assert (E'Valid_scalars); 21 Trace (E); 22 if not Traced then 23 raise Program_Error; 24 end if; 25end Valid_Scalars2; 26