PVS static analyzer - 5.0 Release: Difference between revisions

m
Mark all libgnu as won't fix
m (Update links)
m (Mark all libgnu as won't fix)
Line 20: Line 20:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/unicase/special-casing-table.h">special-casing-table.h (73)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/unicase/special-casing-table.h">special-casing-table.h (73)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v011/ V011]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v011/ V011]</td>
       <td style='width: 65%;'>Presence of #line directives may cause some diagnostic messages to have incorrect file name and line number.</td>
       <td style='width: 65%;'>Presence of #line directives may cause some diagnostic messages to have incorrect file name and line number.</td>
Line 30: Line 30:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libinterp/parse-tree/oct-parse.h">oct-parse.h (221)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libinterp/parse-tree/oct-parse.h">oct-parse.h (221)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v011/ V011]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v011/ V011]</td>
       <td style='width: 65%;'>Presence of #line directives may cause some diagnostic messages to have incorrect file name and line number.</td>
       <td style='width: 65%;'>Presence of #line directives may cause some diagnostic messages to have incorrect file name and line number.</td>
Line 40: Line 40:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libinterp/parse-tree/lex.cc">lex.cc (1)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libinterp/parse-tree/lex.cc">lex.cc (1)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
Line 50: Line 50:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libinterp/parse-tree/oct-parse.cc">oct-parse.cc (1)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libinterp/parse-tree/oct-parse.cc">oct-parse.cc (1)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
Line 60: Line 60:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libinterp/corefcn/oct-tex-lexer.cc">oct-tex-lexer.cc (24)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libinterp/corefcn/oct-tex-lexer.cc">oct-tex-lexer.cc (24)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v011/ V011]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v011/ V011]</td>
       <td style='width: 65%;'>Presence of #line directives may cause some diagnostic messages to have incorrect file name and line number.</td>
       <td style='width: 65%;'>Presence of #line directives may cause some diagnostic messages to have incorrect file name and line number.</td>
Line 70: Line 70:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libinterp/corefcn/oct-tex-lexer.cc">oct-tex-lexer.cc (1)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libinterp/corefcn/oct-tex-lexer.cc">oct-tex-lexer.cc (1)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
Line 80: Line 80:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/liboctave/array/dNDArray.cc">dNDArray.cc (1)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/liboctave/array/dNDArray.cc">dNDArray.cc (1)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v002/ V002]</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
       <td style='width: 65%;'>Some diagnostic messages may contain incorrect line number in this file.</td>
Line 93: Line 93:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/areadlink-with-size.c">areadlink-with-size.c (59)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/areadlink-with-size.c">areadlink-with-size.c (59)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 65%;'>Expression 'symlink_max &lt; INITIAL_LIMIT_BOUND' is always true.</td>
       <td style='width: 65%;'>Expression 'symlink_max &lt; INITIAL_LIMIT_BOUND' is always true.</td>
Line 103: Line 103:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/canonicalize.c">canonicalize.c (297)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/canonicalize.c">canonicalize.c (297)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 65%;'>Expression 'pfxlen' is always false.</td>
       <td style='width: 65%;'>Expression 'pfxlen' is always false.</td>
Line 113: Line 113:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/md2.c">md2.c (60)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/md2.c">md2.c (60)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v512/ V512]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v512/ V512]</td>
       <td style='width: 65%;'>A call of the 'memcpy' function will lead to underflow of the buffer 'ctx-&gt;X'.</td>
       <td style='width: 65%;'>A call of the 'memcpy' function will lead to underflow of the buffer 'ctx-&gt;X'.</td>
Line 123: Line 123:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/md5.c">md5.c (279)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/md5.c">md5.c (279)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v512/ V512]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v512/ V512]</td>
       <td style='width: 65%;'>A call of the 'memcpy' function will lead to underflow of the buffer 'ctx-&gt;buffer'.</td>
       <td style='width: 65%;'>A call of the 'memcpy' function will lead to underflow of the buffer 'ctx-&gt;buffer'.</td>
