Bug#362414: abs() returns a negative number & signed types are undefined on overflow (fwd)
It seems the problem here is "signed types are undefined on overflow".
abs (2083755264 + abs (abs (79364096) - 256))
Let express in hex on 32bit platform:
abs (0x7c339500 + abs (abs (0x4bb0000) - 0x100))
abs (0x7c339500 + 0x4baff00)
Does help to change definition of sum_abs from "int" to "unsigned int" ?
Does help to compile it with "-fwrapv" ?