diff -r 1ecf916cc397 -r 3d72d09bd40f stage3/constant_folding.cc --- a/stage3/constant_folding.cc Tue Jun 12 22:32:09 2012 +0200 +++ b/stage3/constant_folding.cc Tue Jun 12 22:46:51 2012 +0200 @@ -433,7 +433,9 @@ void *constant_folding_c::visit(integer_c *symbol) { bool overflow; NEW_CVALUE( int64, symbol); SET_CVALUE( int64, symbol, extract_int64_value(symbol, &overflow)); + if (overflow) SET_OVFLOW(int64, symbol); NEW_CVALUE(uint64, symbol); SET_CVALUE(uint64, symbol, extract_uint64_value(symbol, &overflow)); + if (overflow) SET_OVFLOW(uint64, symbol); return NULL; }