https://issues.dlang.org/show_bug.cgi?id=13410
--- Comment #25 from Ketmar Dark <ket...@ketmar.no-ip.org> --- and we can make it alot less expensive without losing speed. and all this with only 4/8 bytes of overhead for single AA (not for single AA entry, but for the whole AA). the only questionable thing with this patch is that it assumes that AA is mutable. but we can't have AA literals anyway, AFAIK. and no, it's not really pessimizes remove() if noone used .byKey/.byValue on AA, and even if that properties was used, next rehashing will turn off caching again. so i daresay that remove() slowdown is not noticable at all. --