The frontend crashes processing the derivation of a tagged type whose ultimate ancestor is an interface type I1 that has a null primitive, implements another interface I2 derived from I2, and does not override the null primitive. Tested on x86_64-pc-linux-gnu, committed on trunk 2019-07-08 Javier Miranda gcc/ada/ * exp_disp.adb (Register_Primitive): When registering a primitive in the secondary dispatch table, handle primitive inherited through several levels of type derivation (required to properly handle inherited 'null' primitive). gcc/testsuite/ * gnat.dg/interface9.adb, gnat.dg/interface9_root-child.ads, gnat.dg/interface9_root.ads: New testcase.