gcc 4.6 compatibility