Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-8342

Coverity: CID 121074: UNINTENDED_INTEGER_DIVISION in src/support/float.c

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • None
    • WT10.0.1, 5.2.0, 5.0.5
    • None
    • None

    Description

      Coverity link: https://coverity.corp.mongodb.com/reports.htm#v17018/p10049/fileInstanceId=38836915&defectInstanceId=20184607&mergedDefectId=121074&eventId=20184607-0

      37 int38__wt_floatcmp(float f1, float f2)
      39 {
      40 #define WT_FLOAT_PRECISION 1000
       
        CID 121074 (#1 of 1): Result is not floating-point (UNINTENDED_INTEGER_DIVISION)integer_division: Dividing integer expressions 1 and 1000, and then converting the integer quotient to type float. Any remainder, or fractional part of the quotient, is ignored.  To compute and use a non-integer quotient, change or cast either operand to type float. If integer division is intended, consider indicating that by casting the result to type int 
       
      41    if (fabsf(f1 - f2) < 1 / WT_FLOAT_PRECISION)
      42        return (0); 

       

      That is "1 / 1000" is integer zero, not a floating point number.

      Attachments

        Issue Links

          Activity

            People

              keith.bostic@mongodb.com Keith Bostic
              donald.anderson@mongodb.com Donald Anderson
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: