Peter Alexander: > Nitpick; > > head = (head + 1) & ((cast(size_t)1 << power2) - 1); > > can be > > head = (head + 1) & (A.length - 1); > > No? power2 seems superfluous. I see. Thank you. I will improve it later. Bye, bearophile