compactustore16* takes now a call-by-value parameter as call-by-ref confuses the compiler and produces crappy code, thanks to Anatoly for root causing this