Line 133: Line 133:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/md5.c">md5.c (318)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/md5.c">md5.c (318)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'FH' is a dangerous expression. The parameters 'b', 'c', 'd' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'FH' is a dangerous expression. The parameters 'b', 'c', 'd' must be surrounded by parentheses.</td>
Line 143: Line 143:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/md5.c">md5.c (372)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/md5.c">md5.c (372)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'CYCLIC' is a dangerous expression. The parameters 'w', 's' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'CYCLIC' is a dangerous expression. The parameters 'w', 's' must be surrounded by parentheses.</td>
Line 153: Line 153:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha1.c">sha1.c (307)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha1.c">sha1.c (307)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'F1' is a dangerous expression. The parameters 'B', 'C', 'D' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'F1' is a dangerous expression. The parameters 'B', 'C', 'D' must be surrounded by parentheses.</td>
Line 163: Line 163:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha1.c">sha1.c (309)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha1.c">sha1.c (309)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'F3' is a dangerous expression. The parameters 'B', 'C', 'D' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'F3' is a dangerous expression. The parameters 'B', 'C', 'D' must be surrounded by parentheses.</td>
Line 173: Line 173:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha1.c">sha1.c (338)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha1.c">sha1.c (338)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'M' is a dangerous expression. The parameter 'I' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'M' is a dangerous expression. The parameter 'I' must be surrounded by parentheses.</td>
Line 183: Line 183:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha256.c">sha256.c (345)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha256.c">sha256.c (345)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v512/ V512]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v512/ V512]</td>
       <td style='width: 65%;'>A call of the 'memcpy' function will lead to underflow of the buffer 'ctx-&gt;buffer'.</td>
       <td style='width: 65%;'>A call of the 'memcpy' function will lead to underflow of the buffer 'ctx-&gt;buffer'.</td>
Line 193: Line 193:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha256.c">sha256.c (402)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha256.c">sha256.c (402)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'F1' is a dangerous expression. The parameters 'E', 'F', 'G' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'F1' is a dangerous expression. The parameters 'E', 'F', 'G' must be surrounded by parentheses.</td>
Line 203: Line 203:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha256.c">sha256.c (433)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha256.c">sha256.c (433)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'S1' is a dangerous expression. The parameter 'x' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'S1' is a dangerous expression. The parameter 'x' must be surrounded by parentheses.</td>
Line 213: Line 213:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/sha512.c">sha512.c (186)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/sha512.c">sha512.c (186)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v785/ V785]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v785/ V785]</td>
       <td style='width: 65%;'>Constant expression in switch statement.</td>
       <td style='width: 65%;'>Constant expression in switch statement.</td>
Line 223: Line 223:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/u64.h">u64.h (31)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/u64.h">u64.h (31)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v1003/ V1003]</td>
       <td style='width: 65%;'>The macro 'u64rol' is a dangerous expression. The parameter 'n' must be surrounded by parentheses.</td>
       <td style='width: 65%;'>The macro 'u64rol' is a dangerous expression. The parameter 'n' must be surrounded by parentheses.</td>
Line 233: Line 233:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/dirname-lgpl.c">dirname-lgpl.c (76)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/dirname-lgpl.c">dirname-lgpl.c (76)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 65%;'>A part of conditional expression is always false: length == 0.</td>
       <td style='width: 65%;'>A part of conditional expression is always false: length == 0.</td>
Line 243: Line 243:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (170)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (170)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '-' operator: (statp)-&gt;st_mode - (statp)-&gt;st_mode</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '-' operator: (statp)-&gt;st_mode - (statp)-&gt;st_mode</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (174)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (174)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '-' operator: (statp)-&gt;st_mode - (statp)-&gt;st_mode</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '-' operator: (statp)-&gt;st_mode - (statp)-&gt;st_mode</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (176)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (176)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '-' operator: (statp)-&gt;st_mode - (statp)-&gt;st_mode</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '-' operator: (statp)-&gt;st_mode - (statp)-&gt;st_mode</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (174)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (174)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v517/ V517]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v517/ V517]</td>
       <td style='width: 65%;'>The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 174, 176.</td>
       <td style='width: 65%;'>The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 174, 176.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (172)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (172)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v517/ V517]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v517/ V517]</td>
       <td style='width: 65%;'>The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 172, 178.</td>
       <td style='width: 65%;'>The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 172, 178.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (170)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/filemode.c">filemode.c (170)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v517/ V517]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v517/ V517]</td>
       <td style='width: 65%;'>The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 170, 174.</td>
       <td style='width: 65%;'>The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 170, 174.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/nstrftime.c">nstrftime.c (1463)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/nstrftime.c">nstrftime.c (1463)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v536/ V536]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v536/ V536]</td>
       <td style='width: 65%;'>Be advised that the utilized constant value is represented by an octal form. Oct: 024, Dec: 20.</td>
       <td style='width: 65%;'>Be advised that the utilized constant value is represented by an octal form. Oct: 024, Dec: 20.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/gettext.h">gettext.h (154)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/gettext.h">gettext.h (154)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 65%;'>Expression 'translation == msg_ctxt_id' is always true.</td>
       <td style='width: 65%;'>Expression 'translation == msg_ctxt_id' is always true.</td>
Line 288: Line 288:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/gettext.h">gettext.h (241)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/gettext.h">gettext.h (241)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v558/ V558]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v558/ V558]</td>
       <td style='width: 65%;'>Function returns the pointer to temporary local object.</td>
       <td style='width: 65%;'>Function returns the pointer to temporary local object.</td>
