make this compile on linux with newer gcc