> > FAIL: cxa5012 > > I think this one is an artifact (sometimes an error is reported when > chopping/building/running the test). x86_64-linux is clean too.
Unfortunately this is a real core dump while running the test on my machine (glibc-2.3.3-118 SuSE 9.2) at -O2 or -O0, and this does not reproduce under GDB, see below. I don't know about valgrind on x86_64, is it available? Indeed I see it as a Heisenbug too. This tiny test case also shows it for me: with Ada.Numerics.Float_Random; with Ada.Numerics.Discrete_Random; with ImpDef; use Ada.Numerics; procedure CXA5012 is subtype Discrete_Range is Integer range 1..10_000; package Discrete_Pack is new Discrete_Random(Discrete_Range); DState_1 : Discrete_Pack.State; Not_A_State : constant String := ImpDef.Non_State_String; begin DState_1 := Discrete_Pack.Value(ImpDef.Non_State_String); end CXA5012; It's almost certainly a problem in exception dispatching.