PVS-Studio Analysis Results

Source code:FarManager-master-git-71ca64ffee5a5750edb91192caa6e8964486529a
Date:06/02/18 09:22:30
PVS-Studio Version:6.23.25784.985
Total Warnings (GA):171
Total Warnings (OP):156
Total Warnings (64):26
Group Location Level Code Message
64-bit errors hook_wow64.cpp:190 High V114 Dangerous explicit type pointer conversion: reinterpret_cast< LPDWORD > (& p_loff)
64-bit errors plugina.cpp:2690 High V220 Suspicious sequence of types castings: memsize -> 32-bit integer -> memsize. The value being cast: 'did.PtrLength'.
64-bit errors plugina.cpp:2685 High V220 Suspicious sequence of types castings: memsize -> 32-bit integer -> memsize.
64-bit errors plugina.cpp:2957 High V220 Suspicious sequence of types castings: memsize -> 32-bit integer -> memsize. The value being cast: 'li.ItemsNumber'.
64-bit errors clipboard.cpp:329 Medium V119 More than one sizeof() operator is used in one expression.
64-bit errors edit.cpp:1598 Medium V105 Second operand of '?:' operation: implicit type conversion to memsize type.
64-bit errors editor.cpp:6293 Medium V119 More than one sizeof() operator is used in one expression.
64-bit errors editor.cpp:3171 Medium V127 An overflow of the 32-bit 'Decrement' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors editor.cpp:3504 Medium V105 Second operand of '?:' operation: implicit type conversion to memsize type.
64-bit errors filelist.cpp:8593 Medium V127 An overflow of the 32-bit 'CurColumn' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors filelist.cpp:200 Medium V113 Implicit type conversion from memsize to double type or vice versa.
64-bit errors filelist.cpp:6251 Medium V127 An overflow of the 32-bit 'CurSel' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors filelist.cpp:6303 Medium V127 An overflow of the 32-bit 'CurSel' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors filelist.cpp:8166 Medium V127 An overflow of the 32-bit 'CurColumn' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors filelist.cpp:8596 Medium V127 An overflow of the 32-bit 'Level' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors infolist.cpp:971 Medium V127 An overflow of the 32-bit 'Y' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors interf.cpp:788 Medium V127 An overflow of the 32-bit 'CurY' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors macro.cpp:4276 Medium V127 An overflow of the 32-bit 'idxFoundItem' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors macro.cpp:4237 Medium V127 An overflow of the 32-bit 'idxFoundItem' variable is possible inside a long cycle which utilizes a memsize-type loop counter.
64-bit errors macro.cpp:2955 Medium V113 Implicit type conversion from memsize to double type or vice versa.
64-bit errors macro.cpp:3033 Medium V113 Implicit type conversion from memsize to double type or vice versa.
64-bit errors memcheck.cpp:294 Medium V119 More than one sizeof() operator is used in one expression.
64-bit errors memcheck.cpp:217 Medium V119 More than one sizeof() operator is used in one expression.
64-bit errors memcheck.cpp:215 Medium V119 More than one sizeof() operator is used in one expression.
64-bit errors platform.security.cpp:109 Medium V119 More than one sizeof() operator is used in one expression.
64-bit errors vmenu2.cpp:108 Medium V105 Third operand of '?:' operation: implicit type conversion to memsize type.
General Analysis elevation.cpp:849 High V773 The function was exited without releasing the 'ParentProcess' handle. A resource leak is possible.
General Analysis farexcpt.cpp:771 High V609 Divide by zero. Denominator 'InvalidDenominator' == 0.
General Analysis fileedit.cpp:1897 High V573 Uninitialized variable 'UsedDefaultCharStr' was used. The variable was used to initialize itself.
General Analysis fileedit.cpp:1902 High V573 Uninitialized variable 'UsedDefaultCharEOL' was used. The variable was used to initialize itself.
General Analysis filelist.cpp:7930 High V784 The size of the bit mask is less than the size of the first operand. This will cause the loss of higher bits.
General Analysis filelist.cpp:7914 High V784 The size of the bit mask is less than the size of the first operand. This will cause the loss of higher bits.
General Analysis filelist.hpp:108 High V573 Uninitialized variable 'm_NumberOfLinks' was used. The variable was used to initialize itself.
General Analysis filelist.hpp:109 High V573 Uninitialized variable 'm_NumberOfStreams' was used. The variable was used to initialize itself.
General Analysis filelist.hpp:110 High V573 Uninitialized variable 'm_StreamsSize' was used. The variable was used to initialize itself.
General Analysis hook_wow64.cpp:175 High V594 The pointer steps out of array's bounds.
General Analysis macro.cpp:819 High V547 Expression 'mpr.ReturnType == MPRT_PLUGINCOMMAND' is always true.
General Analysis main.cpp:816 High V759 Incorrect order of exception handling blocks. Exception of 'exception' type will be caught in a catch block for 'exception' base type.
General Analysis platform.fs.cpp:1632 High V502 Perhaps the '?:' operator works in a different way than it was expected. The '?:' operator has a lower priority than the '||' operator.
General Analysis plist.cpp:223 High V773 Visibility scope of the 'Process' handle was exited without releasing the resource. A resource leak is possible.
General Analysis usermenu.cpp:1016 High V595 The 'MenuItem' pointer was utilized before it was verified against nullptr. Check lines: 1016, 1038.
General Analysis string_utils.hpp:55 Medium V560 A part of conditional expression is always true: Str.data().
General Analysis config.cpp:2273 Medium V601 The bool type is implicitly cast to the class type.
General Analysis config.cpp:2426 Medium V506 Pointer to local variable 'Strings' is stored outside the scope of this variable. Such a pointer will become invalid.
General Analysis config.cpp:763 Medium V601 The 'true' value becomes a class object.
General Analysis dialog.cpp:4586 Medium V519 The 'm_Y2' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 4520, 4586.
General Analysis dialog.cpp:4585 Medium V519 The 'm_X2' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 4519, 4585.
General Analysis editor.cpp:3983 Medium V601 The 'false' value becomes a class object.
General Analysis editor.cpp:2502 Medium V601 The 'false' value becomes a class object.
General Analysis editor.cpp:2504 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.cpp:6703 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.cpp:6700 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.cpp:6671 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.cpp:6658 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.cpp:6634 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.cpp:4033 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:85 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:89 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:95 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:96 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:99 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:83 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:103 Medium V601 The bool type is implicitly cast to the class type.
General Analysis editor.hpp:101 Medium V601 The bool type is implicitly cast to the class type.
General Analysis eject.cpp:128 Medium V547 Expression '!foundError' is always true.
General Analysis farexcpt.hpp:118 Medium V720 It is advised to utilize the 'SuspendThread' function only when developing a debugger (see documentation for details).
General Analysis filepanels.cpp:917 Medium V560 A part of conditional expression is always false: NewType == panel_type::FILE_PANEL.
General Analysis filepanels.hpp:76 Medium V768 The variable 'm_ActivePanelIndex' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis findfile.cpp:2559 Medium V506 Pointer to local variable 'BC' is stored outside the scope of this variable. Such a pointer will become invalid.
General Analysis fnparce.cpp:149 Medium V547 Expression 'm_Tail.data() != nullptr' is always true.
General Analysis help.cpp:1999 Medium V785 Constant expression in switch statement.
General Analysis locale.hpp:52 Medium V730 Not all members of a class are initialized inside the compiler generated constructor. Consider inspecting: m_DateFormat, m_DigitsGrouping, m_DateSeparator, m_TimeSeparator, m_DecimalSeparator, m_ThousandSeparator.
General Analysis macro.cpp:4046 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4052 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4050 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4056 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4064 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4060 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4062 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4669 Medium V601 The bool type is implicitly cast to the double type. Inspect the first argument.
General Analysis macro.cpp:4042 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4040 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4038 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4036 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:3740 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:3713 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4058 Medium V601 The bool type is implicitly cast to the class type.
General Analysis macro.cpp:4044 Medium V601 The bool type is implicitly cast to the class type.
General Analysis manager.cpp:199 Medium V730 It is possible that not all members of a class are initialized inside the constructor. Consider inspecting: m_windows_changed.
General Analysis platform.fs.cpp:790 Medium V560 A part of conditional expression is always false: (di->NextEntryOffset != 0xffffffffUL).
General Analysis plugina.cpp:4382 Medium V506 Pointer to local variable 'et' is stored outside the scope of this variable. Such a pointer will become invalid.
General Analysis plugina.cpp:4247 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4316 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4253 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4256 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4259 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4262 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4291 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4305 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4574 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4575 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4250 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4576 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:4715 Medium V560 A part of conditional expression is always true: KeyM <= KEY_MACRO_ENDBASE.
General Analysis plugina.cpp:4244 Medium V556 The values of different enum types are compared: switch(ENUM_TYPE_A) { case ENUM_TYPE_B: ... }.
General Analysis plugina.cpp:898 Medium V580 An odd explicit type casting. Consider verifying it.
General Analysis plugina.cpp:903 Medium V580 An odd explicit type casting. Consider verifying it.
General Analysis regexp.cpp:1668 Medium V796 It is possible that 'break' statement is missing in switch statement.
General Analysis setattr.cpp:217 Medium V768 The variable 'EncryptState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:201 Medium V768 The variable 'EncryptState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:248 Medium V768 The variable 'SubfoldersState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:291 Medium V768 The variable 'SubfoldersState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:184 Medium V768 The variable 'EncryptState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:312 Medium V768 The variable 'SubfoldersState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:222 Medium V768 The variable 'CompressState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:187 Medium V768 The variable 'CompressState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis setattr.cpp:208 Medium V768 The variable 'CompressState' is of enum type. It is odd that it is used as a variable of a Boolean-type.
General Analysis usermenu.cpp:1039 Medium V506 Pointer to local variable 'NewItemIterator' is stored outside the scope of this variable. Such a pointer will become invalid.
General Analysis viewer.hpp:92 Medium V601 The bool type is implicitly cast to the class type.
General Analysis cddrv.cpp:167 Low V525 The code contains the collection of similar blocks. Check items '6', '7', '7' in lines 167, 170, 173.
General Analysis cmdline.cpp:797 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis codepage_selection.cpp:330 Low V783 Dereferencing of the invalid iterator might take place.
General Analysis range.hpp:222 Low V659 Declarations of functions with 'operator *' 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: 221, 222.
General Analysis string_utils.hpp:106 Low V667 The 'throw' operator does not possess any arguments and is not situated within the 'catch' block.
General Analysis dialog.cpp:4461 Low V522 There might be dereferencing of a potential null pointer 'CurItem'.
General Analysis dialog.cpp:1484 Low V656 Variables 'Color[0]', 'Color[1]' are initialized through the call to the same function. It's probably an error or un-optimized code. Check lines: 1482, 1484.
General Analysis dialog.cpp:1473 Low V656 Variables 'Color[0]', 'Color[1]' are initialized through the call to the same function. It's probably an error or un-optimized code. Check lines: 1471, 1473.
General Analysis dialog.cpp:4772 Low V601 The 'true' value is implicitly cast to the integer type.
General Analysis dialog.cpp:4776 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis dizlist.cpp:282 Low V783 Dereferencing of the invalid iterator might take place.
General Analysis editor.cpp:4040 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:294 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3188 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:5096 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3652 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3670 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3656 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3673 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3685 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3954 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:5166 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:5148 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis editor.cpp:3642 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis fardlgbuilder.cpp:83 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis filefilter.cpp:844 Low V601 The 'true' value is implicitly cast to the integer type.
General Analysis filefilter.cpp:939 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the third argument.
General Analysis filefilter.cpp:946 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the third argument.
General Analysis filefilter.cpp:959 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the third argument.
General Analysis filefilter.cpp:952 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the third argument.
General Analysis filelist.cpp:1860 Low V522 There might be dereferencing of a potential null pointer 'CurPtr'.
General Analysis filelist.cpp:4585 Low V550 An odd precise comparison. It's probably better to use a comparison with defined precision: fabs(A - B) < Epsilon.
General Analysis filelist.cpp:7470 Low V783 Dereferencing of the invalid iterator might take place.
General Analysis filelist.cpp:7203 Low V522 There might be dereferencing of a potential null pointer 'CurPanelData'.
General Analysis filestr.cpp:264 Low V522 There might be dereferencing of a potential null pointer 'ReadBufPtr'.
General Analysis findfile.cpp:2258 Low V769 The 'PanelData' pointer in the 'PanelData + I' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.
General Analysis findfile.cpp:2259 Low V522 There might be dereferencing of a potential null pointer 'CurPanelItem'.
General Analysis findfile.cpp:2288 Low V522 There might be dereferencing of a potential null pointer 'CurPanelItem'.
General Analysis infolist.cpp:1096 Low V525 The code contains the collection of similar blocks. Check items 'F2', 'F3', 'F8', 'F8' in lines 1096, 1097, 1098, 1099.
General Analysis interf.cpp:184 Low V513 Use _beginthreadex/_endthreadex functions instead of CreateThread/ExitThread functions.
General Analysis keyboard.cpp:289 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis macro.cpp:2236 Low V550 An odd precise comparison: Data->Values[0].Double == 1. It's probably better to use a comparison with defined precision: fabs(A - B) < Epsilon.
General Analysis macro.cpp:2302 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis macro.cpp:2195 Low V601 The 'false' value is implicitly cast to the integer type. Inspect the first argument.
General Analysis macro.cpp:2616 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis macro.cpp:4977 Low V522 There might be dereferencing of a potential null pointer 'record'.
General Analysis panelmix.cpp:443 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis platform.concurrency.cpp:183 Low V659 Declarations of functions with 'multi_waiter::add' 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: 176, 183.
General Analysis plclass.hpp:354 Low V667 The 'throw' operator does not possess any arguments and is not situated within the 'catch' block.
General Analysis plugapi.cpp:2622 Low V522 There might be dereferencing of a potential null pointer 'settings'.
General Analysis plugapi.cpp:2547 Low V522 There might be dereferencing of a potential null pointer 're'.
General Analysis plugapi.cpp:2502 Low V522 There might be dereferencing of a potential null pointer 'Filter'.
General Analysis plugins.cpp:2175 Low V522 There might be dereferencing of a potential null pointer 'MenuItems'.
General Analysis qview.cpp:605 Low V525 The code contains the collection of similar blocks. Check items 'F4', 'F8', 'F2', 'F8' in lines 605, 606, 607, 608.
General Analysis regexp.cpp:1736 Low V783 Dereferencing of the invalid iterator might take place.
General Analysis regexp.cpp:2781 Low V522 There might be dereferencing of a potential null pointer 'hmatch'.
General Analysis stddlg.cpp:812 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis strmix.cpp:777 Low V574 The 'Match' pointer is used simultaneously as an array and as a pointer to single object. Check lines: 733, 777.
General Analysis strmix.cpp:447 Low V550 An odd precise comparison: Fractional == Multiplier. It's probably better to use a comparison with defined precision: fabs(A - B) < Epsilon.
General Analysis tvar.cpp:405 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis tvar.cpp:375 Low V565 An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing.
General Analysis viewer.cpp:3264 Low V769 The 't_line' pointer in the 't_line + m[0].start' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.
General Analysis viewer.cpp:3208 Low V769 The 't_line' pointer in the 't_line + off' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.
General Analysis viewer.cpp:3053 Low V769 The 't_buff' pointer in the 't_buff + nw1' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.
General Analysis viewer.cpp:2353 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis viewer.cpp:2351 Low V601 The 'true' value is implicitly cast to the integer type.
General Analysis viewer.cpp:2997 Low V769 The 't_buff' pointer in the 't_buff + i' expression could be nullptr. In such case, resulting value will be senseless and it should not be used.
General Analysis vmenu2.cpp:160 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:209 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:285 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the second argument.
General Analysis vmenu2.cpp:150 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:137 Low V601 The 'true' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:109 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:107 Low V601 The 'false' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:102 Low V601 The 'true' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:76 Low V601 The 'true' value is implicitly cast to the integer type.
General Analysis vmenu2.cpp:307 Low V601 The 'true' value is implicitly cast to the integer type. Inspect the second argument.
General Analysis vmenu2.cpp:572 Low V601 The 'false' value is implicitly cast to the integer type.
Micro-optimizations config.cpp:2926 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:2270 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:906 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. Modes' with 'const .. &Modes'.
Micro-optimizations copy_progress.cpp:76 Medium V813 Decreased performance. The 'Seconds' argument should probably be rendered as a constant reference.
Micro-optimizations datetime.cpp:519 Medium V813 Decreased performance. The 'Point' argument should probably be rendered as a constant reference.
Micro-optimizations datetime.cpp:638 Medium V813 Decreased performance. The 'UtcTime' argument should probably be rendered as a constant reference.
Micro-optimizations datetime.cpp:443 Medium V801 Decreased performance. It is better to redefine the second function argument as a reference. Consider replacing 'const .. Dst' with 'const .. &Dst'.
Micro-optimizations datetime.hpp:72 Medium V813 Decreased performance. The 'Value' argument should probably be rendered as a constant reference.
Micro-optimizations dialog.cpp:269 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. Items' with 'const .. &Items'.
Micro-optimizations dialog.cpp:269 Medium V801 Decreased performance. It is better to redefine the second function argument as a reference. Consider replacing 'const .. ItemsEx' with 'const .. &ItemsEx'.
Micro-optimizations dialog.cpp:350 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. SrcItems' with 'const .. &SrcItems'.
Micro-optimizations dialog.cpp:374 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. SrcItems' with 'const .. &SrcItems'.
Micro-optimizations dialog.cpp:2071 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Items[I].UCData->CursorPos' expression repeatedly.
Micro-optimizations dialog.cpp:1610 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Items[m_FocusPos].UCData' expression repeatedly.
Micro-optimizations dirinfo.cpp:444 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations editcontrol.cpp:510 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->AutoComplete' expression repeatedly.
Micro-optimizations fardlgbuilder.cpp:692 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. Buttons' with 'const .. &Buttons'.
Micro-optimizations fardlgbuilder.cpp:239 Medium V801 Decreased performance. It is better to redefine the third function argument as a reference. Consider replacing 'const .. handler' with 'const .. &handler'.
Micro-optimizations fileedit.cpp:769 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'm_editor->m_Flags' expression repeatedly.
Micro-optimizations fileedit.cpp:1459 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->EdOpt' expression repeatedly.
Micro-optimizations fileedit.cpp:2215 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'm_editor->m_it_CurLine' expression repeatedly.
Micro-optimizations filelist.cpp:2875 Medium V820 The 'strInfoHostFile' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations filelist.cpp:5095 Medium V820 The 'strPluginDestPath' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations filelist.cpp:7586 Medium V820 The 'strInfoCurDir' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations filelist.cpp:4871 Medium V820 The 'strConvertedCommand' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations filelist.cpp:505 Medium V802 On 32-bit platform, structure size can be reduced from 24 to 20 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations filelist.cpp:108 Medium V813 Decreased performance. The 'First', 'Second' arguments should probably be rendered as constant references.
Micro-optimizations filelist.cpp:7332 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'm_ViewSettings.PanelColumns[I]' expression repeatedly.
Micro-optimizations filelist.cpp:5460 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'fi.Owner(this)' expression repeatedly.
Micro-optimizations filelist.cpp:2891 Medium V820 The 'strInfoCurDir' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations findfile.cpp:1768 Medium V813 Decreased performance. The 'strSearchFileName' argument should probably be rendered as a constant reference.
Micro-optimizations findfile.cpp:570 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->FindOpt' expression repeatedly.
Micro-optimizations help.cpp:1403 Medium V820 The 'strLastSearchStr0' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations help.cpp:1546 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'StackData->strHelpMask' expression repeatedly.
Micro-optimizations help.cpp:2160 Medium V820 The 'FilteredURLPath' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations hilight.cpp:503 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations infolist.cpp:357 Medium V820 The 'strDriveRoot' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations keyboard.hpp:53 Medium V802 On 32-bit platform, structure size can be reduced from 40 to 36 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations macro.cpp:3946 Medium V807 Decreased performance. Consider creating a pointer to avoid using the same expression repeatedly.
Micro-optimizations macro.cpp:623 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->Macro' expression repeatedly.
Micro-optimizations macro.cpp:572 Medium V802 On 32-bit platform, structure size can be reduced from 32 to 24 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations main.cpp:388 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. Args' with 'const .. &Args'.
Micro-optimizations main.cpp:467 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. Args' with 'const .. &Args'.
Micro-optimizations manager.cpp:152 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations panelmix.cpp:633 Medium V813 Decreased performance. The 'FileTime' argument should probably be rendered as a constant reference.
Micro-optimizations platform.concurrency.cpp:190 Medium V813 Decreased performance. The 'Timeout' argument should probably be rendered as a constant reference.
Micro-optimizations plugapi.cpp:1007 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. Src' with 'const .. &Src'.
Micro-optimizations plugapi.cpp:1017 Medium V801 Decreased performance. It is better to redefine the second function argument as a reference. Consider replacing 'const .. Src' with 'const .. &Src'.
Micro-optimizations plugin.hpp:1543 Medium V802 On 32-bit platform, structure size can be reduced from 24 to 16 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugin.hpp:1389 Medium V802 On 32-bit platform, structure size can be reduced from 32 to 24 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugin.hpp:2540 Medium V802 On 32-bit platform, structure size can be reduced from 64 to 56 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugin.hpp:2846 Medium V802 On 32-bit platform, structure size can be reduced from 32 to 24 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugin.hpp:515 Medium V802 On 32-bit platform, structure size can be reduced from 40 to 32 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugin.hpp:1366 Medium V802 On 32-bit platform, structure size can be reduced from 40 to 32 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugin.hpp:1676 Medium V802 On 32-bit platform, structure size can be reduced from 32 to 24 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugina.cpp:538 Medium V813 Decreased performance. The 'Lines' argument should probably be rendered as a constant reference.
Micro-optimizations plugina.cpp:571 Medium V813 Decreased performance. The 'Modes', 'UnicodeModes' arguments should probably be rendered as constant references.
Micro-optimizations plugina.cpp:579 Medium V813 Decreased performance. The 'Modes' argument should probably be rendered as a constant reference.
Micro-optimizations plugina.cpp:682 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. PanelItemA' with 'const .. &PanelItemA'.
Micro-optimizations pluginold.hpp:1109 Medium V802 On 32-bit platform, structure size can be reduced from 24 to 16 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugins.cpp:560 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->PluginConfirm' expression repeatedly.
Micro-optimizations poscache.cpp:120 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->ViOpt' expression repeatedly.
Micro-optimizations poscache.cpp:163 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->ViOpt' expression repeatedly.
Micro-optimizations scantree.cpp:190 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'ScanItems.back()' expression repeatedly.
Micro-optimizations setcolor.cpp:63 Medium V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations sqlitedb.cpp:240 Medium V820 The 'strTmp' variable is not used after copying. Copying can be replaced with move/swap for optimization.
Micro-optimizations usermenu.cpp:158 Medium V813 Decreased performance. The 'FileStrings' argument should probably be rendered as a constant reference.
Micro-optimizations usermenu.cpp:744 Medium V810 Decreased performance. The 'cbegin' function was called several times with identical arguments. The result should possibly be saved to a temporary variable, which then could be used while calling the 'for_each' function.
Micro-optimizations viewer.cpp:346 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->ViOpt' expression repeatedly.
Micro-optimizations viewer.cpp:244 Medium V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->ViOpt' expression repeatedly.
Micro-optimizations vmenu.cpp:2858 Medium V801 Decreased performance. It is better to redefine the first function argument as a reference. Consider replacing 'const .. MenuItems' with 'const .. &MenuItems'.
Micro-optimizations vmenu.cpp:106 Medium V813 Decreased performance. The 'Data' argument should probably be rendered as a constant reference.
Micro-optimizations vmenu2.cpp:365 Medium V813 Decreased performance. The 'Data' argument should probably be rendered as a constant reference.
Micro-optimizations cmdline.cpp:860 Low V821 Decreased performance. The 'FEdit' variable can be constructed in a lower level scope.
Micro-optimizations cmdline.cpp:351 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations cmdline.cpp:1040 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations cmdline.cpp:1295 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations cmdline.cpp:1304 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->Exec' expression repeatedly.
Micro-optimizations cmdline.cpp:454 Low V821 Decreased performance. The 'ActivePanel' variable can be constructed in a lower level scope.
Micro-optimizations config.cpp:2888 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:246 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:303 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:403 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:677 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->CmdLine()' expression repeatedly.
Micro-optimizations config.cpp:898 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations config.cpp:1215 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations copy.cpp:531 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->CMOpt' expression repeatedly.
Micro-optimizations copy.cpp:3694 Low V807 Decreased performance. Consider creating a reference to avoid using the 'CP->m_Bytes' expression repeatedly.
Micro-optimizations ctrlobj.cpp:92 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'FPanels->LeftPanel()' expression repeatedly.
Micro-optimizations ctrlobj.cpp:93 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'FPanels->RightPanel()' expression repeatedly.
Micro-optimizations dialog.cpp:2024 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Items[I].ListPtr' expression repeatedly.
Micro-optimizations edit.cpp:2296 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->XLat' expression repeatedly.
Micro-optimizations editcontrol.cpp:416 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->AutoComplete' expression repeatedly.
Micro-optimizations editor.cpp:6900 Low V807 Decreased performance. Consider creating a reference to avoid using the 'edit->m_Str' expression repeatedly.
Micro-optimizations editor.cpp:6545 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->XLat' expression repeatedly.
Micro-optimizations fileedit.cpp:1716 Low V807 Decreased performance. Consider creating a reference to avoid using the 'm_editor->m_Flags' expression repeatedly.
Micro-optimizations fileedit.cpp:2207 Low V807 Decreased performance. Consider creating a reference to avoid using the 'm_editor->Lines' expression repeatedly.
Micro-optimizations fileedit.cpp:2219 Low V807 Decreased performance. Consider creating a reference to avoid using the 'm_editor->m_Flags' expression repeatedly.
Micro-optimizations fileedit.cpp:1671 Low V821 Decreased performance. The 'save_Flags' variable can be constructed in a lower level scope.
Micro-optimizations filelist.cpp:5457 Low V807 Decreased performance. Consider creating a reference to avoid using the 'fi.AlternateFileName()' expression repeatedly.
Micro-optimizations filelist.cpp:5063 Low V807 Decreased performance. Consider creating a reference to avoid using the 'AnotherFilePanel->m_ListData' expression repeatedly.
Micro-optimizations filelist.cpp:4854 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Parent()->GetCmdLine()' expression repeatedly.
Micro-optimizations filetype.cpp:399 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'ConfigProvider().AssocConfig()' expression repeatedly.
Micro-optimizations findfile.cpp:2808 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->FindOpt' expression repeatedly.
Micro-optimizations findfile.cpp:527 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()->ActivePanel()' expression repeatedly.
Micro-optimizations help.cpp:1506 Low V807 Decreased performance. Consider creating a reference to avoid using the 'StackData->strSelTopic' expression repeatedly.
Micro-optimizations help.cpp:1489 Low V807 Decreased performance. Consider creating a reference to avoid using the 'StackData->strHelpPath' expression repeatedly.
Micro-optimizations help.cpp:1805 Low V807 Decreased performance. Consider creating a reference to avoid using the 'StackData->strSelTopic' expression repeatedly.
Micro-optimizations infolist.cpp:127 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->ViOpt' expression repeatedly.
Micro-optimizations infolist.cpp:200 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->InfoPanel' expression repeatedly.
Micro-optimizations interf.cpp:171 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations macro.cpp:950 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->CmdLine()' expression repeatedly.
Micro-optimizations main.cpp:644 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->LoadPlug' expression repeatedly.
Micro-optimizations manager.cpp:924 Low V821 Decreased performance. The 'CurrentWindow' variable can be constructed in a lower level scope.
Micro-optimizations manager.cpp:152 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()->LeftPanel()' expression repeatedly.
Micro-optimizations manager.cpp:153 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()->RightPanel()' expression repeatedly.
Micro-optimizations pathmix.cpp:536 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"C:\\") == L""' with 'ExtractFileName(L"C:\\").empty()'.
Micro-optimizations pathmix.cpp:543 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"\\\\server\\share") == L""' with 'ExtractFileName(L"\\\\server\\share").empty()'.
Micro-optimizations pathmix.cpp:535 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"C:") == L""' with 'ExtractFileName(L"C:").empty()'.
Micro-optimizations pathmix.cpp:533 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"path\\") == L""' with 'ExtractFileName(L"path\\").empty()'.
Micro-optimizations pathmix.cpp:530 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"\\") == L""' with 'ExtractFileName(L"\\").empty()'.
Micro-optimizations pathmix.cpp:529 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"") == L""' with 'ExtractFileName(L"").empty()'.
Micro-optimizations pathmix.cpp:509 Low V815 Decreased performance. Consider replacing the expression 'ExtractFilePath(L"file") == L""' with 'ExtractFilePath(L"file").empty()'.
Micro-optimizations pathmix.cpp:508 Low V815 Decreased performance. Consider replacing the expression 'ExtractFilePath(L"\\file") == L""' with 'ExtractFilePath(L"\\file").empty()'.
Micro-optimizations pathmix.cpp:507 Low V815 Decreased performance. Consider replacing the expression 'ExtractFilePath(L"\\") == L""' with 'ExtractFilePath(L"\\").empty()'.
Micro-optimizations pathmix.cpp:506 Low V815 Decreased performance. Consider replacing the expression 'ExtractFilePath(L"") == L""' with 'ExtractFilePath(L"").empty()'.
Micro-optimizations pathmix.cpp:489 Low V815 Decreased performance. Consider replacing the expression 'ExtractPathRoot(L"file") == L""' with 'ExtractPathRoot(L"file").empty()'.
Micro-optimizations pathmix.cpp:539 Low V815 Decreased performance. Consider replacing the expression 'str == L""' with 'str.empty()'.
Micro-optimizations pathmix.cpp:488 Low V815 Decreased performance. Consider replacing the expression 'ExtractPathRoot(L"\\") == L""' with 'ExtractPathRoot(L"\\").empty()'.
Micro-optimizations pathmix.cpp:487 Low V815 Decreased performance. Consider replacing the expression 'ExtractPathRoot(L"") == L""' with 'ExtractPathRoot(L"").empty()'.
Micro-optimizations pathmix.cpp:474 Low V815 Decreased performance. Consider replacing the expression 'path::join(L"", L"\\") == L""' with 'path::join(L"", L"\\").empty()'.
Micro-optimizations pathmix.cpp:473 Low V815 Decreased performance. Consider replacing the expression 'path::join(L"", L"") == L""' with 'path::join(L"", L"").empty()'.
Micro-optimizations pathmix.cpp:544 Low V815 Decreased performance. Consider replacing the expression 'ExtractFileName(L"\\\\server\\share\\") == L""' with 'ExtractFileName(L"\\\\server\\share\\").empty()'.
Micro-optimizations pathmix.cpp:547 Low V815 Decreased performance. Consider replacing the expression 'str == L""' with 'str.empty()'.
Micro-optimizations pathmix.cpp:548 Low V815 Decreased performance. Consider replacing the expression 'str == L""' with 'str.empty()'.
Micro-optimizations pathmix.cpp:490 Low V815 Decreased performance. Consider replacing the expression 'ExtractPathRoot(L"path\\file") == L""' with 'ExtractPathRoot(L"path\\file").empty()'.
Micro-optimizations pathmix.cpp:540 Low V815 Decreased performance. Consider replacing the expression 'str == L""' with 'str.empty()'.
Micro-optimizations plclass.cpp:414 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->KnownIDs' expression repeatedly.
Micro-optimizations plugina.cpp:4719 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()->ActivePanel()' expression repeatedly.
Micro-optimizations pluginold.hpp:1128 Low V802 On 32-bit platform, structure size can be reduced from 104 to 96 bytes by rearranging the fields according to their sizes in decreasing order.
Micro-optimizations plugins.cpp:1921 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'ConfigProvider().PlCacheCfg()' expression repeatedly.
Micro-optimizations plugins.cpp:1544 Low V821 Decreased performance. The 'ActivePanel' variable can be constructed in a lower level scope.
Micro-optimizations plugins.cpp:1954 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations plugins.cpp:318 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations plugins.cpp:1727 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'ConfigProvider().PlCacheCfg()' expression repeatedly.
Micro-optimizations poscache.cpp:94 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->EdOpt' expression repeatedly.
Micro-optimizations poscache.cpp:54 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->EdOpt' expression repeatedly.
Micro-optimizations preservestyle.cpp:411 Low V807 Decreased performance. Consider creating a reference to avoid using the 'SourceTokens.front()' expression repeatedly.
Micro-optimizations regexp.cpp:2377 Low V807 Decreased performance. Consider creating a reference to avoid using the 'stack.back()' expression repeatedly.
Micro-optimizations setcolor.cpp:401 Low V807 Decreased performance. Consider creating a pointer to avoid using the 'Global->CtrlObject->Cp()' expression repeatedly.
Micro-optimizations string_sort.cpp:314 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->Sort' expression repeatedly.
Micro-optimizations syslog.cpp:1534 Low V821 Decreased performance. The 'VK' variable can be constructed in a lower level scope.
Micro-optimizations viewer.cpp:272 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->ViOpt' expression repeatedly.
Micro-optimizations viewer.cpp:604 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Strings.back()' expression repeatedly.
Micro-optimizations vmenu.cpp:1377 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->XLat' expression repeatedly.
Micro-optimizations vmenu.cpp:1654 Low V807 Decreased performance. Consider creating a reference to avoid using the 'Global->Opt->VMenu' expression repeatedly.