# HG changeset patch # User Mario de Sousa # Date 1342692341 -3600 # Node ID 50b708dff31907e92fffcb45b8eebea529b40f2b # Parent 9ab033d2bb55da1cfefed522b2db18aa797bfec1 fix bug: remove REAL from candidate datatypes when real constant has overflowed. diff -r 9ab033d2bb55 -r 50b708dff319 stage3/fill_candidate_datatypes.cc --- a/stage3/fill_candidate_datatypes.cc Wed Jul 18 23:44:42 2012 +0100 +++ b/stage3/fill_candidate_datatypes.cc Thu Jul 19 11:05:41 2012 +0100 @@ -148,6 +148,7 @@ {/* Remove floating point data types */ real64_t value = 0; if (VALID_CVALUE( real64, symbol)) value = GET_CVALUE(real64, symbol); + if (IS_OVERFLOW ( real64, symbol)) value = (real64_t)REAL32_MAX + (real64_t)1; if (value > REAL32_MAX ) {__REMOVE__( real_type_name);} if (value < -REAL32_MAX ) {__REMOVE__( real_type_name);} if (IS_OVERFLOW( real64, symbol)) {__REMOVE__(lreal_type_name);}