Line 298: Line 298:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/tempname.c">tempname.c (208)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/tempname.c">tempname.c (208)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v526/ V526]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v526/ V526]</td>
       <td style='width: 65%;'>The 'memcmp' function returns 0 if corresponding buffers are equal. Consider examining the condition for mistakes.</td>
       <td style='width: 65%;'>The 'memcmp' function returns 0 if corresponding buffers are equal. Consider examining the condition for mistakes.</td>
Line 308: Line 308:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/unicase/u-casemap.h">u-casemap.h (286)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/unicase/u-casemap.h">u-casemap.h (286)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v769/ V769]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v769/ V769]</td>
       <td style='width: 65%;'>The 'result' pointer in the 'result + length' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.</td>
       <td style='width: 65%;'>The 'result' pointer in the 'result + length' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.</td>
Line 318: Line 318:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/unistr/u32-to-u8.c">u32-to-u8.c (66)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/unistr/u32-to-u8.c">u32-to-u8.c (66)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v769/ V769]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v769/ V769]</td>
       <td style='width: 65%;'>The 'result' pointer in the 'result + length' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.</td>
       <td style='width: 65%;'>The 'result' pointer in the 'result + length' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.</td>
Line 328: Line 328:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/unistr/u8-to-u32.c">u8-to-u32.c (105)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/unistr/u8-to-u32.c">u8-to-u32.c (105)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v641/ V641]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v641/ V641]</td>
       <td style='width: 65%;'>The size of the allocated memory buffer is not a multiple of the element size.</td>
       <td style='width: 65%;'>The size of the allocated memory buffer is not a multiple of the element size.</td>
Line 338: Line 338:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/xmalloc.c">xmalloc.c (86)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/xmalloc.c">xmalloc.c (86)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v575/ V575]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v575/ V575]</td>
       <td style='width: 65%;'>The potential null pointer is passed into 'memset' function. Inspect the first argument.</td>
       <td style='width: 65%;'>The potential null pointer is passed into 'memset' function. Inspect the first argument.</td>
Line 348: Line 348:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (142)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (142)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v610/ V610]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v610/ V610]</td>
       <td style='width: 65%;'>Unspecified behavior. Check the shift operator '&gt;&gt;'. The left operand '-one' is negative.</td>
       <td style='width: 65%;'>Unspecified behavior. Check the shift operator '&gt;&gt;'. The left operand '-one' is negative.</td>
Line 358: Line 358:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (150)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (150)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 65%;'>A part of conditional expression is always true: (!((time_t) 0 &lt; (time_t) - 1)).</td>
       <td style='width: 65%;'>A part of conditional expression is always true: (!((time_t) 0 &lt; (time_t) - 1)).</td>
Line 368: Line 368:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (274)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (274)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v547/ V547]</td>
       <td style='width: 65%;'>Expression '* t &lt; mktime_min' is always false.</td>
       <td style='width: 65%;'>Expression '* t &lt; mktime_min' is always false.</td>
Line 378: Line 378:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (473)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (473)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 65%;'>A part of conditional expression is always true: mktime_min &lt;= gt.</td>
       <td style='width: 65%;'>A part of conditional expression is always true: mktime_min &lt;= gt.</td>
Line 388: Line 388:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (506)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (506)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 65%;'>A part of conditional expression is always true: mktime_min &lt;= t.</td>
       <td style='width: 65%;'>A part of conditional expression is always true: mktime_min &lt;= t.</td>
Line 398: Line 398:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (506)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/mktime.c">mktime.c (506)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v560/ V560]</td>
       <td style='width: 65%;'>A part of conditional expression is always false: !(mktime_min &lt;= t &amp;&amp; t &lt;= mktime_max).</td>
       <td style='width: 65%;'>A part of conditional expression is always false: !(mktime_min &lt;= t &amp;&amp; t &lt;= mktime_max).</td>
Line 408: Line 408:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/time_rz.c">time_rz.c (77)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/time_rz.c">time_rz.c (77)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v792/ V792]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v792/ V792]</td>
       <td style='width: 65%;'>The 'isdst_differ' function located to the right of the operator '|' will be called regardless of the value of the left operand. Perhaps, it is better to use '||'.</td>
       <td style='width: 65%;'>The 'isdst_differ' function located to the right of the operator '|' will be called regardless of the value of the left operand. Perhaps, it is better to use '||'.</td>
Line 418: Line 418:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (4943)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (4943)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
Line 428: Line 428:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (4963)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (4963)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
Line 438: Line 438:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (5234)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (5234)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
Line 448: Line 448:
     </tr>
     </tr>
     <tr>
     <tr>
       <td style='width: 30%;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (5251)</div></td>
       <td style='width: 30%; text-decoration: line-through;'><div title="/home/pavel/octave/libgnu/vasnprintf.c">vasnprintf.c (5251)</div></td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 5%;'>[https://www.viva64.com/en/w/v501/ V501]</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
       <td style='width: 65%;'>There are identical sub-expressions to the left and to the right of the '/' operator: sizeof (char) / sizeof (char)</td>
1,073

edits