... when its length is close to Natural'Last. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * libgnat/a-strunb__shared.ads (Allocate): Additional parameter to provide additional amount of space to be allocated. * libgnat/a-strunb__shared.adb (Aligned_Max_Length): Limit length to Natural'Last when requested length is larger than it. (Allocate): Merge two slightly different implementations into one.