| Array argument size mismatch (cpp/array-arg-size-mismatch) |
Fewer false positive results |
An exception has been added to this query for variable sized arrays. |
| Call to memory access function may overflow buffer (cpp/overflow-buffer) |
More correct results |
This query now recognizes calls to RtlCopyMemoryNonTemporal and RtlSecureZeroMemory. |
| Call to memory access function may overflow buffer (cpp/overflow-buffer) |
More correct results |
Calls to fread are now examined by this query. |
| Lossy function result cast (cpp/lossy-function-result-cast) |
Fewer false positive results |
The whitelist of rounding functions built into this query has been expanded. |
| Memory is never freed (cpp/memory-never-freed) |
More correct results |
Support for more Microsoft-specific memory allocation/de-allocation functions has been added. |
| Memory may not be freed (cpp/memory-may-not-be-freed) |
More correct results |
Support for more Microsoft-specific memory allocation/de-allocation functions has been added. |
| Mismatching new/free or malloc/delete (cpp/new-free-mismatch) |
More correct results |
Data flow through global variables for this query has been improved. |
| 'new[]' array freed with 'delete' (cpp/new-array-delete-mismatch) |
More correct results |
Data flow through global variables for this query has been improved. |
| 'new' object freed with 'delete[]' (cpp/new-delete-array-mismatch) |
More correct results |
Data flow through global variables for this query has been improved. |
| Potential buffer overflow (cpp/potential-buffer-overflow) |
Deprecated |
This query has been deprecated. Use Potentially overrunning write (cpp/overrunning-write) and Potentially overrunning write with float to string conversion (cpp/overrunning-write-with-float) instead. |
| Resource not released in destructor (cpp/resource-not-released-in-destructor) |
Fewer false positive results |
The query no longer highlights code that releases a resource via a virtual method call, function pointer, or lambda. |
| Returning stack-allocated memory (cpp/return-stack-allocated-memory) |
More correct results |
Many more stack allocated expressions are now recognized. |
| Suspicious add with sizeof (cpp/suspicious-add-sizeof) |
Fewer false positive results |
Pointer arithmetic on char * const expressions (and other variations of char *) are now correctly excluded from the results. |
| Suspicious pointer scaling (cpp/suspicious-pointer-scaling) |
Fewer false positive results |
False positive results involving types that are not uniquely named in the snapshot have been fixed. |
| Unused static variable (cpp/unused-static-variable) |
Fewer false positive results |
Variables with the attribute unused are now excluded from the query. |
| Use of inherently dangerous function (cpp/potential-buffer-overflow) |
Cleaned up |
This query no longer catches uses of gets, and has been renamed 'Potential buffer overflow'. |
| Use of potentially dangerous function (cpp/potentially-dangerous-function) |
More correct results |
This query now catches uses of gets. |