fix gcc43 bug