stage3/fill_candidate_datatypes.cc
changeset 609 9ab033d2bb55
parent 607 be9ba3531afb
child 610 50b708dff319
equal deleted inserted replaced
608:f5d942be991b 609:9ab033d2bb55
   137   {/* Remove signed data types */
   137   {/* Remove signed data types */
   138     int64_t value = 0;
   138     int64_t value = 0;
   139     if (VALID_CVALUE(  int64, symbol)) value = GET_CVALUE(int64, symbol);
   139     if (VALID_CVALUE(  int64, symbol)) value = GET_CVALUE(int64, symbol);
   140     if (IS_OVERFLOW (  int64, symbol)) value = (int64_t)INT32_MAX + (int64_t)1;
   140     if (IS_OVERFLOW (  int64, symbol)) value = (int64_t)INT32_MAX + (int64_t)1;
   141     
   141     
   142     if ((value < 0) || (value > 1))                 {__REMOVE__( bool_type_name);}
   142     if ((value <  INT8_MIN) || (value >  INT8_MAX)) {__REMOVE__(sint_type_name);}
   143     if ((value <  INT8_MIN) || (value >  INT8_MAX)) {__REMOVE__(sint_type_name);  __REMOVE__( byte_type_name);}
   143     if ((value < INT16_MIN) || (value > INT16_MAX)) {__REMOVE__( int_type_name);}
   144     if ((value < INT16_MIN) || (value > INT16_MAX)) {__REMOVE__( int_type_name);  __REMOVE__( word_type_name);}
   144     if ((value < INT32_MIN) || (value > INT32_MAX)) {__REMOVE__(dint_type_name);}
   145     if ((value < INT32_MIN) || (value > INT32_MAX)) {__REMOVE__(dint_type_name);  __REMOVE__(dword_type_name);}
   145     if (IS_OVERFLOW( int64, symbol))                {__REMOVE__(lint_type_name);}
   146     if (IS_OVERFLOW( int64, symbol))                {__REMOVE__(lint_type_name);  __REMOVE__(lword_type_name);}
       
   147   }
   146   }
   148     
   147     
   149   {/* Remove floating point data types */
   148   {/* Remove floating point data types */
   150     real64_t value = 0;
   149     real64_t value = 0;
   151     if (VALID_CVALUE( real64, symbol)) value = GET_CVALUE(real64, symbol);
   150     if (VALID_CVALUE( real64, symbol)) value = GET_CVALUE(real64, symbol);