https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109818
--- Comment #25 from Jonathan Wakely <redi at gcc dot gnu.org> --- I think the simplest solution for this bug is just use <math.h> and call trunc instead of trying to use std::trunc. If you use the <math.h> functions in the global namespace then you get exactly the set that is supported by djgpp, not the incomplete set that gets imported into namespace std. It's not ideal, but there's only so much we can do when the underlying <math.h> is incomplete.