PVS-Studio Analysis Results


Date:Tue May 11 05:47:06 2021
PVS-Studio Version:7.12.46137.116
Command Line:plog-converter PVS-studio.log --srcRoot . --excludedCodes V011 --renderTypes fullhtml --output PVS-studio.html.d
Total Warnings (GA):94
Group Location Level Code Message
General Analysis typval_encode.c.h:393 Medium V785 Constant expression in switch statement.
General Analysis buffer.c:3142 Medium V681 The language standard does not define an order in which the 'bt_dontwrite' functions will be called during evaluation of arguments.
General Analysis eval.c:5474 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis eval.c:5754 High V576 Incorrect format. Consider checking the fourth actual argument of the 'vim_snprintf' function. The memsize type argument is expected.
General Analysis eval.c:5754 High V576 Incorrect format. Consider checking the fifth actual argument of the 'vim_snprintf' function. The memsize type argument is expected.
General Analysis eval.c:6124 Medium V1051 Consider checking for misprints. It's possible that the 'trans_name' should be checked here.
General Analysis typval_encode.c.h:283 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis typval_encode.c.h:326 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis typval_encode.c.h:326 High V576 Incorrect format. Consider checking the fourth actual argument of the 'vim_snprintf' function. The memsize type argument is expected.
General Analysis typval_encode.c.h:330 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis typval_encode.c.h:489 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis typval_encode.c.h:489 High V576 Incorrect format. Consider checking the fourth actual argument of the 'vim_snprintf' function. The memsize type argument is expected.
General Analysis typval_encode.c.h:497 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis typval_encode.c.h:487 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis typval_encode.c.h:487 High V576 Incorrect format. Consider checking the fourth actual argument of the 'vim_snprintf' function. The memsize type argument is expected.
General Analysis funcs.c:1822 High V547 Expression is always true.
General Analysis funcs.c:2535 Medium V560 A part of conditional expression is always true: mods != NULL.
General Analysis funcs.c:3765 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis funcs.c:6682 Medium V614 Potentially uninitialized variable 'ga.ga_len' used.
General Analysis funcs.c:8273 Medium V560 A part of conditional expression is always true.
General Analysis typval.c:2712 High V547 Expression is always true.
General Analysis userfunc.c:147 Medium V547 Expression 'expr == NULL' is always false.
General Analysis userfunc.c:3471 Medium V560 A part of conditional expression is always false: abort.
General Analysis userfunc.c:3501 Medium V560 A part of conditional expression is always false: abort.
General Analysis userfunc.c:3509 Medium V560 A part of conditional expression is always false: abort.
General Analysis ex_cmds.c:3649 High V1051 Consider checking for misprints. It's possible that the 'current_match.start.lnum' should be checked here.
General Analysis ex_cmds2.c:2741 Medium V507 Pointer to local array 'sourcing_name_buf' is stored outside the scope of this array. Such a pointer will become invalid.
General Analysis ex_docmd.c:4184 Medium V547 Expression 'eap->line2 < 0' is always false.
General Analysis ex_session.c:454 High V576 Incorrect format. Consider checking the fifth actual argument of the 'fprintf' function. The memsize type argument is expected.
General Analysis ex_session.c:454 High V576 Incorrect format. Consider checking the sixth actual argument of the 'fprintf' function. The memsize type argument is expected.
General Analysis fileio.c:4497 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis fileio.c:5460 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis fold.c:2846 Medium V560 A part of conditional expression is always true: (gap)->ga_len > 0.
General Analysis fold.c:2850 Medium V560 A part of conditional expression is always true: (gap)->ga_len > 0.
General Analysis fold.c:2869 Medium V560 A part of conditional expression is always true: (gap)->ga_len > 0.
General Analysis highlight.c:567 Medium V1051 Consider checking for misprints. It's possible that the 'cattrs.rgb_fg_color' should be checked here.
General Analysis highlight.c:585 Medium V1051 Consider checking for misprints. It's possible that the 'cattrs.rgb_fg_color' should be checked here.
General Analysis if_cscope.c:1934 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis keymap.c:673 Medium V1051 Consider checking for misprints. It's possible that the 'key' should be checked here.
General Analysis marktree.c:164 High V512 A call of the 'memcpy' function will lead to underflow of the buffer 'z->key'.
General Analysis marktree.c:469 High V1028 Possible overflow. Consider casting operands of the 'y->n + 1' operator to the 'size_t' type, not the result.
General Analysis marktree.c:491 High V1028 Possible overflow. Consider casting operands of the 'y->n + 1' operator to the 'size_t' type, not the result.
General Analysis memline.c:1017 Medium V1048 The 'buf->b_ml.ml_stack_top' variable was assigned the same value.
General Analysis memline.c:1019 Medium V1048 The 'buf->b_ml.ml_stack_size' variable was assigned the same value.
General Analysis normal.c:3182 High V781 The value of the 'col' index is checked after it was used. Perhaps there is a mistake in program logic.
General Analysis ops.c:2761 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis ops.c:5026 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis ops.c:5028 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis ops.c:5030 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis ops.c:5032 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4081 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4083 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4085 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4482 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4483 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4484 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis option.c:4519 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis input.c:448 Medium V1044 Loop break conditions do not depend on the number of iterations.
General Analysis quickfix.c:2755 Medium V560 A part of conditional expression is always false: old_qf_curlist != qi->qf_curlist.
General Analysis quickfix.c:2756 Medium V560 A part of conditional expression is always false: old_changetick != qfl->qf_changedtick.
General Analysis quickfix.c:2859 Medium V560 A part of conditional expression is always false: old_changetick != qfl->qf_changedtick.
General Analysis regexp_nfa.c:6170 High V1051 Consider checking for misprints. It's possible that the 'pim->result' should be checked here.
General Analysis screen.c:1720 Medium V560 A part of conditional expression is always false: wp->w_wcol == old_wcol.
General Analysis screen.c:1722 Medium V560 A part of conditional expression is always true: old_topline == wp->w_topline.
General Analysis screen.c:4090 Medium V614 Potentially uninitialized variable 'win_col_offset' used. Consider checking the second actual argument of the 'draw_virt_text' function.
General Analysis screen.c:2874 Medium V1051 Consider checking for misprints. It's possible that the 'vcol_sbr' should be checked here.
General Analysis screen.c:2933 High V512 A call of the 'memset' function will lead to underflow of the buffer 'buf_fold'.
General Analysis screen.c:3844 Medium V560 A part of conditional expression is always true: eol_hl_off == 0.
General Analysis screen.c:4661 Medium V1051 Consider checking for misprints. It's possible that the 'redraw_next' should be checked here.
General Analysis screen.c:5131 Medium V512 A call of the 'strcpy' function will lead to overflow of the buffer '(char *)(p + len)'.
General Analysis screen.c:7009 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis search.c:1530 Medium V768 The variable 'dir' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis sha256.c:7 High V1042 This file is marked with copyleft license, which requires you to open the derived source code.
General Analysis shada.c:4100 High V1063 The modulo by 1 operation is meaningless. The result will always be zero.
General Analysis sign.c:2015 Medium V547 Expression 'group == NULL' is always false.
General Analysis sign.c:2117 Medium V547 Expression 'group == NULL' is always false.
General Analysis spell.c:449 Medium V557 Array underrun is possible. The value of 'mi.mi_fwordlen - 1' index could reach -1.
General Analysis spell.c:5968 High V781 The value of the 'i' index is checked after it was used. Perhaps there is a mistake in program logic.
General Analysis strings.c:596 High V568 It's odd that 'sizeof()' operator evaluates the size of a pointer to a class, but not the size of the 'tvs[0].vval.v_list' class object.
General Analysis strings.c:596 High V568 It's odd that 'sizeof()' operator evaluates the size of a pointer to a class, but not the size of the 'tvs[0].vval.v_dict' class object.
General Analysis strings.c:596 High V568 It's odd that 'sizeof()' operator evaluates the size of a pointer to a class, but not the size of the 'tvs[0].vval.v_partial' class object.
General Analysis syntax.c:3361 Medium V1051 Consider checking for misprints. It's possible that the 'arg_end' should be checked here.
General Analysis syntax.c:3550 Medium V1051 Consider checking for misprints. It's possible that the 'arg_end' should be checked here.
General Analysis tag.c:1187 Medium V560 A part of conditional expression is always true: rettv.vval.v_special == kSpecialVarNull.
General Analysis input.c:592 Medium V1044 Loop break conditions do not depend on the number of iterations.
General Analysis input.c:604 Medium V1044 Loop break conditions do not depend on the number of iterations.
General Analysis tui.c:1133 Medium V751 Parameter 'cols' is not used inside function body.
General Analysis tui.c:1850 Medium V1051 Consider checking for misprints. It's possible that the 'data->unibi_ext.set_cursor_style' should be checked here.
General Analysis tui.c:1877 Medium V1051 Consider checking for misprints. It's possible that the 'data->unibi_ext.set_cursor_style' should be checked here.
General Analysis tui.c:1895 Medium V1051 Consider checking for misprints. It's possible that the 'data->unibi_ext.set_cursor_style' should be checked here.
General Analysis undo.c:1021 Medium V547 Expression 'buf' is always true.
General Analysis streams-test.c:24 Medium V507 Pointer to local array 'args' is stored outside the scope of this array. Such a pointer will become invalid.
General Analysis rbuffer.c:10 Medium V1044 Loop break conditions do not depend on the number of iterations.
General Analysis rbuffer.c:18 Medium V1044 Loop break conditions do not depend on the number of iterations.