Hacker News new | ask | show | jobs
by jforberg 2608 days ago
Nice! That's something I often wish GCC had.
1 comments

I google'd this - GCC comes close. There are built-ins for overflow-checking add/sub/mul arithmetic. [0] There are also compiler flags to enable explode-on-overflow or wrap-on-overflow, except for division and remainder. [1]

[0] https://gcc.gnu.org/onlinedocs/gcc/Integer-Overflow-Builtins...

[1] https://www.gnu.org/software/autoconf/manual/autoconf-2.63/h...

Indeed. What I would really like is a way to toggle it on case-by-case basis. With -fwrapv you have to convince the code owner to toggle it globally, which can complicate things unless you are the owner.
Looks like GCC doesn't have a pragma to enable it on a per-object-file basis. Pity. From the pragma docs I get the impression it's not so much that it would be a bad idea, as simply not something they've got round to implementing.

I don't imagine it's possible to check using a static assert, either.

https://gcc.gnu.org/onlinedocs/gcc/Pragmas.html#Pragmas