PVS static analyzer - 5.0 Release: Difference between revisions

m
Mark bug fixed
m (Mark bug "Won't Fix")
m (Mark bug fixed)
Line 458: Line 458:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/array/dim-vector.h">dim-vector.h (224)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/array/dim-vector.h">dim-vector.h (224)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v659/ V659]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v659/ V659]</td>
       <td style='width: 65%;'>Declarations of functions with 'elem' name differ in the 'const' keyword only, but the bodies of these functions have different composition. This is suspicious and can possibly be an error. Check lines: 218, 224.</td>
       <td style='width: 65%;'>Declarations of functions with 'elem' name differ in the 'const' keyword only, but the bodies of these functions have different composition. This is suspicious and can possibly be an error. Check lines: 218, 224.</td>
Line 563: Line 563:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (63)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (63)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v601/ V601]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v601/ V601]</td>
       <td style='width: 65%;'>The bool type is implicitly cast to the double type.</td>
       <td style='width: 65%;'>The bool type is implicitly cast to the double type.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (64)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (64)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v601/ V601]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v601/ V601]</td>
       <td style='width: 65%;'>The bool type is implicitly cast to the float type.</td>
       <td style='width: 65%;'>The bool type is implicitly cast to the float type.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (160)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (160)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: fabs(x - t) == 0.5. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: fabs(x - t) == 0.5. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (171)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (171)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: fabsf(x - t) == 0.5f. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: fabsf(x - t) == 0.5f. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (240)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (240)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == round(x). It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == round(x). It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (241)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/numeric/lo-mappers.h">lo-mappers.h (241)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == round(x). It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == round(x). It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1307)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1307)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == static_cast&lt;double&gt; (y). It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == static_cast&lt;double&gt; (y). It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1307)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1307)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: static_cast&lt;double&gt; (x) == y. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: static_cast&lt;double&gt; (x) == y. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1308)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1308)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x != static_cast&lt;double&gt; (y). It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x != static_cast&lt;double&gt; (y). It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1308)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/util/oct-inttypes.h">oct-inttypes.h (1308)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: static_cast&lt;double&gt; (x) != y. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: static_cast&lt;double&gt; (x) != y. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (627)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (627)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (633)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (633)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (639)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (639)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (645)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (645)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (652)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (652)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (658)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (658)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (664)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (664)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x != 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &gt; Epsilon.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (670)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (670)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v550/ V550]</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
       <td style='width: 65%;'>An odd precise comparison: x == 0.0f. It's probably better to use a comparison with defined precision: fabs(A - B) &lt; Epsilon.</td>
Line 748: Line 748:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (611)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/operators/mx-inlines.cc">mx-inlines.cc (611)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v524/ V524]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v524/ V524]</td>
       <td style='width: 65%;'>It is odd that the body of 'xis_true' function is fully equivalent to the body of 'logical_value' function.</td>
       <td style='width: 65%;'>It is odd that the body of 'xis_true' function is fully equivalent to the body of 'logical_value' function.</td>
1,072

edits