v2.6.0
Pre-release
Pre-release
Release summary
- New queries added for the following rule packages: Banned, Concurrency2, Preprocessor4
- The following changes have been made for this release:
A3-8-1
,A5-3-2
,EXP54-CPP
,STR51-CPP
- All queries for these rules are now enabled by default. They previously disabled due to performance concerns.
- Address a false positive flagged by
cpp/autosar/using-directives-used
for anonymous namespaces. A10-2-1
-NonVirtualPublicOrProtectedFunctionsRedefinedQuery
:- Fixed a typo that caused the derived class not to be displayed in the alert message
A10-3-3
-VirtualFunctionsIntroducedInFinalClassQuery
- Fixed a typo that caused the introducing class not to be displayed in the alert message
- Address a false positive flagged by
cpp/autosar/external-linkage-not-declared-in-header-file
for declarations that actually were in header files - Update the
create_release.sh
script to include query artifacts with Markdown help files M3-2-1
-DeclarationsOfAnObjectShallHaveCompatibleTypes.ql
- Use the type of the variable declaration entries instead of the variables, as variables may exist that have multiple entries with different types.
CON53-CPP
-DeadlockByLockingInPredefinedOrder.ql
- Optimized performance and expanded coverage to include cases where locking
order is not serialized
- Optimized performance and expanded coverage to include cases where locking
CON52-CPP
-PreventBitFieldAccessFromMultipleThreads.ql
- Fixed an issue with RAII-style locks and scope causing locks to not be
correctly identified.
- Fixed an issue with RAII-style locks and scope causing locks to not be
- Remove support for the anonymized pack because it is no longer necessary. The code scanning pack is superseding this pack.
- Remove support for the LGTM pack because LGTM is EOL.
M5-18-1
: Update the alert message to conform with our query style-guide.CON53-CPP
-DeadlockByLockingInPredefinedOrder.ql
- Optimized performance by removing unneeded conditionals.
CON35-C
-DeadlockByLockingInPredefinedOrder.ql
- Optimized performance by removing unneeded conditionals.
Supported versions
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6
in conjunction with a copy of the CodeQL standard library for C++ (github/codeql
) set to the tagcodeql-cli/v2.7.6
. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- RULE-4-12 -
StdLibDynamicMemoryAllocationUsed.ql
- RULE-7-1 -
OctalConstantsUsed.ql
- RULE-8-14 -
RestrictTypeQualifierUsed.ql
- RULE-12-3 -
CommaOperatorShouldNotBeUsed.ql
- RULE-17-1 -
FeaturesOfStdarghUsed.ql
- RULE-19-2 -
UnionKeywordShouldNotBeUsed.ql
- RULE-20-4 -
MacroDefinedWithTheSameNameAsKeyword.ql
- RULE-20-6 -
FunctionLikeMacroArgsContainHashTokenCQuery.ql
- RULE-21-1 -
DefineAndUndefUsedOnReservedIdentifierOrMacroName.ql
- RULE-21-3 -
MemoryAllocDeallocFunctionsOfStdlibhUsed.ql
- RULE-21-4 -
StandardHeaderFileUsedSetjmph.ql
- RULE-21-5 -
StandardHeaderFileUsedSignalh.ql
- RULE-21-6 -
StandardLibraryInputoutputFunctionsUsed.ql
- RULE-21-7 -
AtofAtoiAtolAndAtollOfStdlibhUsed.ql
- RULE-21-8 -
TerminationFunctionsOfStdlibhUsed.ql
,TerminationMacrosOfStdlibhUsed.ql
- RULE-21-9 -
BsearchAndQsortOfStdlibhUsed.ql
- RULE-21-10 -
StandardLibraryTimeAndDateFunctionsUsed.ql
- RULE-21-11 -
StandardHeaderFileTgmathhUsed.ql
- RULE-21-12 -
ExceptionHandlingFeaturesOfFenvhUsed.ql
- RULE-21-21 -
SystemOfStdlibhUsed.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- CON35-C -
DeadlockByLockingInPredefinedOrder.ql
- CON36-C -
WrapFunctionsThatCanSpuriouslyWakeUpInLoop.ql
- ENV33-C -
DoNotCallSystem.ql