Compiling with and without assertions enabled the name of some generated symbols differ; this is an issue when using pre-built libraries. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * freeze.adb (Check_Inherited_Conditions): Dispatch table wrappers must be placed in the list of entities of their scope at the same place of their wrapped primitive. This is required for private types since these wrappers are built when their full tagged type declaration is frozen but they may override a primitive defined in the public part of the package (and it is important to maintain the wrapper in the list of public entities of the package to ensure their correct visibility).