signed integer limits do not affect ANY_INT constant values.
--- a/stage3/fill_candidate_datatypes.cc Wed Jul 18 23:43:57 2012 +0100
+++ b/stage3/fill_candidate_datatypes.cc Wed Jul 18 23:44:42 2012 +0100
@@ -139,11 +139,10 @@
if (VALID_CVALUE( int64, symbol)) value = GET_CVALUE(int64, symbol);
if (IS_OVERFLOW ( int64, symbol)) value = (int64_t)INT32_MAX + (int64_t)1;
- if ((value < 0) || (value > 1)) {__REMOVE__( bool_type_name);}
- if ((value < INT8_MIN) || (value > INT8_MAX)) {__REMOVE__(sint_type_name); __REMOVE__( byte_type_name);}
- if ((value < INT16_MIN) || (value > INT16_MAX)) {__REMOVE__( int_type_name); __REMOVE__( word_type_name);}
- if ((value < INT32_MIN) || (value > INT32_MAX)) {__REMOVE__(dint_type_name); __REMOVE__(dword_type_name);}
- if (IS_OVERFLOW( int64, symbol)) {__REMOVE__(lint_type_name); __REMOVE__(lword_type_name);}
+ if ((value < INT8_MIN) || (value > INT8_MAX)) {__REMOVE__(sint_type_name);}
+ if ((value < INT16_MIN) || (value > INT16_MAX)) {__REMOVE__( int_type_name);}
+ if ((value < INT32_MIN) || (value > INT32_MAX)) {__REMOVE__(dint_type_name);}
+ if (IS_OVERFLOW( int64, symbol)) {__REMOVE__(lint_type_name);}
}
{/* Remove floating point data types */