fix UB in constant folding of double -> signed integer conversion