We regularly check various open-source projects with PVS-Studio and send analysis results to developers and usually describe them in our posts as well. Besides, we add them into our bug database. This database is posted below on this page.
The bugs are grouped according to the number of the diagnostic rule that is used to detect them. This number is given in the left column. Click on it to see the diagnostic rule description in the documentation. The right column contains a link to the corresponding error samples.
Some diagnostics haven't detected any bugs in open-source projects yet. The lower you are in the list, the more diagnostics with no error samples there will be. The reason is simple: the later a certain rule had been added, the fewer projects were analyzed with this rule included into the rule set and therefore the fewer chances for it to demonstrate its capabilities.
The fact that projects were being checked at different times determines one more special thing about the bug database. We have deliberately refused to implement an option to view all the bugs found in a particular project: this might lead to an incorrect impression regarding the number of errors in the project and the analyzer's capabilities. You see, the tool is rapidly developing. While it found 10 bugs in a project one year ago, it doesn't mean at all that it will find the same amount now. Compare, for instance, the reports of ReactOS checks: first report, second report (a year and a half later).
You can offer us other open-source projects for analysis. The project types supported by PVS-Studio are given in the tool description.
This database may serve a unique resource for reflection on coding standards development, concepts of articles on programming rules, and help you in other researches regarding enhancing software reliability. We wish you interesting researches.
| V501 | There are identical sub-expressions to the left and to the right of the 'foo' operator. |
| View examples of errors for these projects: ADAPTIVE Communication Environment (ACE), Apache HTTP Server, Audacity, Blender, Chromium, Clang, Crystal Space 3D SDK, Dolphin Emulator, EA WebKit, EchoVNC, Fennec Media, IPP Samples, ... | |
| V502 | Perhaps the '?:' operator works in a different way than it was expected. The '?:' operator has a lower priority than the 'foo' operator. |
| View examples of errors for these projects: Chromium, FCEUX, Grid Control Re-dux, IPP Samples, MongoDB, Newton Game Dynamics, OTS, ReactOS. | |
| V503 | This is a nonsensical comparison: pointer < 0. |
| View examples of errors for these projects: Chromium, IPP Samples, Xpdf. | |
| V504 | It is highly probable that the semicolon ';' is missing after 'return' keyword. |
| We haven't yet come across such errors in open source projects. | |
| V505 | The 'alloca' function is used inside the loop. This can quickly overflow stack. |
| View examples of errors for these projects: Crystal Space 3D SDK, DeSmuME, Multi-threaded Dynamic Queue, Pixie. | |
| V506 | Pointer to local variable 'X' is stored outside the scope of this variable. Such a pointer will become invalid. |
| We haven't yet come across such errors in open source projects. | |
| V507 | Pointer to local array 'X' is stored outside the scope of this array. Such a pointer will become invalid. |
| View examples of errors for these projects: MySQL, Pixie, TortoiseSVN. | |
| V508 | The use of 'new type(n)' pattern was detected. Probably meant: 'new type[n]'. |
| We haven't yet come across such errors in open source projects. | |
| V509 | The 'throw' operator inside the destructor should be placed within the try..catch block. Raising exception inside the destructor is illegal. |
| View examples of errors for these projects: OGRE, TortoiseSVN. | |
| V510 | The 'Foo' function is not expected to receive class-type variable as 'N' actual argument. |
| View examples of errors for these projects: C++ Embedded Web Server, Quake-III-Arena, SMTP Client, TortoiseSVN, WinMerge. | |
| V511 | The sizeof() operator returns size of the pointer, and not of the array, in given expression. |
| View examples of errors for these projects: Chromium, Intel AMT SDK, MySQL, ReactOS, Samba, Shareaza, Wolfenstein 3D. | |
| V512 | A call of the 'Foo' function will lead to a buffer overflow or underflow. |
| View examples of errors for these projects: ADAPTIVE Communication Environment (ACE), Apache HTTP Server, Chromium, DeSmuME, Doom 3, Energy Checker SDK, Far Manager, Fennec Media, Game_Music_Emu library, IPP Samples, MAME, Miranda IM, ... | |
| V513 | Use _beginthreadex/_endthreadex functions instead of CreateThread/ExitThread functions. |
| We haven't yet come across such errors in open source projects. | |
| V514 | Dividing sizeof a pointer by another value. There is a probability of logical error presence. |
| View examples of errors for these projects: Miranda IM, Notepad++, ReactOS. | |
| V515 | The 'delete' operator is applied to non-pointer. |
| We haven't yet come across such errors in open source projects. | |
| V516 | Consider inspecting an odd expression. Non-null function pointer is compared to null. |
| View examples of errors for these projects: Audacity. | |
| V517 | The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. |
| View examples of errors for these projects: Chromium, Doom 3, EIB Suite, ICU, Libwebpdecode, MAME, Notepad++, QT, Quake-III-Arena, ReactOS, SAGA GIS, TickerTape, ... | |
| V518 | The 'malloc' function allocates strange amount of memory calculated by 'strlen(expr)'. Perhaps the correct variant is strlen(expr) + 1. |
| View examples of errors for these projects: FCEUX. | |
| V519 | The 'x' variable is assigned values twice successively. Perhaps this is a mistake. |
| View examples of errors for these projects: CMake, Chromium, Clang, Crystal Space 3D SDK, D programming language, Doom 3, Fireflies, IPP Samples, IT++, Intel AMT SDK, Lugaru, Mozilla Firefox, ... | |
| V520 | The comma operator ',' in array index expression. |
| View examples of errors for these projects: G3D Content Pak. | |
| V521 | Such expressions using the ',' operator are dangerous. Make sure the expression is correct. |
| View examples of errors for these projects: G3D Content Pak, IPP Samples, Lugaru, OpenSSL, Quake-III-Arena, Trans-Proteomic Pipeline, Visualization Toolkit (VTK). | |
| V522 | Dereferencing of the null pointer might take place. |
| View examples of errors for these projects: Blender, Chromium, Clang, D programming language, GeoLib, PCSX2, ReactOS, Visualization Toolkit (VTK), ffdshow. | |
| V523 | The 'then' statement is equivalent to the 'else' statement. |
| View examples of errors for these projects: ADAPTIVE Communication Environment (ACE), Blender, Clang, IPP Samples, MAME, Multi-threaded Dynamic Queue, Notepad++, QT, ReactOS, Samba, Trans-Proteomic Pipeline, UCSniff, ... | |
| V524 | It is odd that the body of 'Foo_1' function is fully equivalent to the body of 'Foo_2' function. |
| View examples of errors for these projects: Blender, Clang, MAME, Nmap Security Scanner, OpenCV, TortoiseSVN. | |
| V525 | The code containing the collection of similar blocks. Check items X, Y, Z, ... in lines N1, N2, N3, ... |
| View examples of errors for these projects: Fennec Media, Miranda IM, MySQL, Notepad++, Win32++. | |
| V526 | The 'strcmp' function returns 0 if corresponding strings are equal. Consider examining the condition for mistakes. |
| View examples of errors for these projects: wxWidgets. | |
| V527 | It is odd that the 'zero' value is assigned to pointer. Probably meant: *ptr = zero. |
| View examples of errors for these projects: Apache HTTP Server, PNG library, ReactOS, Trans-Proteomic Pipeline. | |
| V528 | It is odd that pointer is compared with the 'zero' value. Probably meant: *ptr != zero. |
| View examples of errors for these projects: CxImage, Doom 3, Fennec Media, Miranda IM, Mozilla Firefox, Notepad++, OpenCV, Trans-Proteomic Pipeline, Ultimate TCP/IP, Visualization Toolkit (VTK). | |
| V529 | Odd semicolon ';' after 'if/for/while' operator. |
| View examples of errors for these projects: CamStudio, Fennec Media, Multi-threaded Dynamic Queue, ReactOS, Xpdf. | |
| V530 | The return value of function 'Foo' is required to be utilized. |
| View examples of errors for these projects: Battle for Wesnoth, Chromium, EchoVNC, IPP Samples, Intel AMT SDK, MongoDB, Nmap Security Scanner, ReactOS, TortoiseSVN, Visualization Toolkit (VTK), WinMerge, wxWidgets, ... | |
| V531 | It is odd that a sizeof() operator is multiplied by sizeof(). |
| View examples of errors for these projects: NetDefender Firewall, ReactOS, XUIFramework. | |
| V532 | Consider inspecting the statement of '*pointer++' pattern. Probably meant: '(*pointer)++'. |
| View examples of errors for these projects: Apache HTTP Server, DeSmuME, FCEUX, IPP Samples, OpenSSL, eMule. | |
| V533 | It is likely that a wrong variable is being incremented inside the 'for' operator. Consider reviewing 'X'. |
| View examples of errors for these projects: Doom 3. | |
| V534 | It is likely that a wrong variable is being compared inside the 'for' operator. Consider reviewing 'X'. |
| We haven't yet come across such errors in open source projects. | |
| V535 | The variable 'X' is being used for this loop and for the outer loop. |
| View examples of errors for these projects: Doom 3, IPP Samples, Lugaru, OGRE, Visualization Toolkit (VTK). | |
| V536 | Be advised that the utilized constant value is represented by an octal form. |
| View examples of errors for these projects: Miranda IM, eLynx Image Processing SDK and Lab. | |
| V537 | Consider reviewing the correctness of 'X' item's usage. |
| View examples of errors for these projects: Blender, IPP Samples, Miranda IM, Quake-III-Arena, ReactOS, Trinity Core. | |
| V538 | The line contains control character 0x0B (vertical tabulation). |
| We haven't yet come across such errors in open source projects. | |
| V539 | Consider inspecting iterators which are being passed as arguments to function 'Foo'. |
| We haven't yet come across such errors in open source projects. | |
| V540 | Member 'x' should point to string terminated by two 0 characters. |
| View examples of errors for these projects: Chromium, Fennec Media. | |
| V541 | It is dangerous to print the string into itself. |
| View examples of errors for these projects: CAMEL, Mozilla Firefox, PCSX2, UCSniff. | |
| V542 | Consider inspecting an odd type cast: 'Type1' to ' Type2'. |
| View examples of errors for these projects: Miranda IM. | |
| V543 | It is odd that value 'X' is assigned to the variable 'Y' of HRESULT type. |
| View examples of errors for these projects: WinMerge. | |
| V544 | It is odd that the value 'X' of HRESULT type is compared with 'Y'. |
| We haven't yet come across such errors in open source projects. | |
| V545 | Such conditional expression of 'if' operator is incorrect for the HRESULT type value 'Foo'. The SUCCEEDED or FAILED macro should be used instead. |
| We haven't yet come across such errors in open source projects. | |
| V546 | Member of a class is initialized by itself: 'Foo(Foo)'. |
| We haven't yet come across such errors in open source projects. | |
| V547 | Expression is always true/false. |
| View examples of errors for these projects: ADAPTIVE Communication Environment (ACE), Apache HTTP Server, BCmenu, CamStudio, Chromium, DOSBox, DeSmuME, FCEUX, Geocoding with SQL-Server, ICU, IPP Samples, Intel AMT SDK, ... | |
| V548 | Consider reviewing type casting. TYPE X[][] in not equivalent to TYPE **X. |
| We haven't yet come across such errors in open source projects. | |
| V549 | The 'first' argument of 'Foo' function is equal to the 'second' argument. |
| View examples of errors for these projects: Open Metronome, ReactOS. | |
| V550 | An odd precise comparison. It's probably better to use a comparison with defined precision: fabs(A - B) < Epsilon or fabs(A - B) > Epsilon. |
| View examples of errors for these projects: CAMEL, ffdshow. | |
| V551 | The code under this 'case' label is unreachable. |
| We haven't yet come across such errors in open source projects. | |
| V552 | A bool type variable is being incremented. Perhaps another variable should be incremented instead. |
| We haven't yet come across such errors in open source projects. | |
| V553 | The length of function's body or class's declaration is more than 2000 lines long. You should consider refactoring the code. |
| We haven't yet come across such errors in open source projects. | |
| V554 | Incorrect use of smart pointer. |
| View examples of errors for these projects: Chromium. | |
| V555 | The expression of the 'A - B > 0' kind will work as 'A != B'. |
| We haven't yet come across such errors in open source projects. | |
| V556 | The values of different enum types are compared. |
| View examples of errors for these projects: Clang, XUIFramework. | |
| V557 | Array overrun is possible. |
| View examples of errors for these projects: Blender, CAMEL, CMake, Chromium, Doom 3, Dynamic Universal Music Bibliotheque, Energy Checker SDK, IPP Samples, Irrlicht Engine, LAME, Mozilla Firefox, Notepad++, ... | |
| V558 | Function returns the pointer/reference to temporary local object. |
| We haven't yet come across such errors in open source projects. | |
| V559 | Suspicious assignment inside the condition expression of 'if/while/for' operator. |
| View examples of errors for these projects: Intel AMT SDK, Miranda IM, ffdshow. | |
| V560 | A part of conditional expression is always true/false. |
| View examples of errors for these projects: Apache HTTP Server, CxImage, DeSmuME, Fireflies, Lugaru, Miranda IM, MongoDB, NetDefender Firewall, Notepad++, PCRE, PCSX2, QT, ... | |
| V561 | It's probably better to assign value to 'foo' variable than to declare it anew. |
| View examples of errors for these projects: FCEUX, Vscap. | |
| V562 | It's odd to compare a bool type value with a value of N. |
| View examples of errors for these projects: Blender, ReactOS, Spvolren. | |
| V563 | It is possible that this 'else' branch must apply to the previous 'if' statement. |
| View examples of errors for these projects: BCmenu, PeerBlock, Squirrel, Trans-Proteomic Pipeline. | |
| V564 | The '&' or '|' operator is applied to bool type value. You've probably forgotten to include parentheses or intended to use the '&&' or '||' operator. |
| View examples of errors for these projects: Battle for Wesnoth, Blender, Chromium, DOSBox, Doom 3, FCEUX, MySQL, Network Security Services (NSS), Wolfenstein 3D. | |
| V565 | An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing. |
| View examples of errors for these projects: G3D Content Pak. | |
| V566 | The integer constant is converted to pointer. Possibly an error or a bad coding style. |
| We haven't yet come across such errors in open source projects. | |
| V567 | Undefined behavior. The variable is modified while being used twice between sequence points. |
| View examples of errors for these projects: Doom 3, Fennec Media, IPP Samples, Miranda IM, SAGA GIS, ffdshow. | |
| V568 | It's odd that the argument of sizeof() operator is the expression. |
| View examples of errors for these projects: Apache HTTP Server, CxImage, Energy Checker SDK, FCEUX, Miranda IM, OpenCV, ReactOS, Wolfenstein 3D. | |
| V569 | Truncation of constant value. |
| We haven't yet come across such errors in open source projects. | |
| V570 | The variable is assigned to itself. |
| View examples of errors for these projects: OpenCV, QT, Quake-III-Arena, ReactOS. | |
| V571 | Recurring check. This condition was already verified in previous line. |
| View examples of errors for these projects: Blender, Energy Checker SDK, IPP Samples, Notepad++, QT. | |
| V572 | It is odd that the object which was created using 'new' operator is immediately casted to another type. |
| View examples of errors for these projects: wxWidgets. | |
| V573 | Uninitialized variable 'Foo' was used. The variable was used to initialize itself. |
| We haven't yet come across such errors in open source projects. | |
| V574 | The pointer is used simultaneously as an array and as a pointer to single object. |
| We haven't yet come across such errors in open source projects. | |
| V575 | Function receives an odd argument. |
| View examples of errors for these projects: Doom 3, Fennec Media, G3D Content Pak, Miranda IM, Mozilla Firefox, ReactOS. | |
| V576 | Incorrect format. Consider checking the N actual argument of the 'Foo' function. |
| View examples of errors for these projects: CamStudio, DeSmuME, Doom 3, Energy Checker SDK, Far Manager, Intel AMT SDK, Mozilla Firefox, PeerBlock, ReactOS, ffdshow. | |
| V577 | Label is present inside a switch(). It is possible that these are misprints and 'default:' operator should be used instead. |
| We haven't yet come across such errors in open source projects. | |
| V578 | An odd bitwise operation detected. Consider verifying it. |
| We haven't yet come across such errors in open source projects. | |
| V579 | The 'Foo' function receives the pointer and its size as arguments. It is possibly a mistake. Inspect the N argument. |
| View examples of errors for these projects: ADAPTIVE Communication Environment (ACE), Apache HTTP Server, Blender, CamStudio, Chromium, Dolphin Emulator, Doom 3, Far Manager, MAME, Mozilla Firefox, OpenSSL, PeerBlock, ... | |
| V580 | An odd explicit type casting. Consider verifying it. |
| We haven't yet come across such errors in open source projects. | |
| V581 | The conditional expressions of the 'if' operators situated alongside each other are identical. |
| View examples of errors for these projects: MongoDB. | |
| V582 | Consider reviewing the source code which operates the container. |
| We haven't yet come across such errors in open source projects. | |
| V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value. |
| View examples of errors for these projects: MAME. | |
| V584 | The same value is present on both sides of the operator. The expression is incorrect or it can be simplified. |
| View examples of errors for these projects: Far Manager. | |
| V585 | An attempt to release the memory in which the 'Foo' local variable is stored. |
| We haven't yet come across such errors in open source projects. | |
| V586 | The 'Foo' function is called twice for deallocation of the same resource. |
| View examples of errors for these projects: Blender. | |
| V587 | An odd sequence of assignments of this kind: A = B; B = A;. |
| We haven't yet come across such errors in open source projects. | |
| V588 | The expression of the 'A =+ B' kind is utilized. Consider reviewing it, as it is possible that 'A += B' was meant. |
| View examples of errors for these projects: Libxml2, Trans-Proteomic Pipeline. | |
| V589 | The expression of the 'A =- B' kind is utilized. Consider reviewing it, as it is possible that 'A -= B' was meant. |
| We haven't yet come across such errors in open source projects. | |
| V590 | Consider inspecting this expression. The expression is excessive or contains a misprint. |
| View examples of errors for these projects: FCEUX, Notepad++, ReactOS, Stickies. | |
| V591 | Non-void function should return a value. |
| View examples of errors for these projects: Quake-III-Arena. | |
| V592 | The expression was enclosed by parentheses twice: ((expression)). One pair of parentheses is unnecessary or misprint is present. |
| View examples of errors for these projects: wxWidgets. | |
| V593 | Consider reviewing the expression of the 'A = B == C' kind. The expression is calculated as following: 'A = (B == C)'. |
| View examples of errors for these projects: ReactOS, Vscap. | |
| V594 | The pointer steps out of array's bounds. |
| View examples of errors for these projects: ReactOS. | |
| V595 | The pointer was utilized before it was verified against nullptr. |
| View examples of errors for these projects: ADAPTIVE Communication Environment (ACE), Blender, Clang, Doom 3, EchoVNC, IPP Samples, LAME, MAME, MongoDB, Mozilla Firefox, Newton Game Dynamics, OpenCV, ... | |
| V596 | The object was created but it is not being used. The 'throw' keyword could be missing. |
| We haven't yet come across such errors in open source projects. | |
| V597 | The compiler could delete the 'memset' function call, which is used to flush 'Foo' buffer. The RtlSecureZeroMemory() function should be used to erase the private data. |
| View examples of errors for these projects: CamStudio, Crypto++, Dolphin Emulator, Samba, Tor, Trans-Proteomic Pipeline, UCSniff, eMule. | |
| V598 | The 'memset/memcpy' function is used to nullify/copy the fields of 'Foo' class. Virtual method table will be damaged by this. |
| View examples of errors for these projects: IPP Samples. | |
| V599 | The virtual destructor is not present, although the 'Foo' class contains virtual functions. |
| View examples of errors for these projects: WinMerge. | |
| V600 | Consider inspecting the condition. The 'Foo' pointer is always not equal to NULL. |
| View examples of errors for these projects: Notepad++, OpenSSL. | |
| V601 | An odd implicit type casting. |
| View examples of errors for these projects: IPP Samples. | |
| V602 | Consider inspecting this expression. '<' possibly should be replaced with '<<'. |
| We haven't yet come across such errors in open source projects. | |
| V603 | The object was created but it is not being used. If you wish to call constructor, 'this->Foo::Foo(....)' should be used. |
| View examples of errors for these projects: Trans-Proteomic Pipeline, eMule. | |
| V604 | It is odd that the number of iterations in the loop equals to the size of the pointer. |
| We haven't yet come across such errors in open source projects. | |
| V605 | Consider verifying the expression. An unsigned value is compared to the number -NN. |
| We haven't yet come across such errors in open source projects. | |
| V606 | Ownerless token 'Foo'. |
| View examples of errors for these projects: RunAsAdmin Explorer Shim. | |
| V607 | Ownerless expression 'Foo'. |
| View examples of errors for these projects: IPP Samples, Trans-Proteomic Pipeline. | |
| V608 | Recurring sequence of explicit type casts. |
| We haven't yet come across such errors in open source projects. | |
| V609 | Divide or mod by zero. |
| We haven't yet come across such errors in open source projects. | |
| V610 | Undefined behavior. Check the shift operator. |
| View examples of errors for these projects: Blender, Clang, DeSmuME, FAAC, Game_Music_Emu library, MAME, OpenCV, ReactOS, Samba, UCSniff, lib7z. | |
| V611 | The memory allocation and deallocation methods are incompatible. |
| View examples of errors for these projects: OpenCV. | |
| V612 | An unconditional 'break/continue/return/goto' within a loop. |
| View examples of errors for these projects: Clang, D programming language, Embedded SSL Library, OpenCV, PCSX2, ReactOS, Trans-Proteomic Pipeline. | |
| V613 | Strange pointer arithmetic with 'malloc/new'. |
| We haven't yet come across such errors in open source projects. | |
| V614 | Uninitialized variable 'Foo' used. |
| View examples of errors for these projects: IPP Samples, MPC-HC, ReactOS, Trans-Proteomic Pipeline. | |
| V615 | An odd explicit conversion from 'float *' type to 'double *' type. |
| We haven't yet come across such errors in open source projects. | |
| V616 | The 'Foo' named constant with the value of 0 is used in the bitwise operation. |
| We haven't yet come across such errors in open source projects. | |
| V617 | Consider inspecting the condition. An argument of the '|' bitwise operation always contains a non-zero value. |
| View examples of errors for these projects: ABackup, OpenSSL, ResizableLib, ffdshow. | |
| V618 | It's dangerous to call the 'Foo' function in such a manner, as the line being passed could contain format specification. The example of the safe code: printf(\"%s\", str); |
| We haven't yet come across such errors in open source projects. | |
| V619 | An array is being utilized as a pointer to single object. |
| We haven't yet come across such errors in open source projects. | |
| V620 | It's unusual that the expression of sizeof(T)*N kind is being summed with the pointer to T type. |
| We haven't yet come across such errors in open source projects. | |
| V621 | Consider inspecting the 'for' operator. It's possible that the loop will be executed incorrectly or won't be executed at all. |
| We haven't yet come across such errors in open source projects. | |
| V622 | Consider inspecting the 'switch' statement. It's possible that the first 'case' operator is missing. |
| We haven't yet come across such errors in open source projects. | |
| V623 | Consider inspecting the '?:' operator. A temporary object is being created and subsequently destroyed. |
| We haven't yet come across such errors in open source projects. | |
| V624 | The constant NN is being utilized. The resulting value could be inaccurate. Consider using the M_NN constant from <math.h>. |
| View examples of errors for these projects: ffdshow. | |
| V625 | Consider inspecting the 'for' operator. Initial and final values of the iterator are the same. |
| We haven't yet come across such errors in open source projects. | |
| V626 | Consider checking for misprints. It's possible that ',' should be replaced by ';'. |
| We haven't yet come across such errors in open source projects. | |
| V627 | Consider inspecting the expression. The argument of sizeof() is the macro which expands to a number. |
| View examples of errors for these projects: Samba. | |
| V628 | It's possible that the line was commented out improperly, thus altering the program's operation logics. |
| We haven't yet come across such errors in open source projects. | |
| V629 | It's possible that the line was commented out improperly, thus altering the program's operation logics. |
| View examples of errors for these projects: Clang, Xpdf. | |
| V630 | The 'malloc' function is used to allocate memory for an array of objects which are classes containing constructors/destructors. |
| We haven't yet come across such errors in open source projects. | |
| V631 | Consider inspecting the 'Foo' function call. Defining an absolute path to the file or directory is considered a poor style. |
| View examples of errors for these projects: ffdshow. | |
| V632 | Consider inspecting the NN argument of the 'Foo' function. It is odd that the argument is of the 'T' type. |
| We haven't yet come across such errors in open source projects. | |
| V633 | Consider inspecting the expression. Probably the '!=' should be used here. |
| We haven't yet come across such errors in open source projects. | |
| V634 | The priority of the '+' operation is higher than that of the '<<' operation. It's possible that parentheses should be used in the expression. |
| We haven't yet come across such errors in open source projects. | |
| V635 | Consider inspecting the expression. The length should probably be multiplied by the sizeof(wchar_t). |
| We haven't yet come across such errors in open source projects. | |
| V636 | The expression was implicitly casted from integer type to real type. Consider utilizing an explicit type cast to avoid overflow or loss of a fractional part. |
| View examples of errors for these projects: CxImage, libevent. | |
| V637 | Two opposite conditions were encountered. The second condition is always false. |
| View examples of errors for these projects: OpenCV. | |
| V638 | A terminal null is present inside a string. The '\\0xNN' characters were encountered. Probably meant: '\\xNN'. |
| We haven't yet come across such errors in open source projects. | |
| V639 | Consider inspecting the expression for function call. It is possible that one of the closing ')' brackets was positioned incorrectly. |
| We haven't yet come across such errors in open source projects. | |
| V640 | The code's operational logic does not correspond with its formatting. |
| View examples of errors for these projects: ReactOS, XUIFramework, Xpdf. | |
| V641 | The size of the allocated memory buffer is not a multiple of the element size. |
| We haven't yet come across such errors in open source projects. | |
| V642 | Saving the function result inside the 'byte' type variable is inappropriate. The significant bits could be lost breaking the program's logic. |
| View examples of errors for these projects: ReactOS, Xpdf. | |
| V643 | Unusual pointer arithmetic. The value of the 'char' type is being added to the string pointer. |
| We haven't yet come across such errors in open source projects. | |
| V644 | A suspicious function declaration. It is possible that the T type object was meant to be created. |
| We haven't yet come across such errors in open source projects. | |
| V645 | The function call could lead to the buffer overflow. The bounds should not contain the size of the buffer, but a number of characters it can hold. |
| View examples of errors for these projects: ReactOS. | |
| V646 | Consider inspecting the application's logic. It's possible that 'else' keyword is missing. |
| We haven't yet come across such errors in open source projects. | |
| V647 | The value of 'A' type is assigned to the pointer of 'B' type. |
| We haven't yet come across such errors in open source projects. | |
| V648 | Priority of the '&&' operation is higher than that of the '||' operation. |
| View examples of errors for these projects: Wolfenstein 3D. | |
| V649 | There are two 'if' statements with identical conditional expressions. The first 'if' statement contains function return. This means that the second 'if' statement is senseless. |
| View examples of errors for these projects: Miranda IM, RunAsAdmin Explorer Shim, Wolfenstein 3D. | |
| V650 | Type casting operation is utilized 2 times in succession. Next, the '+' operation is executed. Probably meant: (T1)((T2)a + b). |
| We haven't yet come across such errors in open source projects. | |
| V651 | An odd operation of the 'sizeof(X)/sizeof(T)' kind is performed, where 'X' is of the 'class' type. |
| We haven't yet come across such errors in open source projects. | |
| V652 | The operation is executed 3 or more times in succession. |
| We haven't yet come across such errors in open source projects. | |
| V653 | A suspicious string consisting of two parts is used for array initialization. It is possible that a comma is missing. |
| We haven't yet come across such errors in open source projects. | |
| V654 | The condition of loop is always true/false. |
| We haven't yet come across such errors in open source projects. | |
| V655 | The strings was concatenated but are not utilized. Consider inspecting the expression. |
| We haven't yet come across such errors in open source projects. | |
| V656 | Variables are initialized through the call to the same function. It's probably an error or un-optimized code. |
| View examples of errors for these projects: Doom 3, ReactOS. | |
| V657 | It's odd that this function always returns one and the same value of NN. |
| We haven't yet come across such errors in open source projects. | |
| V658 | A value is being subtracted from the unsigned variable. This can result in an overflow. In such a case, the comparison operation can potentially behave unexpectedly. |
| We haven't yet come across such errors in open source projects. | |
| V659 | Declarations of functions with 'Foo' 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. |
| We haven't yet come across such errors in open source projects. | |
| V660 | The program contains an unused label and a function call: 'CC:AA()'. It's possible that the following was intended: 'CC::AA()'. |
| We haven't yet come across such errors in open source projects. | |
| V661 | A suspicious expression 'A[B < C]'. Probably meant 'A[B] < C'. |
| We haven't yet come across such errors in open source projects. | |
| V662 | Consider inspecting the loop expression. Different containers are utilized for setting up initial and final values of the iterator. |
| We haven't yet come across such errors in open source projects. | |
| V663 | Infinite loop is possible. The 'cin.eof()' condition is insufficient to break from the loop. Consider adding the 'cin.fail()' function call to the conditional expression. |
| We haven't yet come across such errors in open source projects. | |
| V664 | The pointer is being dereferenced on the initialization list before it is verified against null inside the body of the constructor function. |
| We haven't yet come across such errors in open source projects. | |
| V665 | Possibly, the usage of '#pragma warning(default: X)' is incorrect in this context. The '#pragma warning(push/pop)' should be used instead. |
| We haven't yet come across such errors in open source projects. | |
| V666 | Consider inspecting NN argument of the function 'Foo'. It is possible that the value does not correspond with the length of a string which was passed with the YY argument. |
| We haven't yet come across such errors in open source projects. | |
| V667 | The 'throw' operator does not possess any arguments and is not situated within the 'catch' block. |
| We haven't yet come across such errors in open source projects. | |
| V668 | There is no sense in testing the pointer against null, as the memory was allocated using the 'new' operator. The exception will be generated in the case of memory allocation error. |
| We haven't yet come across such errors in open source projects. |