compile in gcc 4.7