avoid possible operator= call