├── .clang-format ├── .codeqlmanifest.json ├── .editorconfig ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE │ ├── report-a-problem-with-running-the-queries.md │ └── report-false-positives-or-false-negatives.md ├── actions │ ├── check-permissions │ │ └── action.yml │ ├── install-codeql-packs │ │ └── action.yml │ └── install-codeql │ │ └── action.yml ├── dependabot.yml ├── pull_request_template.md └── workflows │ ├── code-scanning-pack-gen.yml │ ├── codeql_unit_tests.yml │ ├── dispatch-matrix-test-on-comment.yml │ ├── dispatch-release-performance-check.yml │ ├── extra-rule-validation.yml │ ├── finalize-release.yml │ ├── generate-html-docs.yml │ ├── prepare-release.yml │ ├── standard_library_upgrade_tests.yml │ ├── tooling-unit-tests.yml │ ├── update-check-run.yml │ ├── update-release-status.yml │ ├── update-release.yml │ ├── upgrade_codeql_dependencies.yml │ ├── validate-package-files.yml │ ├── validate-query-formatting.yml │ ├── validate-query-help.yml │ ├── validate-query-test-case-formatting.yml │ ├── validate-release.yml │ └── verify-standard-library-dependencies.yml ├── .gitignore ├── .vscode ├── launch.json └── tasks.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── SECURITY.md ├── amendments.csv ├── apply-configuration └── action.yml ├── c ├── cert │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codeql-suites │ │ │ ├── cert-c-default.qls │ │ │ ├── cert-c-l1.qls │ │ │ ├── cert-c-l2.qls │ │ │ ├── cert-c-l3.qls │ │ │ ├── cert-c-recommendation.qls │ │ │ └── cert-default.qls │ │ ├── codingstandards │ │ │ └── c │ │ │ │ ├── cert.qll │ │ │ │ └── cert │ │ │ │ └── Customizations.qll │ │ ├── qlpack.yml │ │ └── rules │ │ │ ├── ARR30-C │ │ │ ├── DoNotFormOutOfBoundsPointersOrArraySubscripts.md │ │ │ └── DoNotFormOutOfBoundsPointersOrArraySubscripts.ql │ │ │ ├── ARR32-C │ │ │ ├── VariableLengthArraySizeNotInValidRange.md │ │ │ └── VariableLengthArraySizeNotInValidRange.ql │ │ │ ├── ARR36-C │ │ │ ├── DoNotRelatePointersThatDoNotReferToTheSameArray.md │ │ │ ├── DoNotRelatePointersThatDoNotReferToTheSameArray.ql │ │ │ ├── DoNotSubtractPointersThatDoNotReferToTheSameArray.md │ │ │ └── DoNotSubtractPointersThatDoNotReferToTheSameArray.ql │ │ │ ├── ARR37-C │ │ │ ├── DoNotUsePointerArithmeticOnNonArrayObjectPointers.md │ │ │ └── DoNotUsePointerArithmeticOnNonArrayObjectPointers.ql │ │ │ ├── ARR38-C │ │ │ ├── LibraryFunctionArgumentOutOfBounds.md │ │ │ └── LibraryFunctionArgumentOutOfBounds.ql │ │ │ ├── ARR39-C │ │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.md │ │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.qhelp │ │ │ └── DoNotAddOrSubtractAScaledIntegerToAPointer.ql │ │ │ ├── CON30-C │ │ │ ├── CleanUpThreadSpecificStorage.md │ │ │ └── CleanUpThreadSpecificStorage.ql │ │ │ ├── CON31-C │ │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.md │ │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.ql │ │ │ ├── DoNotDestroyAMutexWhileItIsLocked.md │ │ │ └── DoNotDestroyAMutexWhileItIsLocked.ql │ │ │ ├── CON32-C │ │ │ ├── PreventDataRacesWithMultipleThreads.md │ │ │ └── PreventDataRacesWithMultipleThreads.ql │ │ │ ├── CON33-C │ │ │ ├── RaceConditionsWhenUsingLibraryFunctions.md │ │ │ └── RaceConditionsWhenUsingLibraryFunctions.ql │ │ │ ├── CON34-C │ │ │ ├── AppropriateThreadObjectStorageDurations.md │ │ │ ├── AppropriateThreadObjectStorageDurations.ql │ │ │ ├── ThreadObjectStorageDurationsNotInitialized.md │ │ │ └── ThreadObjectStorageDurationsNotInitialized.ql │ │ │ ├── CON35-C │ │ │ ├── DeadlockByLockingInPredefinedOrder.md │ │ │ └── DeadlockByLockingInPredefinedOrder.ql │ │ │ ├── CON36-C │ │ │ ├── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.md │ │ │ └── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.ql │ │ │ ├── CON37-C │ │ │ ├── DoNotCallSignalInMultithreadedProgram.md │ │ │ └── DoNotCallSignalInMultithreadedProgram.ql │ │ │ ├── CON38-C │ │ │ ├── PreserveSafetyWhenUsingConditionVariables.md │ │ │ └── PreserveSafetyWhenUsingConditionVariables.ql │ │ │ ├── CON39-C │ │ │ ├── ThreadWasPreviouslyJoinedOrDetached.md │ │ │ └── ThreadWasPreviouslyJoinedOrDetached.ql │ │ │ ├── CON40-C │ │ │ ├── AtomicVariableTwiceInExpression.md │ │ │ └── AtomicVariableTwiceInExpression.ql │ │ │ ├── CON41-C │ │ │ ├── WrapFunctionsThatCanFailSpuriouslyInLoop.md │ │ │ └── WrapFunctionsThatCanFailSpuriouslyInLoop.ql │ │ │ ├── DCL30-C │ │ │ ├── AppropriateStorageDurationsFunctionReturn.md │ │ │ ├── AppropriateStorageDurationsFunctionReturn.ql │ │ │ ├── AppropriateStorageDurationsStackAdressEscape.md │ │ │ └── AppropriateStorageDurationsStackAdressEscape.ql │ │ │ ├── DCL31-C │ │ │ ├── DeclareIdentifiersBeforeUsingThem.md │ │ │ └── DeclareIdentifiersBeforeUsingThem.ql │ │ │ ├── DCL37-C │ │ │ ├── DoNotDeclareOrDefineAReservedIdentifier.md │ │ │ └── DoNotDeclareOrDefineAReservedIdentifier.ql │ │ │ ├── DCL38-C │ │ │ ├── DeclaringAFlexibleArrayMember.md │ │ │ └── DeclaringAFlexibleArrayMember.ql │ │ │ ├── DCL39-C │ │ │ ├── InformationLeakageAcrossTrustBoundariesC.md │ │ │ └── InformationLeakageAcrossTrustBoundariesC.ql │ │ │ ├── DCL40-C │ │ │ ├── ExcessLengthNamesIdentifiersNotDistinct.md │ │ │ ├── ExcessLengthNamesIdentifiersNotDistinct.ql │ │ │ ├── ExternalIdentifiers.qll │ │ │ ├── IncompatibleFunctionDeclarations.md │ │ │ ├── IncompatibleFunctionDeclarations.ql │ │ │ ├── IncompatibleObjectDeclarations.md │ │ │ └── IncompatibleObjectDeclarations.ql │ │ │ ├── DCL41-C │ │ │ ├── VariablesInsideSwitchStatement.md │ │ │ └── VariablesInsideSwitchStatement.ql │ │ │ ├── ENV30-C │ │ │ ├── DoNotModifyTheReturnValueOfCertainFunctions.md │ │ │ └── DoNotModifyTheReturnValueOfCertainFunctions.ql │ │ │ ├── ENV31-C │ │ │ ├── EnvPointerIsInvalidAfterCertainOperations.md │ │ │ └── EnvPointerIsInvalidAfterCertainOperations.ql │ │ │ ├── ENV32-C │ │ │ ├── ExitHandlersMustReturnNormally.md │ │ │ └── ExitHandlersMustReturnNormally.ql │ │ │ ├── ENV33-C │ │ │ ├── DoNotCallSystem.md │ │ │ └── DoNotCallSystem.ql │ │ │ ├── ENV34-C │ │ │ ├── DoNotStorePointersReturnedByEnvFunctions.md │ │ │ ├── DoNotStorePointersReturnedByEnvFunctions.ql │ │ │ ├── DoNotStorePointersReturnedByEnvironmentFunWarn.md │ │ │ └── DoNotStorePointersReturnedByEnvironmentFunWarn.ql │ │ │ ├── ERR30-C │ │ │ ├── ErrnoNotSetToZero.md │ │ │ ├── ErrnoNotSetToZero.ql │ │ │ ├── ErrnoReadBeforeReturn.md │ │ │ ├── ErrnoReadBeforeReturn.ql │ │ │ ├── FunctionCallBeforeErrnoCheck.md │ │ │ ├── FunctionCallBeforeErrnoCheck.ql │ │ │ ├── SetlocaleMightSetErrno.md │ │ │ └── SetlocaleMightSetErrno.ql │ │ │ ├── ERR32-C │ │ │ ├── DoNotRelyOnIndeterminateValuesOfErrno.md │ │ │ └── DoNotRelyOnIndeterminateValuesOfErrno.ql │ │ │ ├── ERR33-C │ │ │ ├── DetectAndHandleStandardLibraryErrors.md │ │ │ └── DetectAndHandleStandardLibraryErrors.ql │ │ │ ├── EXP30-C │ │ │ ├── DependenceOnOrderOfFunctionArgumentsForSideEffects.md │ │ │ ├── DependenceOnOrderOfFunctionArgumentsForSideEffects.ql │ │ │ ├── DependenceOnOrderOfScalarEvaluationForSideEffects.md │ │ │ └── DependenceOnOrderOfScalarEvaluationForSideEffects.ql │ │ │ ├── EXP32-C │ │ │ ├── DoNotAccessVolatileObjectWithNonVolatileReference.md │ │ │ └── DoNotAccessVolatileObjectWithNonVolatileReference.ql │ │ │ ├── EXP33-C │ │ │ ├── DoNotReadUninitializedMemory.md │ │ │ └── DoNotReadUninitializedMemory.ql │ │ │ ├── EXP34-C │ │ │ ├── DoNotDereferenceNullPointers.md │ │ │ └── DoNotDereferenceNullPointers.ql │ │ │ ├── EXP35-C │ │ │ ├── DoNotModifyObjectsWithTemporaryLifetime.md │ │ │ └── DoNotModifyObjectsWithTemporaryLifetime.ql │ │ │ ├── EXP36-C │ │ │ ├── DoNotCastPointerToMoreStrictlyAlignedPointerType.md │ │ │ └── DoNotCastPointerToMoreStrictlyAlignedPointerType.ql │ │ │ ├── EXP37-C │ │ │ ├── CallPOSIXOpenWithCorrectArgumentCount.md │ │ │ ├── CallPOSIXOpenWithCorrectArgumentCount.ql │ │ │ ├── DoNotCallFunctionPointerWithIncompatibleType.md │ │ │ ├── DoNotCallFunctionPointerWithIncompatibleType.ql │ │ │ ├── DoNotCallFunctionsWithIncompatibleArguments.md │ │ │ └── DoNotCallFunctionsWithIncompatibleArguments.ql │ │ │ ├── EXP39-C │ │ │ ├── DoNotAccessVariableViaPointerOfIncompatibleType.md │ │ │ └── DoNotAccessVariableViaPointerOfIncompatibleType.ql │ │ │ ├── EXP40-C │ │ │ ├── DoNotModifyConstantObjects.md │ │ │ └── DoNotModifyConstantObjects.ql │ │ │ ├── EXP42-C │ │ │ ├── DoNotComparePaddingData.md │ │ │ └── DoNotComparePaddingData.ql │ │ │ ├── EXP43-C │ │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParam.md │ │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParam.ql │ │ │ ├── RestrictPointerReferencesOverlappingObject.md │ │ │ └── RestrictPointerReferencesOverlappingObject.ql │ │ │ ├── EXP44-C │ │ │ ├── UnevaluatedOperandWithSideEffect.md │ │ │ └── UnevaluatedOperandWithSideEffect.ql │ │ │ ├── EXP45-C │ │ │ ├── AssignmentsInSelectionStatements.md │ │ │ └── AssignmentsInSelectionStatements.ql │ │ │ ├── EXP46-C │ │ │ ├── DoNotUseABitwiseOperatorWithABooleanLikeOperand.md │ │ │ └── DoNotUseABitwiseOperatorWithABooleanLikeOperand.ql │ │ │ ├── FIO30-C │ │ │ ├── ExcludeUserInputFromFormatStrings.md │ │ │ └── ExcludeUserInputFromFormatStrings.ql │ │ │ ├── FIO32-C │ │ │ ├── DoNotPerformFileOperationsOnDevices.md │ │ │ └── DoNotPerformFileOperationsOnDevices.ql │ │ │ ├── FIO34-C │ │ │ ├── DistinguishBetweenCharReadFromAFileAndEofOrWeof.md │ │ │ ├── DistinguishBetweenCharReadFromAFileAndEofOrWeof.ql │ │ │ ├── EndOfFileCheckPortability.md │ │ │ └── EndOfFileCheckPortability.ql │ │ │ ├── FIO37-C │ │ │ ├── SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.md │ │ │ └── SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.ql │ │ │ ├── FIO38-C │ │ │ ├── DoNotCopyAFileObject.md │ │ │ └── DoNotCopyAFileObject.ql │ │ │ ├── FIO39-C │ │ │ ├── DoNotAlternatelyIOFromAStreamWithoutPositioning.md │ │ │ └── DoNotAlternatelyIOFromAStreamWithoutPositioning.ql │ │ │ ├── FIO40-C │ │ │ ├── ResetStringsOnFgetsOrFgetwsFailure.md │ │ │ └── ResetStringsOnFgetsOrFgetwsFailure.ql │ │ │ ├── FIO41-C │ │ │ ├── DoNotCallGetcAndPutcWithSideEffects.md │ │ │ └── DoNotCallGetcAndPutcWithSideEffects.ql │ │ │ ├── FIO42-C │ │ │ ├── CloseFilesWhenTheyAreNoLongerNeeded.md │ │ │ └── CloseFilesWhenTheyAreNoLongerNeeded.ql │ │ │ ├── FIO44-C │ │ │ ├── OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.md │ │ │ └── OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.ql │ │ │ ├── FIO45-C │ │ │ ├── ToctouRaceConditionsWhileAccessingFiles.md │ │ │ └── ToctouRaceConditionsWhileAccessingFiles.ql │ │ │ ├── FIO46-C │ │ │ ├── UndefinedBehaviorAccessingAClosedFile.md │ │ │ └── UndefinedBehaviorAccessingAClosedFile.ql │ │ │ ├── FIO47-C │ │ │ ├── UseValidSpecifiers.md │ │ │ ├── UseValidSpecifiers.ql │ │ │ ├── WrongNumberOfFormatArguments.md │ │ │ ├── WrongNumberOfFormatArguments.ql │ │ │ ├── WrongTypeFormatArguments.md │ │ │ └── WrongTypeFormatArguments.ql │ │ │ ├── FLP30-C │ │ │ ├── FloatingPointLoopCounters.md │ │ │ └── FloatingPointLoopCounters.ql │ │ │ ├── FLP32-C │ │ │ ├── UncheckedRangeDomainPoleErrors.md │ │ │ └── UncheckedRangeDomainPoleErrors.ql │ │ │ ├── FLP34-C │ │ │ ├── UncheckedFloatingPointConversion.md │ │ │ └── UncheckedFloatingPointConversion.ql │ │ │ ├── FLP36-C │ │ │ ├── IntToFloatPreservePrecision.md │ │ │ └── IntToFloatPreservePrecision.ql │ │ │ ├── FLP37-C │ │ │ ├── MemcmpUsedToCompareFloats.md │ │ │ └── MemcmpUsedToCompareFloats.ql │ │ │ ├── INT30-C │ │ │ ├── UnsignedIntegerOperationsWrapAround.md │ │ │ └── UnsignedIntegerOperationsWrapAround.ql │ │ │ ├── INT31-C │ │ │ ├── IntegerConversionCausesDataLoss.md │ │ │ └── IntegerConversionCausesDataLoss.ql │ │ │ ├── INT32-C │ │ │ ├── SignedIntegerOverflow.md │ │ │ └── SignedIntegerOverflow.ql │ │ │ ├── INT33-C │ │ │ ├── DivOrRemByZero.md │ │ │ └── DivOrRemByZero.ql │ │ │ ├── INT34-C │ │ │ ├── ExprShiftedbyNegativeOrGreaterPrecisionOperand.md │ │ │ ├── ExprShiftedbyNegativeOrGreaterPrecisionOperand.ql │ │ │ ├── LogicalShiftRight.JPG │ │ │ ├── ShiftLeft.JPG │ │ │ └── ShiftRight.JPG │ │ │ ├── INT35-C │ │ │ ├── UseCorrectIntegerPrecisions.md │ │ │ └── UseCorrectIntegerPrecisions.ql │ │ │ ├── INT36-C │ │ │ ├── ConvertingAPointerToIntegerOrIntegerToPointer.md │ │ │ └── ConvertingAPointerToIntegerOrIntegerToPointer.ql │ │ │ ├── MEM30-C │ │ │ ├── DoNotAccessFreedMemory.md │ │ │ └── DoNotAccessFreedMemory.ql │ │ │ ├── MEM31-C │ │ │ ├── FreeMemoryWhenNoLongerNeededCert.md │ │ │ └── FreeMemoryWhenNoLongerNeededCert.ql │ │ │ ├── MEM33-C │ │ │ ├── AllocStructsWithAFlexibleArrayMemberDynamically.md │ │ │ ├── AllocStructsWithAFlexibleArrayMemberDynamically.ql │ │ │ ├── CopyStructsWithAFlexibleArrayMemberDynamically.md │ │ │ └── CopyStructsWithAFlexibleArrayMemberDynamically.ql │ │ │ ├── MEM34-C │ │ │ ├── OnlyFreeMemoryAllocatedDynamicallyCert.md │ │ │ └── OnlyFreeMemoryAllocatedDynamicallyCert.ql │ │ │ ├── MEM35-C │ │ │ ├── InsufficientMemoryAllocatedForObject.md │ │ │ └── InsufficientMemoryAllocatedForObject.ql │ │ │ ├── MEM36-C │ │ │ ├── DoNotModifyAlignmentOfMemoryWithRealloc.md │ │ │ └── DoNotModifyAlignmentOfMemoryWithRealloc.ql │ │ │ ├── MSC30-C │ │ │ ├── RandUsedForGeneratingPseudorandomNumbers.md │ │ │ └── RandUsedForGeneratingPseudorandomNumbers.ql │ │ │ ├── MSC32-C │ │ │ ├── ProperlySeedPseudorandomNumberGenerators.md │ │ │ └── ProperlySeedPseudorandomNumberGenerators.ql │ │ │ ├── MSC33-C │ │ │ ├── DoNotPassInvalidDataToTheAsctimeFunction.md │ │ │ └── DoNotPassInvalidDataToTheAsctimeFunction.ql │ │ │ ├── MSC37-C │ │ │ ├── ControlFlowReachesTheEndOfANonVoidFunction.md │ │ │ └── ControlFlowReachesTheEndOfANonVoidFunction.ql │ │ │ ├── MSC38-C │ │ │ ├── DoNotTreatAPredefinedIdentifierAsObject.md │ │ │ └── DoNotTreatAPredefinedIdentifierAsObject.ql │ │ │ ├── MSC39-C │ │ │ ├── DoNotCallVaArgOnAVaListThatHasAnIndeterminateValue.md │ │ │ └── DoNotCallVaArgOnAVaListThatHasAnIndeterminateValue.ql │ │ │ ├── MSC40-C │ │ │ ├── DoNotViolateInLineLinkageConstraints.md │ │ │ └── DoNotViolateInLineLinkageConstraints.ql │ │ │ ├── PRE31-C │ │ │ ├── SideEffectsInArgumentsToUnsafeMacros.md │ │ │ └── SideEffectsInArgumentsToUnsafeMacros.ql │ │ │ ├── PRE32-C │ │ │ ├── MacroOrFunctionArgsContainHashToken.md │ │ │ └── MacroOrFunctionArgsContainHashToken.ql │ │ │ ├── SIG30-C │ │ │ ├── CallOnlyAsyncSafeFunctionsWithinSignalHandlers.md │ │ │ └── CallOnlyAsyncSafeFunctionsWithinSignalHandlers.ql │ │ │ ├── SIG31-C │ │ │ ├── DoNotAccessSharedObjectsInSignalHandlers.md │ │ │ └── DoNotAccessSharedObjectsInSignalHandlers.ql │ │ │ ├── SIG34-C │ │ │ ├── DoNotCallSignalFromInterruptibleSignalHandlers.md │ │ │ └── DoNotCallSignalFromInterruptibleSignalHandlers.ql │ │ │ ├── SIG35-C │ │ │ ├── DoNotReturnFromAComputationalExceptionHandler.md │ │ │ └── DoNotReturnFromAComputationalExceptionHandler.ql │ │ │ ├── STR30-C │ │ │ ├── DoNotAttemptToModifyStringLiterals.md │ │ │ └── DoNotAttemptToModifyStringLiterals.ql │ │ │ ├── STR31-C │ │ │ ├── StringsHasSufficientSpaceForTheNullTerminator.md │ │ │ └── StringsHasSufficientSpaceForTheNullTerminator.ql │ │ │ ├── STR32-C │ │ │ ├── NonNullTerminatedToFunctionThatExpectsAString.md │ │ │ └── NonNullTerminatedToFunctionThatExpectsAString.ql │ │ │ ├── STR34-C │ │ │ ├── CastCharBeforeConvertingToLargerSizes.md │ │ │ └── CastCharBeforeConvertingToLargerSizes.ql │ │ │ ├── STR37-C │ │ │ ├── ToCharacterHandlingFunctionsRepresentableAsUChar.md │ │ │ └── ToCharacterHandlingFunctionsRepresentableAsUChar.ql │ │ │ └── STR38-C │ │ │ ├── DoNotConfuseNarrowAndWideFunctions.md │ │ │ └── DoNotConfuseNarrowAndWideFunctions.ql │ └── test │ │ ├── codeql-pack.lock.yml │ │ ├── qlpack.yml │ │ └── rules │ │ ├── ARR30-C │ │ ├── DoNotFormOutOfBoundsPointersOrArraySubscripts.expected │ │ ├── DoNotFormOutOfBoundsPointersOrArraySubscripts.qlref │ │ └── test.c │ │ ├── ARR32-C │ │ ├── VariableLengthArraySizeNotInValidRange.expected │ │ ├── VariableLengthArraySizeNotInValidRange.qlref │ │ └── test.c │ │ ├── ARR36-C │ │ ├── DoNotRelatePointersThatDoNotReferToTheSameArray.testref │ │ └── DoNotSubtractPointersThatDoNotReferToTheSameArray.testref │ │ ├── ARR37-C │ │ ├── DoNotUsePointerArithmeticOnNonArrayObjectPointers.expected │ │ ├── DoNotUsePointerArithmeticOnNonArrayObjectPointers.qlref │ │ └── test.c │ │ ├── ARR38-C │ │ ├── LibraryFunctionArgumentOutOfBounds.expected │ │ ├── LibraryFunctionArgumentOutOfBounds.qlref │ │ └── test.c │ │ ├── ARR39-C │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.expected │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.expected.clang │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.expected.gcc │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.expected.qcc │ │ ├── DoNotAddOrSubtractAScaledIntegerToAPointer.qlref │ │ └── test.c │ │ ├── CON30-C │ │ ├── CleanUpThreadSpecificStorage.expected │ │ ├── CleanUpThreadSpecificStorage.qlref │ │ └── test.c │ │ ├── CON31-C │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.testref │ │ └── DoNotDestroyAMutexWhileItIsLocked.testref │ │ ├── CON32-C │ │ └── PreventDataRacesWithMultipleThreads.testref │ │ ├── CON33-C │ │ ├── RaceConditionsWhenUsingLibraryFunctions.expected │ │ ├── RaceConditionsWhenUsingLibraryFunctions.qlref │ │ └── test.c │ │ ├── CON34-C │ │ ├── AppropriateThreadObjectStorageDurations.expected │ │ ├── AppropriateThreadObjectStorageDurations.qlref │ │ ├── ThreadObjectStorageDurationsNotInitialized.expected │ │ ├── ThreadObjectStorageDurationsNotInitialized.qlref │ │ └── test.c │ │ ├── CON35-C │ │ └── DeadlockByLockingInPredefinedOrder.testref │ │ ├── CON36-C │ │ └── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.testref │ │ ├── CON37-C │ │ ├── DoNotCallSignalInMultithreadedProgram.expected │ │ ├── DoNotCallSignalInMultithreadedProgram.qlref │ │ └── test.c │ │ ├── CON38-C │ │ └── PreserveSafetyWhenUsingConditionVariables.testref │ │ ├── CON39-C │ │ └── ThreadWasPreviouslyJoinedOrDetached.testref │ │ ├── CON40-C │ │ ├── AtomicVariableTwiceInExpression.expected │ │ ├── AtomicVariableTwiceInExpression.expected.clang │ │ ├── AtomicVariableTwiceInExpression.expected.gcc │ │ ├── AtomicVariableTwiceInExpression.expected.qcc │ │ ├── AtomicVariableTwiceInExpression.qlref │ │ └── test.c │ │ ├── CON41-C │ │ ├── WrapFunctionsThatCanFailSpuriouslyInLoop.expected │ │ ├── WrapFunctionsThatCanFailSpuriouslyInLoop.expected.clang │ │ ├── WrapFunctionsThatCanFailSpuriouslyInLoop.expected.gcc │ │ ├── WrapFunctionsThatCanFailSpuriouslyInLoop.expected.qcc │ │ ├── WrapFunctionsThatCanFailSpuriouslyInLoop.qlref │ │ └── test.c │ │ ├── DCL30-C │ │ ├── AppropriateStorageDurationsFunctionReturn.expected │ │ ├── AppropriateStorageDurationsFunctionReturn.qlref │ │ ├── AppropriateStorageDurationsStackAdressEscape.testref │ │ └── test.c │ │ ├── DCL31-C │ │ └── DeclareIdentifiersBeforeUsingThem.testref │ │ ├── DCL37-C │ │ └── DoNotDeclareOrDefineAReservedIdentifier.testref │ │ ├── DCL38-C │ │ ├── DeclaringAFlexibleArrayMember.expected │ │ ├── DeclaringAFlexibleArrayMember.qlref │ │ └── test.c │ │ ├── DCL39-C │ │ └── InformationLeakageAcrossTrustBoundariesC.testref │ │ ├── DCL40-C │ │ ├── ExcessLengthNamesIdentifiersNotDistinct.testref │ │ ├── IncompatibleFunctionDeclarations.expected │ │ ├── IncompatibleFunctionDeclarations.qlref │ │ ├── IncompatibleObjectDeclarations.expected │ │ ├── IncompatibleObjectDeclarations.qlref │ │ ├── test.c │ │ └── test1.c │ │ ├── DCL41-C │ │ ├── VariablesInsideSwitchStatement.expected │ │ ├── VariablesInsideSwitchStatement.qlref │ │ └── test.c │ │ ├── ENV30-C │ │ └── DoNotModifyTheReturnValueOfCertainFunctions.testref │ │ ├── ENV31-C │ │ ├── EnvPointerIsInvalidAfterCertainOperations.expected │ │ ├── EnvPointerIsInvalidAfterCertainOperations.qlref │ │ └── test.c │ │ ├── ENV32-C │ │ ├── ExitHandlersMustReturnNormally.expected │ │ ├── ExitHandlersMustReturnNormally.expected.qcc │ │ ├── ExitHandlersMustReturnNormally.qlref │ │ └── test.c │ │ ├── ENV33-C │ │ ├── DoNotCallSystem.expected │ │ ├── DoNotCallSystem.qlref │ │ ├── DoNotCallSystem.testref │ │ └── test.c │ │ ├── ENV34-C │ │ ├── DoNotStorePointersReturnedByEnvFunctions.testref │ │ └── DoNotStorePointersReturnedByEnvironmentFunWarn.testref │ │ ├── ERR30-C │ │ ├── ErrnoNotSetToZero.expected │ │ ├── ErrnoNotSetToZero.qlref │ │ ├── ErrnoReadBeforeReturn.expected │ │ ├── ErrnoReadBeforeReturn.expected.qcc │ │ ├── ErrnoReadBeforeReturn.qlref │ │ ├── FunctionCallBeforeErrnoCheck.expected │ │ ├── FunctionCallBeforeErrnoCheck.qlref │ │ ├── SetlocaleMightSetErrno.expected │ │ ├── SetlocaleMightSetErrno.qlref │ │ └── test.c │ │ ├── ERR32-C │ │ ├── DoNotRelyOnIndeterminateValuesOfErrno.expected │ │ ├── DoNotRelyOnIndeterminateValuesOfErrno.qlref │ │ └── test.c │ │ ├── ERR33-C │ │ ├── DetectAndHandleStandardLibraryErrors.expected │ │ ├── DetectAndHandleStandardLibraryErrors.qlref │ │ └── test.c │ │ ├── EXP30-C │ │ ├── DependenceOnOrderOfFunctionArgumentsForSideEffects.expected │ │ ├── DependenceOnOrderOfFunctionArgumentsForSideEffects.qlref │ │ ├── DependenceOnOrderOfScalarEvaluationForSideEffects.expected │ │ ├── DependenceOnOrderOfScalarEvaluationForSideEffects.qlref │ │ └── test.c │ │ ├── EXP32-C │ │ ├── DoNotAccessVolatileObjectWithNonVolatileReference.expected │ │ ├── DoNotAccessVolatileObjectWithNonVolatileReference.qlref │ │ └── test.c │ │ ├── EXP33-C │ │ └── DoNotReadUninitializedMemory.testref │ │ ├── EXP34-C │ │ └── DoNotDereferenceNullPointers.testref │ │ ├── EXP35-C │ │ ├── DoNotModifyObjectsWithTemporaryLifetime.expected │ │ ├── DoNotModifyObjectsWithTemporaryLifetime.qlref │ │ └── test.c │ │ ├── EXP36-C │ │ ├── DoNotCastPointerToMoreStrictlyAlignedPointerType.expected │ │ ├── DoNotCastPointerToMoreStrictlyAlignedPointerType.qlref │ │ └── test.c │ │ ├── EXP37-C │ │ ├── CallPOSIXOpenWithCorrectArgumentCount.expected │ │ ├── CallPOSIXOpenWithCorrectArgumentCount.qlref │ │ ├── DoNotCallFunctionPointerWithIncompatibleType.expected │ │ ├── DoNotCallFunctionPointerWithIncompatibleType.qlref │ │ ├── DoNotCallFunctionsWithIncompatibleArguments.expected │ │ ├── DoNotCallFunctionsWithIncompatibleArguments.expected.clang │ │ ├── DoNotCallFunctionsWithIncompatibleArguments.expected.gcc │ │ ├── DoNotCallFunctionsWithIncompatibleArguments.qlref │ │ ├── test.c │ │ └── test2.c │ │ ├── EXP39-C │ │ ├── DoNotAccessVariableViaPointerOfIncompatibleType.expected │ │ ├── DoNotAccessVariableViaPointerOfIncompatibleType.expected.qcc │ │ ├── DoNotAccessVariableViaPointerOfIncompatibleType.qlref │ │ └── test.c │ │ ├── EXP40-C │ │ ├── DoNotModifyConstantObjects.expected │ │ ├── DoNotModifyConstantObjects.qlref │ │ └── test.c │ │ ├── EXP42-C │ │ └── DoNotComparePaddingData.testref │ │ ├── EXP43-C │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParam.testref │ │ ├── RestrictPointerReferencesOverlappingObject.expected │ │ ├── RestrictPointerReferencesOverlappingObject.qlref │ │ └── test.c │ │ ├── EXP44-C │ │ ├── UnevaluatedOperandWithSideEffect.expected │ │ ├── UnevaluatedOperandWithSideEffect.qlref │ │ └── test.c │ │ ├── EXP45-C │ │ ├── AssignmentsInSelectionStatements.expected │ │ ├── AssignmentsInSelectionStatements.qlref │ │ └── test.c │ │ ├── EXP46-C │ │ ├── DoNotUseABitwiseOperatorWithABooleanLikeOperand.expected │ │ ├── DoNotUseABitwiseOperatorWithABooleanLikeOperand.qlref │ │ └── test.c │ │ ├── FIO30-C │ │ └── ExcludeUserInputFromFormatStrings.testref │ │ ├── FIO32-C │ │ ├── DoNotPerformFileOperationsOnDevices.expected │ │ ├── DoNotPerformFileOperationsOnDevices.expected.clang │ │ ├── DoNotPerformFileOperationsOnDevices.expected.gcc │ │ ├── DoNotPerformFileOperationsOnDevices.expected.qcc │ │ ├── DoNotPerformFileOperationsOnDevices.qlref │ │ └── test.c │ │ ├── FIO34-C │ │ ├── DistinguishBetweenCharReadFromAFileAndEofOrWeof.expected │ │ ├── DistinguishBetweenCharReadFromAFileAndEofOrWeof.qlref │ │ ├── EndOfFileCheckPortability.expected │ │ ├── EndOfFileCheckPortability.qlref │ │ └── test.c │ │ ├── FIO37-C │ │ ├── SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.expected │ │ ├── SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.qlref │ │ └── test.c │ │ ├── FIO38-C │ │ ├── DoNotCopyAFileObject.expected │ │ ├── DoNotCopyAFileObject.expected.clang │ │ ├── DoNotCopyAFileObject.expected.gcc │ │ ├── DoNotCopyAFileObject.qlref │ │ ├── test.c │ │ ├── test.c.clang │ │ └── test.c.gcc │ │ ├── FIO39-C │ │ └── DoNotAlternatelyIOFromAStreamWithoutPositioning.testref │ │ ├── FIO40-C │ │ ├── ResetStringsOnFgetsOrFgetwsFailure.expected │ │ ├── ResetStringsOnFgetsOrFgetwsFailure.qlref │ │ └── test.c │ │ ├── FIO41-C │ │ ├── DoNotCallGetcAndPutcWithSideEffects.expected │ │ ├── DoNotCallGetcAndPutcWithSideEffects.qlref │ │ └── test.c │ │ ├── FIO42-C │ │ └── CloseFilesWhenTheyAreNoLongerNeeded.testref │ │ ├── FIO44-C │ │ ├── OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.expected │ │ ├── OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.qlref │ │ └── test.c │ │ ├── FIO45-C │ │ ├── ToctouRaceConditionsWhileAccessingFiles.expected │ │ ├── ToctouRaceConditionsWhileAccessingFiles.qlref │ │ └── test.c │ │ ├── FIO46-C │ │ └── UndefinedBehaviorAccessingAClosedFile.testref │ │ ├── FIO47-C │ │ ├── UseValidSpecifiers.expected │ │ ├── UseValidSpecifiers.qlref │ │ ├── WrongNumberOfFormatArguments.expected │ │ ├── WrongNumberOfFormatArguments.qlref │ │ ├── WrongTypeFormatArguments.expected │ │ ├── WrongTypeFormatArguments.expected.clang │ │ ├── WrongTypeFormatArguments.expected.gcc │ │ ├── WrongTypeFormatArguments.expected.qcc │ │ ├── WrongTypeFormatArguments.qlref │ │ └── test.c │ │ ├── FLP30-C │ │ ├── FloatingPointLoopCounters.expected │ │ ├── FloatingPointLoopCounters.qlref │ │ └── test.c │ │ ├── FLP32-C │ │ └── UncheckedRangeDomainPoleErrors.testref │ │ ├── FLP34-C │ │ ├── UncheckedFloatingPointConversion.expected │ │ ├── UncheckedFloatingPointConversion.qlref │ │ └── test.c │ │ ├── FLP36-C │ │ ├── IntToFloatPreservePrecision.expected │ │ ├── IntToFloatPreservePrecision.qlref │ │ └── test.c │ │ ├── FLP37-C │ │ ├── MemcmpUsedToCompareFloats.expected │ │ ├── MemcmpUsedToCompareFloats.qlref │ │ └── test.c │ │ ├── INT30-C │ │ └── UnsignedIntegerOperationsWrapAround.testref │ │ ├── INT31-C │ │ ├── IntegerConversionCausesDataLoss.expected │ │ ├── IntegerConversionCausesDataLoss.qlref │ │ └── test.c │ │ ├── INT32-C │ │ ├── SignedIntegerOverflow.expected │ │ ├── SignedIntegerOverflow.qlref │ │ └── test.c │ │ ├── INT33-C │ │ ├── DivOrRemByZero.expected │ │ ├── DivOrRemByZero.qlref │ │ └── test.c │ │ ├── INT34-C │ │ ├── ExprShiftedbyNegativeOrGreaterPrecisionOperand.expected │ │ ├── ExprShiftedbyNegativeOrGreaterPrecisionOperand.qlref │ │ └── test.c │ │ ├── INT35-C │ │ ├── UseCorrectIntegerPrecisions.expected │ │ ├── UseCorrectIntegerPrecisions.qlref │ │ └── test.c │ │ ├── INT36-C │ │ ├── ConvertingAPointerToIntegerOrIntegerToPointer.expected │ │ ├── ConvertingAPointerToIntegerOrIntegerToPointer.qlref │ │ └── test.c │ │ ├── MEM30-C │ │ ├── DoNotAccessFreedMemory.expected │ │ ├── DoNotAccessFreedMemory.qlref │ │ └── test.c │ │ ├── MEM31-C │ │ └── FreeMemoryWhenNoLongerNeededCert.testref │ │ ├── MEM33-C │ │ ├── AllocStructsWithAFlexibleArrayMemberDynamically.expected │ │ ├── AllocStructsWithAFlexibleArrayMemberDynamically.qlref │ │ ├── CopyStructsWithAFlexibleArrayMemberDynamically.expected │ │ ├── CopyStructsWithAFlexibleArrayMemberDynamically.qlref │ │ └── test.c │ │ ├── MEM34-C │ │ └── OnlyFreeMemoryAllocatedDynamicallyCert.testref │ │ ├── MEM35-C │ │ ├── InsufficientMemoryAllocatedForObject.expected │ │ ├── InsufficientMemoryAllocatedForObject.qlref │ │ └── test.c │ │ ├── MEM36-C │ │ ├── DoNotModifyAlignmentOfMemoryWithRealloc.expected │ │ ├── DoNotModifyAlignmentOfMemoryWithRealloc.qlref │ │ └── test.c │ │ ├── MSC30-C │ │ └── RandUsedForGeneratingPseudorandomNumbers.testref │ │ ├── MSC32-C │ │ ├── ProperlySeedPseudorandomNumberGenerators.expected │ │ ├── ProperlySeedPseudorandomNumberGenerators.qlref │ │ └── test.c │ │ ├── MSC33-C │ │ ├── DoNotPassInvalidDataToTheAsctimeFunction.expected │ │ ├── DoNotPassInvalidDataToTheAsctimeFunction.qlref │ │ └── test.c │ │ ├── MSC37-C │ │ └── ControlFlowReachesTheEndOfANonVoidFunction.testref │ │ ├── MSC38-C │ │ ├── DoNotTreatAPredefinedIdentifierAsObject.expected │ │ ├── DoNotTreatAPredefinedIdentifierAsObject.qlref │ │ ├── assert.h │ │ └── test.c │ │ ├── MSC39-C │ │ ├── DoNotCallVaArgOnAVaListThatHasAnIndeterminateValue.expected │ │ ├── DoNotCallVaArgOnAVaListThatHasAnIndeterminateValue.qlref │ │ └── test.c │ │ ├── MSC40-C │ │ ├── DoNotViolateInLineLinkageConstraints.expected │ │ ├── DoNotViolateInLineLinkageConstraints.qlref │ │ └── test.c │ │ ├── PRE31-C │ │ ├── SideEffectsInArgumentsToUnsafeMacros.expected │ │ ├── SideEffectsInArgumentsToUnsafeMacros.qlref │ │ └── test.c │ │ ├── PRE32-C │ │ ├── MacroOrFunctionArgsContainHashToken.expected │ │ ├── MacroOrFunctionArgsContainHashToken.qlref │ │ └── test.c │ │ ├── SIG30-C │ │ ├── CallOnlyAsyncSafeFunctionsWithinSignalHandlers.expected │ │ ├── CallOnlyAsyncSafeFunctionsWithinSignalHandlers.expected.qcc │ │ ├── CallOnlyAsyncSafeFunctionsWithinSignalHandlers.qlref │ │ └── test.c │ │ ├── SIG31-C │ │ ├── DoNotAccessSharedObjectsInSignalHandlers.expected │ │ ├── DoNotAccessSharedObjectsInSignalHandlers.qlref │ │ └── test.c │ │ ├── SIG34-C │ │ ├── DoNotCallSignalFromInterruptibleSignalHandlers.expected │ │ ├── DoNotCallSignalFromInterruptibleSignalHandlers.qlref │ │ └── test.c │ │ ├── SIG35-C │ │ ├── DoNotReturnFromAComputationalExceptionHandler.expected │ │ ├── DoNotReturnFromAComputationalExceptionHandler.qlref │ │ └── test.c │ │ ├── STR30-C │ │ ├── DoNotAttemptToModifyStringLiterals.expected │ │ ├── DoNotAttemptToModifyStringLiterals.qlref │ │ └── test.c │ │ ├── STR31-C │ │ ├── StringsHasSufficientSpaceForTheNullTerminator.expected │ │ ├── StringsHasSufficientSpaceForTheNullTerminator.qlref │ │ └── test.c │ │ ├── STR32-C │ │ ├── NonNullTerminatedToFunctionThatExpectsAString.expected │ │ ├── NonNullTerminatedToFunctionThatExpectsAString.expected.qcc │ │ ├── NonNullTerminatedToFunctionThatExpectsAString.qlref │ │ ├── test.c │ │ └── test.c.qcc │ │ ├── STR34-C │ │ └── CastCharBeforeConvertingToLargerSizes.testref │ │ ├── STR37-C │ │ ├── ToCharacterHandlingFunctionsRepresentableAsUChar.expected │ │ ├── ToCharacterHandlingFunctionsRepresentableAsUChar.expected.clang │ │ ├── ToCharacterHandlingFunctionsRepresentableAsUChar.expected.gcc │ │ ├── ToCharacterHandlingFunctionsRepresentableAsUChar.expected.qcc │ │ ├── ToCharacterHandlingFunctionsRepresentableAsUChar.qlref │ │ └── test.c │ │ └── STR38-C │ │ ├── DoNotConfuseNarrowAndWideFunctions.expected │ │ ├── DoNotConfuseNarrowAndWideFunctions.expected.qcc │ │ ├── DoNotConfuseNarrowAndWideFunctions.qlref │ │ ├── test.c │ │ └── test.c.qcc ├── common │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codingstandards │ │ │ └── c │ │ │ │ ├── Errno.qll │ │ │ │ ├── Expr.qll │ │ │ │ ├── Extensions.qll │ │ │ │ ├── Generic.qll │ │ │ │ ├── IdentifierLinkage.qll │ │ │ │ ├── Objects.qll │ │ │ │ ├── Ordering.qll │ │ │ │ ├── OutOfBounds.qll │ │ │ │ ├── SideEffects.qll │ │ │ │ ├── Signal.qll │ │ │ │ ├── StorageDuration.qll │ │ │ │ ├── SubObjects.qll │ │ │ │ ├── TgMath.qll │ │ │ │ ├── UndefinedBehavior.qll │ │ │ │ ├── Variable.qll │ │ │ │ ├── initialization │ │ │ │ └── GlobalInitializationAnalysis.qll │ │ │ │ └── orderofevaluation │ │ │ │ └── VariableAccessOrdering.qll │ │ └── qlpack.yml │ └── test │ │ ├── codeql-pack.lock.yml │ │ ├── includes │ │ └── standard-library │ │ │ ├── LICENSE │ │ │ ├── aio.h │ │ │ ├── alloca.h │ │ │ ├── ar.h │ │ │ ├── arpa │ │ │ ├── ftp.h │ │ │ ├── inet.h │ │ │ ├── nameser.h │ │ │ ├── nameser_compat.h │ │ │ ├── telnet.h │ │ │ └── tftp.h │ │ │ ├── assert.h │ │ │ ├── bits │ │ │ ├── alltypes.h │ │ │ ├── dirent.h │ │ │ ├── errno.h │ │ │ ├── fcntl.h │ │ │ ├── fenv.h │ │ │ ├── float.h │ │ │ ├── hwcap.h │ │ │ ├── io.h │ │ │ ├── ioctl.h │ │ │ ├── ioctl_fix.h │ │ │ ├── ipc.h │ │ │ ├── ipcstat.h │ │ │ ├── kd.h │ │ │ ├── limits.h │ │ │ ├── link.h │ │ │ ├── mman.h │ │ │ ├── msg.h │ │ │ ├── poll.h │ │ │ ├── posix.h │ │ │ ├── ptrace.h │ │ │ ├── reg.h │ │ │ ├── resource.h │ │ │ ├── sem.h │ │ │ ├── setjmp.h │ │ │ ├── shm.h │ │ │ ├── signal.h │ │ │ ├── socket.h │ │ │ ├── soundcard.h │ │ │ ├── stat.h │ │ │ ├── statfs.h │ │ │ ├── stdint.h │ │ │ ├── syscall.h │ │ │ ├── termios.h │ │ │ ├── user.h │ │ │ └── vt.h │ │ │ ├── byteswap.h │ │ │ ├── complex.h │ │ │ ├── cpio.h │ │ │ ├── crypt.h │ │ │ ├── ctype.h │ │ │ ├── dirent.h │ │ │ ├── dlfcn.h │ │ │ ├── elf.h │ │ │ ├── endian.h │ │ │ ├── err.h │ │ │ ├── errno.h │ │ │ ├── fcntl.h │ │ │ ├── features.h │ │ │ ├── fenv.h │ │ │ ├── float.h │ │ │ ├── fmtmsg.h │ │ │ ├── fnmatch.h │ │ │ ├── ftw.h │ │ │ ├── getopt.h │ │ │ ├── glob.h │ │ │ ├── grp.h │ │ │ ├── iconv.h │ │ │ ├── ifaddrs.h │ │ │ ├── inttypes.h │ │ │ ├── iso646.h │ │ │ ├── langinfo.h │ │ │ ├── lastlog.h │ │ │ ├── libgen.h │ │ │ ├── libintl.h │ │ │ ├── limits.h │ │ │ ├── link.h │ │ │ ├── locale.h │ │ │ ├── malloc.h │ │ │ ├── math.h │ │ │ ├── memory.h │ │ │ ├── mntent.h │ │ │ ├── monetary.h │ │ │ ├── mqueue.h │ │ │ ├── net │ │ │ ├── ethernet.h │ │ │ ├── if.h │ │ │ ├── if_arp.h │ │ │ └── route.h │ │ │ ├── netdb.h │ │ │ ├── netinet │ │ │ ├── ether.h │ │ │ ├── icmp6.h │ │ │ ├── if_ether.h │ │ │ ├── igmp.h │ │ │ ├── in.h │ │ │ ├── in_systm.h │ │ │ ├── ip.h │ │ │ ├── ip6.h │ │ │ ├── ip_icmp.h │ │ │ ├── tcp.h │ │ │ └── udp.h │ │ │ ├── netpacket │ │ │ └── packet.h │ │ │ ├── nl_types.h │ │ │ ├── paths.h │ │ │ ├── poll.h │ │ │ ├── pthread.h │ │ │ ├── pty.h │ │ │ ├── pwd.h │ │ │ ├── regex.h │ │ │ ├── resolv.h │ │ │ ├── sched.h │ │ │ ├── scsi │ │ │ ├── scsi.h │ │ │ ├── scsi_ioctl.h │ │ │ └── sg.h │ │ │ ├── search.h │ │ │ ├── semaphore.h │ │ │ ├── setjmp.h │ │ │ ├── shadow.h │ │ │ ├── signal.h │ │ │ ├── spawn.h │ │ │ ├── stdalign.h │ │ │ ├── stdarg.h │ │ │ ├── stdatomic.h │ │ │ ├── stdbool.h │ │ │ ├── stdc-predef.h │ │ │ ├── stddef.h │ │ │ ├── stdint.h │ │ │ ├── stdio.h │ │ │ ├── stdio_ext.h │ │ │ ├── stdlib.h │ │ │ ├── stdnoreturn.h │ │ │ ├── string.h │ │ │ ├── strings.h │ │ │ ├── stropts.h │ │ │ ├── sys │ │ │ ├── acct.h │ │ │ ├── auxv.h │ │ │ ├── cachectl.h │ │ │ ├── dir.h │ │ │ ├── epoll.h │ │ │ ├── errno.h │ │ │ ├── eventfd.h │ │ │ ├── fanotify.h │ │ │ ├── fcntl.h │ │ │ ├── file.h │ │ │ ├── fsuid.h │ │ │ ├── inotify.h │ │ │ ├── io.h │ │ │ ├── ioctl.h │ │ │ ├── ipc.h │ │ │ ├── kd.h │ │ │ ├── klog.h │ │ │ ├── membarrier.h │ │ │ ├── mman.h │ │ │ ├── mount.h │ │ │ ├── msg.h │ │ │ ├── mtio.h │ │ │ ├── param.h │ │ │ ├── personality.h │ │ │ ├── poll.h │ │ │ ├── prctl.h │ │ │ ├── procfs.h │ │ │ ├── ptrace.h │ │ │ ├── quota.h │ │ │ ├── random.h │ │ │ ├── reboot.h │ │ │ ├── reg.h │ │ │ ├── resource.h │ │ │ ├── select.h │ │ │ ├── sem.h │ │ │ ├── sendfile.h │ │ │ ├── shm.h │ │ │ ├── signal.h │ │ │ ├── signalfd.h │ │ │ ├── socket.h │ │ │ ├── soundcard.h │ │ │ ├── stat.h │ │ │ ├── statfs.h │ │ │ ├── statvfs.h │ │ │ ├── stropts.h │ │ │ ├── swap.h │ │ │ ├── syscall.h │ │ │ ├── sysinfo.h │ │ │ ├── syslog.h │ │ │ ├── sysmacros.h │ │ │ ├── termios.h │ │ │ ├── time.h │ │ │ ├── timeb.h │ │ │ ├── timerfd.h │ │ │ ├── times.h │ │ │ ├── timex.h │ │ │ ├── ttydefaults.h │ │ │ ├── types.h │ │ │ ├── ucontext.h │ │ │ ├── uio.h │ │ │ ├── un.h │ │ │ ├── user.h │ │ │ ├── utsname.h │ │ │ ├── vfs.h │ │ │ ├── vt.h │ │ │ ├── wait.h │ │ │ └── xattr.h │ │ │ ├── syscall.h │ │ │ ├── sysexits.h │ │ │ ├── syslog.h │ │ │ ├── tar.h │ │ │ ├── termios.h │ │ │ ├── tgmath.h │ │ │ ├── threads.h │ │ │ ├── time.h │ │ │ ├── uchar.h │ │ │ ├── ucontext.h │ │ │ ├── ulimit.h │ │ │ ├── unistd.h │ │ │ ├── utime.h │ │ │ ├── utmp.h │ │ │ ├── utmpx.h │ │ │ ├── values.h │ │ │ ├── wait.h │ │ │ ├── wchar.h │ │ │ ├── wctype.h │ │ │ └── wordexp.h │ │ ├── library │ │ ├── expr │ │ │ ├── FullExpr.expected │ │ │ ├── FullExpr.ql │ │ │ └── fullexpr.c │ │ ├── fgetserrormanagement │ │ │ ├── FgetsGuard.expected │ │ │ ├── FgetsGuard.ql │ │ │ └── test.c │ │ ├── identifierlinkage │ │ │ ├── IdentifierLinkage.expected │ │ │ ├── IdentifierLinkage.ql │ │ │ └── identifierlinkage.c │ │ └── objects │ │ │ ├── ObjectIdentity.expected │ │ │ ├── ObjectIdentity.ql │ │ │ └── objectidentity.c │ │ ├── qlpack.yml │ │ └── rules │ │ ├── amixedusemacroargumentsubjecttoexpansion │ │ ├── AMixedUseMacroArgumentSubjectToExpansion.expected │ │ ├── AMixedUseMacroArgumentSubjectToExpansion.ql │ │ └── test.c │ │ ├── atofatoiatolandatollused │ │ ├── AtofAtoiAtolAndAtollUsed.expected │ │ ├── AtofAtoiAtolAndAtollUsed.ql │ │ └── test.c │ │ ├── bitfieldshallhaveanappropriatetype │ │ ├── BitFieldShallHaveAnAppropriateType.expected │ │ ├── BitFieldShallHaveAnAppropriateType.ql │ │ └── test.c │ │ ├── castcharbeforeconvertingtolargersizes │ │ ├── CastCharBeforeConvertingToLargerSizes.expected │ │ ├── CastCharBeforeConvertingToLargerSizes.expected.clang │ │ ├── CastCharBeforeConvertingToLargerSizes.expected.gcc │ │ ├── CastCharBeforeConvertingToLargerSizes.expected.qcc │ │ ├── CastCharBeforeConvertingToLargerSizes.ql │ │ └── test.c │ │ ├── closefilehandlewhennolongerneededshared │ │ ├── CloseFileHandleWhenNoLongerNeededShared.expected │ │ ├── CloseFileHandleWhenNoLongerNeededShared.ql │ │ └── test.c │ │ ├── commaoperatorused │ │ ├── CommaOperatorUsed.expected │ │ ├── CommaOperatorUsed.ql │ │ └── test.c │ │ ├── constantunsignedintegerexpressionswraparound │ │ ├── ConstantUnsignedIntegerExpressionsWrapAround.expected │ │ ├── ConstantUnsignedIntegerExpressionsWrapAround.ql │ │ └── test.c │ │ ├── constlikereturnvalue │ │ ├── ConstLikeReturnValue.expected │ │ ├── ConstLikeReturnValue.ql │ │ └── test.c │ │ ├── deadcode │ │ ├── DeadCode.expected │ │ ├── DeadCode.ql │ │ └── test.c │ │ ├── declaredareservedidentifier │ │ ├── DeclaredAReservedIdentifier.expected │ │ ├── DeclaredAReservedIdentifier.ql │ │ └── test.c │ │ ├── dereferenceofnullpointer │ │ ├── DereferenceOfNullPointer.expected │ │ ├── DereferenceOfNullPointer.ql │ │ └── test.c │ │ ├── differentidentifiersnottypographicallyunambiguous │ │ ├── DifferentIdentifiersNotTypographicallyUnambiguous.expected │ │ ├── DifferentIdentifiersNotTypographicallyUnambiguous.ql │ │ └── test.c │ │ ├── donotaccessaclosedfile │ │ ├── DoNotAccessAClosedFile.expected │ │ ├── DoNotAccessAClosedFile.expected.qcc │ │ ├── DoNotAccessAClosedFile.ql │ │ └── test.c │ │ ├── donotallowamutextogooutofscopewhilelocked │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.expected │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.ql │ │ └── test.c │ │ ├── donotcopyaddressofautostorageobjecttootherobject │ │ ├── DoNotCopyAddressOfAutoStorageObjectToOtherObject.expected │ │ ├── DoNotCopyAddressOfAutoStorageObjectToOtherObject.ql │ │ └── test.c │ │ ├── donotdestroyamutexwhileitislocked │ │ ├── DoNotDestroyAMutexWhileItIsLocked.expected │ │ ├── DoNotDestroyAMutexWhileItIsLocked.ql │ │ └── test.c │ │ ├── donotpassaliasedpointertorestrictqualifiedparamshared │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParamShared.expected │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParamShared.ql │ │ └── test.c │ │ ├── donotsubtractpointersaddressingdifferentarrays │ │ ├── DoNotSubtractPointersAddressingDifferentArrays.expected │ │ ├── DoNotSubtractPointersAddressingDifferentArrays.ql │ │ └── test.c │ │ ├── donotusemorethantwolevelsofpointerindirection │ │ ├── DoNotUseMoreThanTwoLevelsOfPointerIndirection.expected │ │ ├── DoNotUseMoreThanTwoLevelsOfPointerIndirection.ql │ │ └── test.c │ │ ├── donotusepointerarithmetictoaddressdifferentarrays │ │ ├── DoNotUsePointerArithmeticToAddressDifferentArrays.expected │ │ ├── DoNotUsePointerArithmeticToAddressDifferentArrays.ql │ │ └── test.c │ │ ├── donotuserandforgeneratingpseudorandomnumbers │ │ ├── DoNotUseRandForGeneratingPseudorandomNumbers.expected │ │ ├── DoNotUseRandForGeneratingPseudorandomNumbers.ql │ │ └── test.c │ │ ├── donotuserelationaloperatorswithdifferingarrays │ │ ├── DoNotUseRelationalOperatorsWithDifferingArrays.expected │ │ ├── DoNotUseRelationalOperatorsWithDifferingArrays.ql │ │ └── test.c │ │ ├── freememorywhennolongerneededshared │ │ ├── FreeMemoryWhenNoLongerNeededShared.expected │ │ ├── FreeMemoryWhenNoLongerNeededShared.ql │ │ └── test.c │ │ ├── functionerroneousreturnvaluenottested │ │ ├── FunctionErroneousReturnValueNotTested.expected │ │ ├── FunctionErroneousReturnValueNotTested.ql │ │ └── test.c │ │ ├── functionlikemacrosdefined │ │ ├── FunctionLikeMacrosDefined.expected │ │ ├── FunctionLikeMacrosDefined.ql │ │ └── test.c │ │ ├── functionnoreturnattributecondition │ │ ├── FunctionNoReturnAttributeCondition.expected │ │ ├── FunctionNoReturnAttributeCondition.ql │ │ └── test.c │ │ ├── functiontypesnotinprototypeformshared │ │ ├── FunctionTypesNotInPrototypeFormShared.expected │ │ ├── FunctionTypesNotInPrototypeFormShared.expected.clang │ │ ├── FunctionTypesNotInPrototypeFormShared.ql │ │ ├── test.c │ │ └── test.c.clang │ │ ├── gotoreferencealabelinsurroundingblock │ │ ├── GotoReferenceALabelInSurroundingBlock.expected │ │ ├── GotoReferenceALabelInSurroundingBlock.ql │ │ └── test.c │ │ ├── gotostatementcondition │ │ ├── GotoStatementCondition.expected │ │ ├── GotoStatementCondition.ql │ │ └── test.c │ │ ├── gotostatementshouldnotbeused │ │ ├── GotoStatementShouldNotBeUsed.expected │ │ ├── GotoStatementShouldNotBeUsed.ql │ │ └── test.c │ │ ├── guardaccesstobitfields │ │ ├── GuardAccessToBitFields.expected │ │ ├── GuardAccessToBitFields.ql │ │ └── test.c │ │ ├── hashoperatorsused │ │ ├── HashOperatorsUsed.expected │ │ ├── HashOperatorsUsed.ql │ │ └── test.c │ │ ├── identifierhidden │ │ ├── IdentifierHidden.expected │ │ ├── IdentifierHidden.ql │ │ └── test.c │ │ ├── identifierwithexternallinkageonedefinitionshared │ │ ├── IdentifierWithExternalLinkageOneDefinitionShared.expected │ │ ├── IdentifierWithExternalLinkageOneDefinitionShared.ql │ │ ├── test.c │ │ └── test1.c │ │ ├── ifelseterminationconstruct │ │ ├── IfElseTerminationConstruct.expected │ │ ├── IfElseTerminationConstruct.ql │ │ └── test.c │ │ ├── includeguardsnotused │ │ ├── IncludeGuardsNotUsed.expected │ │ ├── IncludeGuardsNotUsed.ql │ │ ├── headers │ │ │ ├── test1.h │ │ │ ├── test2.h │ │ │ ├── test3.h │ │ │ ├── test4.h │ │ │ ├── test5.h │ │ │ ├── test6.h │ │ │ └── test7.h │ │ └── test.c │ │ ├── informationleakageacrossboundaries │ │ ├── InformationLeakageAcrossBoundaries.expected │ │ ├── InformationLeakageAcrossBoundaries.ql │ │ ├── arrays.c │ │ ├── interprocedural.c │ │ ├── multilayer.c │ │ └── test.c │ │ ├── invalidatedenvstringpointers │ │ ├── InvalidatedEnvStringPointers.expected │ │ ├── InvalidatedEnvStringPointers.ql │ │ └── test.c │ │ ├── invalidatedenvstringpointerswarn │ │ ├── InvalidatedEnvStringPointersWarn.expected │ │ ├── InvalidatedEnvStringPointersWarn.ql │ │ └── test.c │ │ ├── iofstreammissingpositioning │ │ ├── IOFstreamMissingPositioning.expected │ │ ├── IOFstreamMissingPositioning.ql │ │ └── test.c │ │ ├── joinordetachthreadonlyonce │ │ ├── JoinOrDetachThreadOnlyOnce.expected │ │ ├── JoinOrDetachThreadOnlyOnce.ql │ │ └── test.c │ │ ├── lowercaselstartsinliteralsuffix │ │ ├── LowercaseLStartsInLiteralSuffix.expected │ │ ├── LowercaseLStartsInLiteralSuffix.ql │ │ └── test.c │ │ ├── macroparameterfollowinghash │ │ ├── MacroParameterFollowingHash.expected │ │ ├── MacroParameterFollowingHash.ql │ │ └── test.c │ │ ├── macroparameternotenclosedinparentheses │ │ ├── MacroParameterNotEnclosedInParentheses.expected │ │ ├── MacroParameterNotEnclosedInParentheses.ql │ │ └── test.c │ │ ├── memcmpusedtocomparepaddingdata │ │ ├── MemcmpUsedToComparePaddingData.expected │ │ ├── MemcmpUsedToComparePaddingData.ql │ │ └── test.c │ │ ├── missingstaticspecifierfunctionredeclarationshared │ │ ├── MissingStaticSpecifierFunctionRedeclarationShared.expected │ │ ├── MissingStaticSpecifierFunctionRedeclarationShared.ql │ │ └── test.c │ │ ├── missingstaticspecifierobjectredeclarationshared │ │ ├── MissingStaticSpecifierObjectRedeclarationShared.expected │ │ ├── MissingStaticSpecifierObjectRedeclarationShared.ql │ │ └── test.c │ │ ├── misuseofinfinitefloatingpointvalue │ │ ├── MisuseOfInfiniteFloatingPointValue.expected │ │ ├── MisuseOfInfiniteFloatingPointValue.ql │ │ └── test.c │ │ ├── misuseofnanfloatingpointvalue │ │ ├── MisuseOfNaNFloatingPointValue.expected │ │ ├── MisuseOfNaNFloatingPointValue.ql │ │ └── test.c │ │ ├── namedbitfieldswithsignedintegertype │ │ ├── NamedBitFieldsWithSignedIntegerType.expected │ │ ├── NamedBitFieldsWithSignedIntegerType.ql │ │ └── test.c │ │ ├── nestedlabelinswitch │ │ ├── NestedLabelInSwitch.expected │ │ ├── NestedLabelInSwitch.ql │ │ └── test.c │ │ ├── nonconstantformat │ │ ├── NonConstantFormat.expected │ │ ├── NonConstantFormat.ql │ │ └── test.c │ │ ├── nonterminatedescapesequences │ │ ├── NonTerminatedEscapeSequences.expected │ │ ├── NonTerminatedEscapeSequences.ql │ │ └── test.c │ │ ├── nonuniqueenumerationconstant │ │ ├── NonUniqueEnumerationConstant.expected │ │ ├── NonUniqueEnumerationConstant.ql │ │ └── test.c │ │ ├── nonvoidfunctiondoesnotreturn │ │ ├── NonVoidFunctionDoesNotReturn.expected │ │ ├── NonVoidFunctionDoesNotReturn.ql │ │ └── test.c │ │ ├── notdistinctidentifier │ │ ├── NotDistinctIdentifier.expected │ │ ├── NotDistinctIdentifier.ql │ │ └── test.c │ │ ├── onlyfreememoryallocateddynamicallyshared │ │ ├── OnlyFreeMemoryAllocatedDynamicallyShared.expected │ │ ├── OnlyFreeMemoryAllocatedDynamicallyShared.ql │ │ └── test.c │ │ ├── preprocessingdirectivewithinmacroargument │ │ ├── PreprocessingDirectiveWithinMacroArgument.expected │ │ ├── PreprocessingDirectiveWithinMacroArgument.ql │ │ └── test.c │ │ ├── preprocessorincludesforbiddenheadernames │ │ ├── 'badheader.h │ │ ├── PreprocessorIncludesForbiddenHeaderNames.expected │ │ ├── PreprocessorIncludesForbiddenHeaderNames.ql │ │ ├── badheade'r.h │ │ └── test.c │ │ ├── preprocessorincludespreceded │ │ ├── PreprocessorIncludesPreceded.expected │ │ ├── PreprocessorIncludesPreceded.ql │ │ ├── test.c │ │ ├── test.h │ │ └── test1.h │ │ ├── preservesafetywhenusingconditionvariables │ │ ├── PreserveSafetyWhenUsingConditionVariables.expected │ │ ├── PreserveSafetyWhenUsingConditionVariables.ql │ │ └── test.c │ │ ├── preventdeadlockbylockinginpredefinedorder │ │ ├── PreventDeadlockByLockingInPredefinedOrder.expected │ │ ├── PreventDeadlockByLockingInPredefinedOrder.ql │ │ └── test.c │ │ ├── readofuninitializedmemory │ │ ├── ReadOfUninitializedMemory.expected │ │ ├── ReadOfUninitializedMemory.ql │ │ └── test.c │ │ ├── resultofanassignmentoperatorshouldnotbeused │ │ ├── ResultOfAnAssignmentOperatorShouldNotBeUsed.expected │ │ ├── ResultOfAnAssignmentOperatorShouldNotBeUsed.ql │ │ └── test.c │ │ ├── sectionsofcodeshallnotbecommentedout │ │ ├── SectionsOfCodeShallNotBeCommentedOut.expected │ │ ├── SectionsOfCodeShallNotBeCommentedOut.ql │ │ ├── config.h │ │ └── test.c │ │ ├── switchcasepositioncondition │ │ ├── SwitchCasePositionCondition.expected │ │ ├── SwitchCasePositionCondition.ql │ │ └── test.c │ │ ├── switchnotwellformed │ │ ├── SwitchNotWellFormed.expected │ │ ├── SwitchNotWellFormed.ql │ │ └── test.c │ │ ├── typeomitted │ │ ├── TypeOmitted.expected │ │ ├── TypeOmitted.ql │ │ └── test.c │ │ ├── uncheckedrangedomainpoleerrors │ │ ├── UncheckedRangeDomainPoleErrors.expected │ │ ├── UncheckedRangeDomainPoleErrors.ql │ │ └── test.c │ │ ├── undefinedmacroidentifiers │ │ ├── UndefinedMacroIdentifiers.expected │ │ ├── UndefinedMacroIdentifiers.ql │ │ └── test.c │ │ ├── unnecessaryexposedidentifierdeclarationshared │ │ ├── UnnecessaryExposedIdentifierDeclarationShared.expected │ │ ├── UnnecessaryExposedIdentifierDeclarationShared.ql │ │ └── test.c │ │ ├── unreachablecode │ │ ├── UnreachableCode.expected │ │ ├── UnreachableCode.ql │ │ └── test.c │ │ ├── unsignedoperationwithconstantoperandswraps │ │ ├── UnsignedOperationWithConstantOperandsWraps.expected │ │ ├── UnsignedOperationWithConstantOperandsWraps.ql │ │ └── test.c │ │ ├── unusedparameter │ │ ├── UnusedParameter.expected │ │ ├── UnusedParameter.ql │ │ └── test.c │ │ ├── unusedtypedeclarations │ │ ├── UnusedTypeDeclarations.expected │ │ ├── UnusedTypeDeclarations.ql │ │ └── test.c │ │ ├── usageofassemblernotdocumented │ │ ├── UsageOfAssemblerNotDocumented.expected │ │ ├── UsageOfAssemblerNotDocumented.ql │ │ └── test.c │ │ ├── useinitializerbracestomatchaggregatetypestructure │ │ ├── UseInitializerBracesToMatchAggregateTypeStructure.expected │ │ ├── UseInitializerBracesToMatchAggregateTypeStructure.ql │ │ └── test.c │ │ ├── useofnonzerooctalliteral │ │ ├── UseOfNonZeroOctalLiteral.expected │ │ ├── UseOfNonZeroOctalLiteral.ql │ │ └── test.c │ │ ├── useonlyarrayindexingforpointerarithmetic │ │ ├── UseOnlyArrayIndexingForPointerArithmetic.expected │ │ ├── UseOnlyArrayIndexingForPointerArithmetic.ql │ │ └── test.c │ │ └── wrapspuriousfunctioninloop │ │ ├── WrapSpuriousFunctionInLoop.expected │ │ ├── WrapSpuriousFunctionInLoop.ql │ │ └── test.c ├── misra │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codeql-suites │ │ │ ├── misra-c-2012-third-edition-with-amendment-2.qls │ │ │ ├── misra-c-advisory.qls │ │ │ ├── misra-c-audit.qls │ │ │ ├── misra-c-default.qls │ │ │ ├── misra-c-mandatory.qls │ │ │ ├── misra-c-required.qls │ │ │ ├── misra-c-strict.qls │ │ │ └── misra-default.qls │ │ ├── codingstandards │ │ │ └── c │ │ │ │ ├── misra.qll │ │ │ │ └── misra │ │ │ │ ├── Customizations.qll │ │ │ │ ├── EssentialTypes.qll │ │ │ │ └── MisraExpressions.qll │ │ ├── qlpack.yml │ │ └── rules │ │ │ ├── DIR-4-10 │ │ │ └── PrecautionIncludeGuardsNotProvided.ql │ │ │ ├── DIR-4-11 │ │ │ ├── CheckMathLibraryFunctionParameters.ql │ │ │ └── LowPrecisionPeriodicTrigonometricFunctionCall.ql │ │ │ ├── DIR-4-12 │ │ │ └── StdLibDynamicMemoryAllocationUsed.ql │ │ │ ├── DIR-4-15 │ │ │ ├── PossibleMisuseOfUndetectedInfinity.ql │ │ │ └── PossibleMisuseOfUndetectedNaN.ql │ │ │ ├── DIR-4-2 │ │ │ └── UsageOfAssemblyLanguageShouldBeDocumented.ql │ │ │ ├── DIR-4-3 │ │ │ └── LanguageNotEncapsulatedAndIsolated.ql │ │ │ ├── DIR-4-4 │ │ │ └── SectionsOfCodeShallNotBeCommentedOut.ql │ │ │ ├── DIR-4-5 │ │ │ └── IdentifiersInTheSameNameSpaceUnambiguous.ql │ │ │ ├── DIR-4-6 │ │ │ └── PlainNumericalTypeUsedOverExplicitTypedef.ql │ │ │ ├── DIR-4-7 │ │ │ └── FunctionErrorInformationUntested.ql │ │ │ ├── DIR-4-8 │ │ │ └── ObjectWithNoPointerDereferenceShouldBeOpaque.ql │ │ │ ├── DIR-4-9 │ │ │ └── FunctionOverFunctionLikeMacro.ql │ │ │ ├── DIR-5-1 │ │ │ └── PossibleDataRaceBetweenThreads.ql │ │ │ ├── DIR-5-2 │ │ │ └── NotNoDeadlocksBetweenThreads.ql │ │ │ ├── DIR-5-3 │ │ │ ├── BannedDynamicThreadCreation.ql │ │ │ └── ThreadCreatedByThread.ql │ │ │ ├── RULE-1-2 │ │ │ └── LanguageExtensionsShouldNotBeUsed.ql │ │ │ ├── RULE-1-3 │ │ │ └── OccurrenceOfUndefinedBehavior.ql │ │ │ ├── RULE-1-4 │ │ │ └── EmergentLanguageFeaturesUsed.ql │ │ │ ├── RULE-1-5 │ │ │ ├── CallToObsolescentFunctionGets.ql │ │ │ ├── FunctionTypesNotInPrototypeFormObsolete.ql │ │ │ ├── InvalidDefineOrUndefOfStdBoolMacro.ql │ │ │ ├── MissingStaticSpecifierFuncRedeclarationObsolete.ql │ │ │ ├── MissingStaticSpecifierObjectRedeclarationObsolete.ql │ │ │ ├── SizeInReallocCallIsZero.ql │ │ │ ├── SizeInReallocCallMayBeZero.ql │ │ │ ├── UngetcCallOnStreamPositionZero.ql │ │ │ └── UseOfObsoleteMacroAtomicVarInit.ql │ │ │ ├── RULE-10-1 │ │ │ ├── OperandsOfAnInappropriateEssentialType.ql │ │ │ └── PointerTypeOnLogicalOperator.ql │ │ │ ├── RULE-10-2 │ │ │ └── AdditionSubtractionOnEssentiallyCharType.ql │ │ │ ├── RULE-10-3 │ │ │ └── AssignmentOfIncompatibleEssentialType.ql │ │ │ ├── RULE-10-4 │ │ │ └── OperandsWithMismatchedEssentialTypeCategory.ql │ │ │ ├── RULE-10-5 │ │ │ └── InappropriateEssentialTypeCast.ql │ │ │ ├── RULE-10-6 │ │ │ └── AssignmentToWiderEssentialType.ql │ │ │ ├── RULE-10-7 │ │ │ └── ImplicitConversionOfCompositeExpression.ql │ │ │ ├── RULE-10-8 │ │ │ └── InappropriateCastOfCompositeExpression.ql │ │ │ ├── RULE-11-1 │ │ │ └── ConversionBetweenFunctionPointerAndOtherType.ql │ │ │ ├── RULE-11-10 │ │ │ └── AtomicQualifierAppliedToVoid.ql │ │ │ ├── RULE-11-2 │ │ │ └── ConversionBetweenIncompleteTypePointerAndOtherType.ql │ │ │ ├── RULE-11-3 │ │ │ └── CastBetweenObjectPointerAndDifferentObjectType.ql │ │ │ ├── RULE-11-4 │ │ │ └── ConversionBetweenPointerToObjectAndIntegerType.ql │ │ │ ├── RULE-11-5 │ │ │ └── ConversionFromPointerToVoidIntoPointerToObject.ql │ │ │ ├── RULE-11-6 │ │ │ └── CastBetweenPointerToVoidAndArithmeticType.ql │ │ │ ├── RULE-11-7 │ │ │ └── CastBetweenPointerToObjectAndNonIntArithmeticType.ql │ │ │ ├── RULE-11-8 │ │ │ └── CastRemovesConstOrVolatileQualification.ql │ │ │ ├── RULE-11-9 │ │ │ └── MacroNullNotUsedAsIntegerNullPointerConstant.ql │ │ │ ├── RULE-12-1 │ │ │ ├── ImplicitPrecedenceOfOperatorsInExpression.ql │ │ │ └── UnenclosedSizeofOperand.ql │ │ │ ├── RULE-12-2 │ │ │ └── RightHandOperandOfAShiftRange.ql │ │ │ ├── RULE-12-3 │ │ │ └── CommaOperatorShouldNotBeUsed.ql │ │ │ ├── RULE-12-4 │ │ │ └── ConstantUnsignedIntegerExpressionsWrapAround.ql │ │ │ ├── RULE-12-5 │ │ │ └── SizeofOperatorUsedOnArrayTypeParam.ql │ │ │ ├── RULE-12-6 │ │ │ └── AtomicAggregateObjectDirectlyAccessed.ql │ │ │ ├── RULE-13-1 │ │ │ └── InitializerListsContainPersistentSideEffects.ql │ │ │ ├── RULE-13-2 │ │ │ ├── UnsequencedAtomicReads.ql │ │ │ └── UnsequencedSideEffects.ql │ │ │ ├── RULE-13-3 │ │ │ └── SideEffectAndCrementInFullExpression.ql │ │ │ ├── RULE-13-4 │ │ │ └── ResultOfAnAssignmentOperatorShouldNotBeUsed.ql │ │ │ ├── RULE-13-5 │ │ │ └── PossibleSuppressedSideEffectInLogicOperatorOperand.ql │ │ │ ├── RULE-13-6 │ │ │ └── SizeofOperandWithSideEffect.ql │ │ │ ├── RULE-14-1 │ │ │ └── LoopOverEssentiallyFloatType.ql │ │ │ ├── RULE-14-2 │ │ │ └── ForLoopNotWellFormed.ql │ │ │ ├── RULE-14-3 │ │ │ └── ControllingExprInvariant.ql │ │ │ ├── RULE-14-4 │ │ │ ├── NonBooleanIfCondition.ql │ │ │ └── NonBooleanIterationCondition.ql │ │ │ ├── RULE-15-1 │ │ │ └── GotoStatementUsed.ql │ │ │ ├── RULE-15-2 │ │ │ └── GotoLabelLocationCondition.ql │ │ │ ├── RULE-15-3 │ │ │ └── GotoLabelBlockCondition.ql │ │ │ ├── RULE-15-4 │ │ │ └── LoopIterationCondition.ql │ │ │ ├── RULE-15-5 │ │ │ └── FunctionReturnCondition.ql │ │ │ ├── RULE-15-6 │ │ │ ├── LoopCompoundCondition.ql │ │ │ ├── SelectionCompoundCondition.ql │ │ │ └── SwitchCompoundCondition.ql │ │ │ ├── RULE-15-7 │ │ │ └── IfElseEndCondition.ql │ │ │ ├── RULE-16-1 │ │ │ ├── 6-4-3_grammar_1.png │ │ │ ├── 6-4-3_grammar_2.png │ │ │ ├── 6-4-3_grammar_3.png │ │ │ ├── SwitchCaseStartCondition.ql │ │ │ └── SwitchStmtNotWellFormed.ql │ │ │ ├── RULE-16-2 │ │ │ └── NestSwitchLabelInSwitchStatement.ql │ │ │ ├── RULE-16-3 │ │ │ └── BreakShallTerminateSwitchClause.ql │ │ │ ├── RULE-16-4 │ │ │ └── EverySwitchShallHaveDefaultLabel.ql │ │ │ ├── RULE-16-5 │ │ │ └── DefaultNotFirstOrLastOfSwitch.ql │ │ │ ├── RULE-16-6 │ │ │ └── SwitchClauseNumberCondition.ql │ │ │ ├── RULE-16-7 │ │ │ └── SwitchExpressionBoolCondition.ql │ │ │ ├── RULE-17-1 │ │ │ └── FeaturesOfStdarghUsed.ql │ │ │ ├── RULE-17-10 │ │ │ └── NonVoidReturnTypeOfNoreturnFunction.ql │ │ │ ├── RULE-17-11 │ │ │ └── FunctionWithNoReturningBranchShouldBeNoreturn.ql │ │ │ ├── RULE-17-12 │ │ │ └── FunctionAddressesShouldAddressOperator.ql │ │ │ ├── RULE-17-2 │ │ │ └── RecursiveFunctionCondition.ql │ │ │ ├── RULE-17-3 │ │ │ └── FunctionDeclaredImplicitly.ql │ │ │ ├── RULE-17-4 │ │ │ └── NonVoidFunctionReturnCondition.ql │ │ │ ├── RULE-17-5 │ │ │ └── ArrayFunctionArgumentNumberOfElements.ql │ │ │ ├── RULE-17-6 │ │ │ └── UseOfArrayStatic.ql │ │ │ ├── RULE-17-7 │ │ │ └── ValueReturnedByAFunctionNotUsed.ql │ │ │ ├── RULE-17-8 │ │ │ └── ModificationOfFunctionParameter.ql │ │ │ ├── RULE-17-9 │ │ │ └── ReturnStatementInNoreturnFunction.ql │ │ │ ├── RULE-18-1 │ │ │ └── PointerAndDerivedPointerMustAddressSameArray.ql │ │ │ ├── RULE-18-10 │ │ │ └── PointersToVariablyModifiedArrayTypesUsed.ql │ │ │ ├── RULE-18-2 │ │ │ └── SubtractionBetweenPointersMustAddressSameArray.ql │ │ │ ├── RULE-18-3 │ │ │ └── RelationalOperatorComparesPointerToDifferentArray.ql │ │ │ ├── RULE-18-4 │ │ │ └── DoNotUseAdditionOrSubtractionOperatorsOnPointers.ql │ │ │ ├── RULE-18-5 │ │ │ └── NoMoreThanTwoLevelsOfPointerNestingInDeclarations.ql │ │ │ ├── RULE-18-6 │ │ │ ├── AutomaticStorageObjectAddressCopiedToOtherObject.ql │ │ │ └── ThreadLocalObjectAddressCopiedToGlobalObject.ql │ │ │ ├── RULE-18-7 │ │ │ └── FlexibleArrayMembersDeclared.ql │ │ │ ├── RULE-18-8 │ │ │ └── VariableLengthArrayTypesUsed.ql │ │ │ ├── RULE-18-9 │ │ │ ├── ArrayToPointerConversionOfTemporaryObject.ql │ │ │ └── ModifiableLValueSubscriptedWithTemporaryLifetime.ql │ │ │ ├── RULE-19-1 │ │ │ ├── ObjectAssignedToAnOverlappingObject.ql │ │ │ └── ObjectCopiedToAnOverlappingObject.ql │ │ │ ├── RULE-19-2 │ │ │ └── UnionKeywordShouldNotBeUsed.ql │ │ │ ├── RULE-2-1 │ │ │ └── UnreachableCode.ql │ │ │ ├── RULE-2-2 │ │ │ └── DeadCode.ql │ │ │ ├── RULE-2-3 │ │ │ └── UnusedTypeDeclarations.ql │ │ │ ├── RULE-2-4 │ │ │ └── UnusedTagDeclaration.ql │ │ │ ├── RULE-2-5 │ │ │ └── UnusedMacroDeclaration.ql │ │ │ ├── RULE-2-6 │ │ │ └── UnusedLabelDeclaration.ql │ │ │ ├── RULE-2-7 │ │ │ └── UnusedParameter.ql │ │ │ ├── RULE-2-8 │ │ │ ├── UnusedObjectDefinition.ql │ │ │ └── UnusedObjectDefinitionStrict.ql │ │ │ ├── RULE-20-1 │ │ │ └── IncludeDirectivesPrecededByDirectivesOrComments.ql │ │ │ ├── RULE-20-10 │ │ │ └── PreprocessorHashOperatorsShouldNotBeUsed.ql │ │ │ ├── RULE-20-11 │ │ │ └── MoreThanOneHashOperatorInMacroDefinition.ql │ │ │ ├── RULE-20-12 │ │ │ └── MacroParameterUsedAsHashOperand.ql │ │ │ ├── RULE-20-2 │ │ │ └── ForbiddenCharactersInHeaderFileName.ql │ │ │ ├── RULE-20-4 │ │ │ └── MacroDefinedWithTheSameNameAsKeyword.ql │ │ │ ├── RULE-20-5 │ │ │ └── UndefShouldNotBeUsed.ql │ │ │ ├── RULE-20-6 │ │ │ └── FunctionLikeMacroArgsContainHashTokenCQuery.ql │ │ │ ├── RULE-20-7 │ │ │ └── MacroParameterNotEnclosedInParenthesesCQuery.ql │ │ │ ├── RULE-20-8 │ │ │ └── ControllingExpressionIfDirective.ql │ │ │ ├── RULE-20-9 │ │ │ └── IdentifiersUsedInPreprocessorExpression.ql │ │ │ ├── RULE-21-1 │ │ │ └── DefineAndUndefUsedOnReservedIdentifierOrMacroName.ql │ │ │ ├── RULE-21-10 │ │ │ └── StandardLibraryTimeAndDateFunctionsUsed.ql │ │ │ ├── RULE-21-11 │ │ │ └── StandardHeaderFileTgmathhUsed.ql │ │ │ ├── RULE-21-12 │ │ │ └── ExceptionHandlingFeaturesOfFenvhUsed.ql │ │ │ ├── RULE-21-13 │ │ │ └── CtypeFunctionArgNotUnsignedCharOrEof.ql │ │ │ ├── RULE-21-14 │ │ │ └── MemcmpUsedToCompareNullTerminatedStrings.ql │ │ │ ├── RULE-21-15 │ │ │ └── MemcpyMemmoveMemcmpArgNotPointersToCompatibleTypes.ql │ │ │ ├── RULE-21-16 │ │ │ └── MemcmpOnInappropriateEssentialTypeArgs.ql │ │ │ ├── RULE-21-17 │ │ │ └── StringFunctionPointerArgumentOutOfBounds.ql │ │ │ ├── RULE-21-18 │ │ │ └── StringLibrarySizeArgumentOutOfBounds.ql │ │ │ ├── RULE-21-19 │ │ │ └── ValuesReturnedByLocaleSettingUsedAsPtrToConst.ql │ │ │ ├── RULE-21-2 │ │ │ └── DoNotDeclareAReservedIdentifier.ql │ │ │ ├── RULE-21-20 │ │ │ ├── CallToSetlocaleInvalidatesOldPointers.ql │ │ │ └── CallToSetlocaleInvalidatesOldPointersWarn.ql │ │ │ ├── RULE-21-21 │ │ │ └── SystemOfStdlibhUsed.ql │ │ │ ├── RULE-21-22 │ │ │ └── TgMathArgumentWithInvalidEssentialType.ql │ │ │ ├── RULE-21-23 │ │ │ └── TgMathArgumentsWithDifferingStandardType.ql │ │ │ ├── RULE-21-24 │ │ │ └── CallToBannedRandomFunction.ql │ │ │ ├── RULE-21-25 │ │ │ └── InvalidMemoryOrderArgument.ql │ │ │ ├── RULE-21-26 │ │ │ └── TimedlockOnInappropriateMutexType.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-22-1 │ │ │ ├── CloseFileHandleWhenNoLongerNeededMisra.ql │ │ │ └── FreeMemoryWhenNoLongerNeededMisra.ql │ │ │ ├── RULE-22-10 │ │ │ └── OnlyTestErrnoRightAfterErrnoSettingFunction.ql │ │ │ ├── RULE-22-11 │ │ │ └── ThreadPreviouslyJoinedOrDetached.ql │ │ │ ├── RULE-22-12 │ │ │ └── NonstandardUseOfThreadingObject.ql │ │ │ ├── RULE-22-13 │ │ │ └── ThreadingObjectWithInvalidStorageDuration.ql │ │ │ ├── RULE-22-14 │ │ │ ├── MutexInitWithInvalidMutexType.ql │ │ │ ├── MutexInitializedInsideThread.ql │ │ │ └── MutexNotInitializedBeforeUse.ql │ │ │ ├── RULE-22-15 │ │ │ └── ThreadResourceDisposedBeforeThreadsJoined.ql │ │ │ ├── RULE-22-16 │ │ │ └── MutexObjectsNotAlwaysUnlocked.ql │ │ │ ├── RULE-22-17 │ │ │ └── InvalidOperationOnUnlockedMutex.ql │ │ │ ├── RULE-22-18 │ │ │ ├── NonRecursiveMutexRecursivelyLocked.ql │ │ │ └── NonRecursiveMutexRecursivelyLockedAudit.ql │ │ │ ├── RULE-22-19 │ │ │ └── ConditionVariableUsedWithMultipleMutexes.ql │ │ │ ├── RULE-22-2 │ │ │ └── OnlyFreeMemoryAllocatedDynamicallyMisra.ql │ │ │ ├── RULE-22-20 │ │ │ ├── ThreadStorageNotInitializedBeforeUse.ql │ │ │ └── ThreadStoragePointerInitializedInsideThread.ql │ │ │ ├── RULE-22-3 │ │ │ └── FileOpenForReadAndWriteOnDifferentStreams.ql │ │ │ ├── RULE-22-4 │ │ │ └── AttemptToWriteToAReadOnlyStream.ql │ │ │ ├── RULE-22-5 │ │ │ └── PointerToAFileObjectDereferenced.ql │ │ │ ├── RULE-22-6 │ │ │ └── FileUsedAfterClosed.ql │ │ │ ├── RULE-22-7 │ │ │ └── EofShallBeComparedWithUnmodifiedReturnValues.ql │ │ │ ├── RULE-22-8 │ │ │ └── ErrnoSetToZeroPriorToCall.ql │ │ │ ├── RULE-22-9 │ │ │ └── ErrnoSetToZeroAfterCall.ql │ │ │ ├── RULE-23-1 │ │ │ ├── GenericSelectionDoesntDependOnMacroArgument.ql │ │ │ └── GenericSelectionNotExpandedFromAMacro.ql │ │ │ ├── RULE-23-2 │ │ │ └── GenericSelectionNotFromMacroWithSideEffects.ql │ │ │ ├── RULE-23-3 │ │ │ └── GenericWithoutNonDefaultAssociation.ql │ │ │ ├── RULE-23-4 │ │ │ └── GenericAssociationWithUnselectableType.ql │ │ │ ├── RULE-23-5 │ │ │ └── DangerousDefaultSelectionForPointerInGeneric.ql │ │ │ ├── RULE-23-6 │ │ │ └── GenericExpressionWithIncorrectEssentialType.ql │ │ │ ├── RULE-23-7 │ │ │ └── InvalidGenericMacroArgumentEvaluation.ql │ │ │ ├── RULE-23-8 │ │ │ └── DefaultGenericSelectionNotFirstOrLast.ql │ │ │ ├── RULE-3-1 │ │ │ └── CharacterSequencesAndUsedWithinAComment.ql │ │ │ ├── RULE-3-2 │ │ │ └── LineSplicingUsedInComments.ql │ │ │ ├── RULE-4-1 │ │ │ └── OctalAndHexadecimalEscapeSequencesNotTerminated.ql │ │ │ ├── RULE-5-1 │ │ │ └── ExternalIdentifiersNotDistinct.ql │ │ │ ├── RULE-5-2 │ │ │ └── IdentifiersDeclaredInTheSameScopeNotDistinct.ql │ │ │ ├── RULE-5-3 │ │ │ └── IdentifierHidingC.ql │ │ │ ├── RULE-5-4 │ │ │ ├── MacroIdentifierNotDistinctFromParameter.ql │ │ │ └── MacroIdentifiersNotDistinct.ql │ │ │ ├── RULE-5-5 │ │ │ └── IdentifiersNotDistinctFromMacroNames.ql │ │ │ ├── RULE-5-6 │ │ │ └── TypedefNameNotUnique.ql │ │ │ ├── RULE-5-7 │ │ │ └── TagNameNotUnique.ql │ │ │ ├── RULE-5-8 │ │ │ └── IdentifiersWithExternalLinkageNotUnique.ql │ │ │ ├── RULE-5-9 │ │ │ └── IdentifiersWithInternalLinkageNotUnique.ql │ │ │ ├── RULE-6-1 │ │ │ └── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.ql │ │ │ ├── RULE-6-2 │ │ │ └── SingleBitNamedBitFieldsOfASignedType.ql │ │ │ ├── RULE-6-3 │ │ │ └── BitFieldDeclaredAsMemberOfAUnion.ql │ │ │ ├── RULE-7-1 │ │ │ └── OctalConstantsUsed.ql │ │ │ ├── RULE-7-2 │ │ │ └── UOrUSuffixRepresentedInUnsignedType.ql │ │ │ ├── RULE-7-3 │ │ │ └── LowercaseCharacterLUsedInLiteralSuffix.ql │ │ │ ├── RULE-7-4 │ │ │ └── StringLiteralAssignedToNonConstChar.ql │ │ │ ├── RULE-7-5 │ │ │ ├── IncorrectlySizedIntegerConstantMacroArgument.ql │ │ │ ├── IntegerConstantMacroArgumentUsesSuffix.ql │ │ │ ├── InvalidIntegerConstantMacroArgument.ql │ │ │ └── InvalidLiteralForIntegerConstantMacroArgument.ql │ │ │ ├── RULE-7-6 │ │ │ └── UseOfBannedSmallIntegerConstantMacro.ql │ │ │ ├── RULE-8-1 │ │ │ └── ExplicitlyDeclareTypes.ql │ │ │ ├── RULE-8-10 │ │ │ └── InlineFunctionNotDeclaredStaticStorage.ql │ │ │ ├── RULE-8-11 │ │ │ └── ArrayExternalLinkageSizeExplicitlySpecified.ql │ │ │ ├── RULE-8-12 │ │ │ └── ValueImplicitEnumerationConstantNotUnique.ql │ │ │ ├── RULE-8-13 │ │ │ └── PointerShouldPointToConstTypeWhenPossible.ql │ │ │ ├── RULE-8-14 │ │ │ └── RestrictTypeQualifierUsed.ql │ │ │ ├── RULE-8-15 │ │ │ ├── RedeclarationOfObjectWithUnmatchedAlignment.ql │ │ │ └── RedeclarationOfObjectWithoutAlignment.ql │ │ │ ├── RULE-8-16 │ │ │ └── AlignmentWithSizeZero.ql │ │ │ ├── RULE-8-17 │ │ │ └── MoreThanOneAlignmentSpecifierOnDeclaration.ql │ │ │ ├── RULE-8-2 │ │ │ └── FunctionTypesNotInPrototypeForm.ql │ │ │ ├── RULE-8-3 │ │ │ ├── DeclarationsOfAFunctionSameNameAndType.ql │ │ │ └── DeclarationsOfAnObjectSameNameAndType.ql │ │ │ ├── RULE-8-4 │ │ │ ├── CompatibleDeclarationFunctionDefined.ql │ │ │ └── CompatibleDeclarationObjectDefined.ql │ │ │ ├── RULE-8-5 │ │ │ └── ExternalObjectOrFunctionNotDeclaredInOneFile.ql │ │ │ ├── RULE-8-6 │ │ │ └── IdentifierWithExternalLinkageOneDefinition.ql │ │ │ ├── RULE-8-7 │ │ │ └── ShouldNotBeDefinedWithExternalLinkage.ql │ │ │ ├── RULE-8-8 │ │ │ ├── MissingStaticSpecifierFunctionRedeclarationC.ql │ │ │ └── MissingStaticSpecifierObjectRedeclarationC.ql │ │ │ ├── RULE-8-9 │ │ │ └── UnnecessaryExposedIdentifierDeclarationC.ql │ │ │ ├── RULE-9-1 │ │ │ └── ObjectWithAutoStorageDurationReadBeforeInit.ql │ │ │ ├── RULE-9-2 │ │ │ └── InitializerForAggregateOrUnionNotEnclosedInBraces.ql │ │ │ ├── RULE-9-3 │ │ │ └── PartiallyInitializedArrayWithExplicitInitializers.ql │ │ │ ├── RULE-9-4 │ │ │ └── RepeatedInitializationOfAggregateObjectElement.ql │ │ │ └── RULE-9-7 │ │ │ └── UninitializedAtomicObject.ql │ └── test │ │ ├── c │ │ └── misra │ │ │ ├── EssentialTypes.expected │ │ │ ├── EssentialTypes.ql │ │ │ └── test.c │ │ ├── codeql-pack.lock.yml │ │ ├── qlpack.yml │ │ └── rules │ │ ├── DIR-4-10 │ │ └── PrecautionIncludeGuardsNotProvided.testref │ │ ├── DIR-4-11 │ │ ├── CheckMathLibraryFunctionParameters.testref │ │ ├── LowPrecisionPeriodicTrigonometricFunctionCall.expected │ │ ├── LowPrecisionPeriodicTrigonometricFunctionCall.qlref │ │ └── test.c │ │ ├── DIR-4-12 │ │ ├── StdLibDynamicMemoryAllocationUsed.expected │ │ ├── StdLibDynamicMemoryAllocationUsed.qlref │ │ └── test.c │ │ ├── DIR-4-15 │ │ ├── PossibleMisuseOfUndetectedInfinity.testref │ │ └── PossibleMisuseOfUndetectedNaN.testref │ │ ├── DIR-4-2 │ │ └── UsageOfAssemblyLanguageShouldBeDocumented.testref │ │ ├── DIR-4-3 │ │ ├── LanguageNotEncapsulatedAndIsolated.expected │ │ ├── LanguageNotEncapsulatedAndIsolated.qlref │ │ └── test.c │ │ ├── DIR-4-4 │ │ └── SectionsOfCodeShallNotBeCommentedOut.testref │ │ ├── DIR-4-5 │ │ └── IdentifiersInTheSameNameSpaceUnambiguous.testref │ │ ├── DIR-4-6 │ │ ├── PlainNumericalTypeUsedOverExplicitTypedef.expected │ │ ├── PlainNumericalTypeUsedOverExplicitTypedef.qlref │ │ └── test.c │ │ ├── DIR-4-7 │ │ └── FunctionErrorInformationUntested.testref │ │ ├── DIR-4-8 │ │ ├── ObjectWithNoPointerDereferenceShouldBeOpaque.expected │ │ ├── ObjectWithNoPointerDereferenceShouldBeOpaque.qlref │ │ ├── test.c │ │ ├── test.h │ │ ├── test_2.c │ │ └── test_shared.h │ │ ├── DIR-4-9 │ │ ├── FunctionOverFunctionLikeMacro.expected │ │ ├── FunctionOverFunctionLikeMacro.qlref │ │ ├── FunctionOverFunctionLikeMacro.testref │ │ └── test.c │ │ ├── DIR-5-1 │ │ ├── PossibleDataRaceBetweenThreads.expected │ │ ├── PossibleDataRaceBetweenThreads.qlref │ │ └── test.c │ │ ├── DIR-5-2 │ │ └── NotNoDeadlocksBetweenThreads.testref │ │ ├── DIR-5-3 │ │ ├── BannedDynamicThreadCreation.expected │ │ ├── BannedDynamicThreadCreation.qlref │ │ ├── ThreadCreatedByThread.expected │ │ ├── ThreadCreatedByThread.qlref │ │ └── test.c │ │ ├── RULE-1-2 │ │ ├── LanguageExtensionsShouldNotBeUsed.expected │ │ ├── LanguageExtensionsShouldNotBeUsed.qlref │ │ ├── options │ │ └── test.c │ │ ├── RULE-1-3 │ │ ├── OccurrenceOfUndefinedBehavior.expected │ │ ├── OccurrenceOfUndefinedBehavior.qlref │ │ ├── test.c │ │ └── test.c.clang │ │ ├── RULE-1-4 │ │ ├── EmergentLanguageFeaturesUsed.expected │ │ ├── EmergentLanguageFeaturesUsed.qlref │ │ └── test.c │ │ ├── RULE-1-5 │ │ ├── CallToObsolescentFunctionGets.expected │ │ ├── CallToObsolescentFunctionGets.qlref │ │ ├── FunctionTypesNotInPrototypeFormObsolete.testref │ │ ├── InvalidDefineOrUndefOfStdBoolMacro.expected │ │ ├── InvalidDefineOrUndefOfStdBoolMacro.qlref │ │ ├── MissingStaticSpecifierFuncRedeclarationObsolete.testref │ │ ├── MissingStaticSpecifierObjectRedeclarationObsolete.testref │ │ ├── SizeInReallocCallIsZero.expected │ │ ├── SizeInReallocCallIsZero.qlref │ │ ├── SizeInReallocCallMayBeZero.expected │ │ ├── SizeInReallocCallMayBeZero.qlref │ │ ├── UngetcCallOnStreamPositionZero.expected │ │ ├── UngetcCallOnStreamPositionZero.qlref │ │ ├── UseOfObsoleteMacroAtomicVarInit.expected │ │ ├── UseOfObsoleteMacroAtomicVarInit.expected.gcc │ │ ├── UseOfObsoleteMacroAtomicVarInit.qlref │ │ └── test.c │ │ ├── RULE-10-1 │ │ ├── OperandsOfAnInappropriateEssentialType.expected │ │ ├── OperandsOfAnInappropriateEssentialType.qlref │ │ ├── PointerTypeOnLogicalOperator.expected │ │ ├── PointerTypeOnLogicalOperator.qlref │ │ └── test.c │ │ ├── RULE-10-2 │ │ ├── AdditionSubtractionOnEssentiallyCharType.expected │ │ ├── AdditionSubtractionOnEssentiallyCharType.qlref │ │ └── test.c │ │ ├── RULE-10-3 │ │ ├── AssignmentOfIncompatibleEssentialType.expected │ │ ├── AssignmentOfIncompatibleEssentialType.qlref │ │ └── test.c │ │ ├── RULE-10-4 │ │ ├── OperandsWithMismatchedEssentialTypeCategory.expected │ │ ├── OperandsWithMismatchedEssentialTypeCategory.qlref │ │ └── test.c │ │ ├── RULE-10-5 │ │ ├── InappropriateEssentialTypeCast.expected │ │ ├── InappropriateEssentialTypeCast.qlref │ │ └── test.c │ │ ├── RULE-10-6 │ │ ├── AssignmentToWiderEssentialType.expected │ │ ├── AssignmentToWiderEssentialType.qlref │ │ └── test.c │ │ ├── RULE-10-7 │ │ ├── ImplicitConversionOfCompositeExpression.expected │ │ ├── ImplicitConversionOfCompositeExpression.qlref │ │ └── test.c │ │ ├── RULE-10-8 │ │ ├── InappropriateCastOfCompositeExpression.expected │ │ ├── InappropriateCastOfCompositeExpression.qlref │ │ └── test.c │ │ ├── RULE-11-1 │ │ ├── ConversionBetweenFunctionPointerAndOtherType.expected │ │ ├── ConversionBetweenFunctionPointerAndOtherType.qlref │ │ ├── ConversionBetweenFunctionPointerAndOtherType.testref │ │ └── test.c │ │ ├── RULE-11-10 │ │ ├── AtomicQualifierAppliedToVoid.expected │ │ ├── AtomicQualifierAppliedToVoid.expected.clang │ │ ├── AtomicQualifierAppliedToVoid.qlref │ │ ├── test.c │ │ └── test.c.clang │ │ ├── RULE-11-2 │ │ ├── ConversionBetweenIncompleteTypePointerAndOtherType.expected │ │ ├── ConversionBetweenIncompleteTypePointerAndOtherType.qlref │ │ └── test.c │ │ ├── RULE-11-3 │ │ ├── CastBetweenObjectPointerAndDifferentObjectType.expected │ │ ├── CastBetweenObjectPointerAndDifferentObjectType.qlref │ │ └── test.c │ │ ├── RULE-11-4 │ │ ├── ConversionBetweenPointerToObjectAndIntegerType.expected │ │ ├── ConversionBetweenPointerToObjectAndIntegerType.qlref │ │ └── test.c │ │ ├── RULE-11-5 │ │ ├── ConversionFromPointerToVoidIntoPointerToObject.expected │ │ ├── ConversionFromPointerToVoidIntoPointerToObject.qlref │ │ └── test.c │ │ ├── RULE-11-6 │ │ ├── CastBetweenPointerToVoidAndArithmeticType.expected │ │ ├── CastBetweenPointerToVoidAndArithmeticType.qlref │ │ └── test.c │ │ ├── RULE-11-7 │ │ ├── CastBetweenPointerToObjectAndNonIntArithmeticType.expected │ │ ├── CastBetweenPointerToObjectAndNonIntArithmeticType.qlref │ │ └── test.c │ │ ├── RULE-11-8 │ │ ├── CastRemovesConstOrVolatileQualification.expected │ │ ├── CastRemovesConstOrVolatileQualification.qlref │ │ └── test.c │ │ ├── RULE-11-9 │ │ ├── MacroNullNotUsedAsIntegerNullPointerConstant.expected │ │ ├── MacroNullNotUsedAsIntegerNullPointerConstant.qlref │ │ └── test.c │ │ ├── RULE-12-1 │ │ ├── ImplicitPrecedenceOfOperatorsInExpression.expected │ │ ├── ImplicitPrecedenceOfOperatorsInExpression.qlref │ │ ├── UnenclosedSizeofOperand.expected │ │ ├── UnenclosedSizeofOperand.qlref │ │ └── test.c │ │ ├── RULE-12-2 │ │ ├── RightHandOperandOfAShiftRange.expected │ │ ├── RightHandOperandOfAShiftRange.qlref │ │ └── test.c │ │ ├── RULE-12-3 │ │ └── CommaOperatorShouldNotBeUsed.testref │ │ ├── RULE-12-4 │ │ └── ConstantUnsignedIntegerExpressionsWrapAround.testref │ │ ├── RULE-12-5 │ │ ├── SizeofOperatorUsedOnArrayTypeParam.expected │ │ ├── SizeofOperatorUsedOnArrayTypeParam.qlref │ │ └── test.c │ │ ├── RULE-12-6 │ │ ├── AtomicAggregateObjectDirectlyAccessed.expected │ │ ├── AtomicAggregateObjectDirectlyAccessed.expected.clang │ │ ├── AtomicAggregateObjectDirectlyAccessed.qlref │ │ ├── test.c │ │ └── test.c.clang │ │ ├── RULE-13-1 │ │ ├── InitializerListsContainPersistentSideEffects.expected │ │ ├── InitializerListsContainPersistentSideEffects.qlref │ │ └── test.c │ │ ├── RULE-13-2 │ │ ├── UnsequencedAtomicReads.expected │ │ ├── UnsequencedAtomicReads.expected.gcc │ │ ├── UnsequencedAtomicReads.qlref │ │ ├── UnsequencedSideEffects.expected │ │ ├── UnsequencedSideEffects.qlref │ │ └── test.c │ │ ├── RULE-13-3 │ │ ├── SideEffectAndCrementInFullExpression.expected │ │ ├── SideEffectAndCrementInFullExpression.qlref │ │ └── test.c │ │ ├── RULE-13-4 │ │ └── ResultOfAnAssignmentOperatorShouldNotBeUsed.testref │ │ ├── RULE-13-5 │ │ ├── PossibleSuppressedSideEffectInLogicOperatorOperand.expected │ │ ├── PossibleSuppressedSideEffectInLogicOperatorOperand.qlref │ │ └── test.c │ │ ├── RULE-13-6 │ │ ├── SizeofOperandWithSideEffect.expected │ │ ├── SizeofOperandWithSideEffect.qlref │ │ └── test.c │ │ ├── RULE-14-1 │ │ ├── LoopOverEssentiallyFloatType.expected │ │ ├── LoopOverEssentiallyFloatType.qlref │ │ └── test.c │ │ ├── RULE-14-2 │ │ ├── ForLoopNotWellFormed.expected │ │ ├── ForLoopNotWellFormed.qlref │ │ └── test.c │ │ ├── RULE-14-3 │ │ ├── ControllingExprInvariant.expected │ │ ├── ControllingExprInvariant.qlref │ │ └── test.c │ │ ├── RULE-14-4 │ │ ├── NonBooleanIfCondition.expected │ │ ├── NonBooleanIfCondition.qlref │ │ ├── NonBooleanIterationCondition.expected │ │ ├── NonBooleanIterationCondition.qlref │ │ ├── test.c │ │ └── test_iteration.c │ │ ├── RULE-15-1 │ │ └── GotoStatementUsed.testref │ │ ├── RULE-15-2 │ │ ├── GotoLabelLocationCondition.expected │ │ ├── GotoLabelLocationCondition.qlref │ │ └── GotoLabelLocationCondition.testref │ │ ├── RULE-15-3 │ │ └── GotoLabelBlockCondition.testref │ │ ├── RULE-15-4 │ │ ├── LoopIterationCondition.expected │ │ ├── LoopIterationCondition.qlref │ │ └── test.c │ │ ├── RULE-15-5 │ │ ├── FunctionReturnCondition.expected │ │ ├── FunctionReturnCondition.qlref │ │ └── test.c │ │ ├── RULE-15-6 │ │ ├── LoopCompoundCondition.expected │ │ ├── LoopCompoundCondition.qlref │ │ ├── SelectionCompoundCondition.expected │ │ ├── SelectionCompoundCondition.qlref │ │ ├── SwitchCompoundCondition.expected │ │ ├── SwitchCompoundCondition.qlref │ │ └── test.c │ │ ├── RULE-15-7 │ │ └── IfElseEndCondition.testref │ │ ├── RULE-16-1 │ │ ├── SwitchCaseStartCondition.testref │ │ └── SwitchStmtNotWellFormed.testref │ │ ├── RULE-16-2 │ │ └── NestSwitchLabelInSwitchStatement.testref │ │ ├── RULE-16-3 │ │ ├── BreakShallTerminateSwitchClause.expected │ │ ├── BreakShallTerminateSwitchClause.qlref │ │ └── test.c │ │ ├── RULE-16-4 │ │ ├── EverySwitchShallHaveDefaultLabel.expected │ │ ├── EverySwitchShallHaveDefaultLabel.qlref │ │ └── test.c │ │ ├── RULE-16-5 │ │ ├── DefaultNotFirstOrLastOfSwitch.expected │ │ ├── DefaultNotFirstOrLastOfSwitch.qlref │ │ └── test.c │ │ ├── RULE-16-6 │ │ ├── SwitchClauseNumberCondition.expected │ │ ├── SwitchClauseNumberCondition.qlref │ │ └── test.c │ │ ├── RULE-16-7 │ │ ├── SwitchExpressionBoolCondition.expected │ │ ├── SwitchExpressionBoolCondition.qlref │ │ └── test.c │ │ ├── RULE-17-1 │ │ ├── FeaturesOfStdarghUsed.expected │ │ ├── FeaturesOfStdarghUsed.qlref │ │ └── test.c │ │ ├── RULE-17-10 │ │ ├── NonVoidReturnTypeOfNoreturnFunction.expected │ │ ├── NonVoidReturnTypeOfNoreturnFunction.qlref │ │ └── test.c │ │ ├── RULE-17-11 │ │ ├── FunctionWithNoReturningBranchShouldBeNoreturn.expected │ │ ├── FunctionWithNoReturningBranchShouldBeNoreturn.qlref │ │ └── test.c │ │ ├── RULE-17-12 │ │ ├── FunctionAddressesShouldAddressOperator.expected │ │ ├── FunctionAddressesShouldAddressOperator.qlref │ │ └── test.c │ │ ├── RULE-17-2 │ │ ├── RecursiveFunctionCondition.expected │ │ ├── RecursiveFunctionCondition.qlref │ │ └── test.c │ │ ├── RULE-17-3 │ │ ├── FunctionDeclaredImplicitly.expected │ │ ├── FunctionDeclaredImplicitly.qlref │ │ └── test.c │ │ ├── RULE-17-4 │ │ └── NonVoidFunctionReturnCondition.testref │ │ ├── RULE-17-5 │ │ ├── ArrayFunctionArgumentNumberOfElements.expected │ │ ├── ArrayFunctionArgumentNumberOfElements.qlref │ │ └── test.c │ │ ├── RULE-17-6 │ │ ├── UseOfArrayStatic.expected │ │ ├── UseOfArrayStatic.qlref │ │ └── test.c │ │ ├── RULE-17-7 │ │ ├── ValueReturnedByAFunctionNotUsed.expected │ │ ├── ValueReturnedByAFunctionNotUsed.qlref │ │ └── test.c │ │ ├── RULE-17-8 │ │ ├── ModificationOfFunctionParameter.expected │ │ ├── ModificationOfFunctionParameter.qlref │ │ └── test.c │ │ ├── RULE-17-9 │ │ └── ReturnStatementInNoreturnFunction.testref │ │ ├── RULE-18-1 │ │ └── PointerAndDerivedPointerMustAddressSameArray.testref │ │ ├── RULE-18-10 │ │ ├── PointersToVariablyModifiedArrayTypesUsed.expected │ │ ├── PointersToVariablyModifiedArrayTypesUsed.qlref │ │ └── test.c │ │ ├── RULE-18-2 │ │ └── SubtractionBetweenPointersMustAddressSameArray.testref │ │ ├── RULE-18-3 │ │ └── RelationalOperatorComparesPointerToDifferentArray.testref │ │ ├── RULE-18-4 │ │ └── DoNotUseAdditionOrSubtractionOperatorsOnPointers.testref │ │ ├── RULE-18-5 │ │ └── NoMoreThanTwoLevelsOfPointerNestingInDeclarations.testref │ │ ├── RULE-18-6 │ │ ├── AutomaticStorageObjectAddressCopiedToOtherObject.testref │ │ ├── ThreadLocalObjectAddressCopiedToGlobalObject.expected │ │ ├── ThreadLocalObjectAddressCopiedToGlobalObject.qlref │ │ └── test.c │ │ ├── RULE-18-7 │ │ ├── FlexibleArrayMembersDeclared.expected │ │ ├── FlexibleArrayMembersDeclared.qlref │ │ └── test.c │ │ ├── RULE-18-8 │ │ ├── VariableLengthArrayTypesUsed.expected │ │ ├── VariableLengthArrayTypesUsed.qlref │ │ └── test.c │ │ ├── RULE-18-9 │ │ ├── ArrayToPointerConversionOfTemporaryObject.expected │ │ ├── ArrayToPointerConversionOfTemporaryObject.qlref │ │ ├── ModifiableLValueSubscriptedWithTemporaryLifetime.expected │ │ ├── ModifiableLValueSubscriptedWithTemporaryLifetime.qlref │ │ └── test.c │ │ ├── RULE-19-1 │ │ ├── ObjectAssignedToAnOverlappingObject.expected │ │ ├── ObjectAssignedToAnOverlappingObject.qlref │ │ ├── ObjectCopiedToAnOverlappingObject.expected │ │ ├── ObjectCopiedToAnOverlappingObject.qlref │ │ └── test.c │ │ ├── RULE-19-2 │ │ ├── UnionKeywordShouldNotBeUsed.expected │ │ ├── UnionKeywordShouldNotBeUsed.qlref │ │ └── test.c │ │ ├── RULE-2-1 │ │ └── UnreachableCode.testref │ │ ├── RULE-2-2 │ │ ├── DeadCode.expected │ │ ├── DeadCode.qlref │ │ └── test.c │ │ ├── RULE-2-3 │ │ └── UnusedTypeDeclarations.testref │ │ ├── RULE-2-4 │ │ ├── UnusedTagDeclaration.expected │ │ ├── UnusedTagDeclaration.qlref │ │ └── test.c │ │ ├── RULE-2-5 │ │ ├── UnusedMacroDeclaration.expected │ │ ├── UnusedMacroDeclaration.qlref │ │ ├── test.c │ │ └── test.h │ │ ├── RULE-2-6 │ │ ├── UnusedLabelDeclaration.expected │ │ ├── UnusedLabelDeclaration.qlref │ │ └── test.c │ │ ├── RULE-2-7 │ │ └── UnusedParameter.testref │ │ ├── RULE-2-8 │ │ ├── UnusedObjectDefinition.expected │ │ ├── UnusedObjectDefinition.qlref │ │ ├── UnusedObjectDefinitionStrict.expected │ │ ├── UnusedObjectDefinitionStrict.qlref │ │ └── test.c │ │ ├── RULE-20-1 │ │ └── IncludeDirectivesPrecededByDirectivesOrComments.testref │ │ ├── RULE-20-10 │ │ └── PreprocessorHashOperatorsShouldNotBeUsed.testref │ │ ├── RULE-20-11 │ │ └── MoreThanOneHashOperatorInMacroDefinition.testref │ │ ├── RULE-20-12 │ │ └── MacroParameterUsedAsHashOperand.testref │ │ ├── RULE-20-2 │ │ └── ForbiddenCharactersInHeaderFileName.testref │ │ ├── RULE-20-4 │ │ ├── MacroDefinedWithTheSameNameAsKeyword.expected │ │ ├── MacroDefinedWithTheSameNameAsKeyword.qlref │ │ └── test.c │ │ ├── RULE-20-5 │ │ ├── UndefShouldNotBeUsed.expected │ │ ├── UndefShouldNotBeUsed.qlref │ │ └── test.c │ │ ├── RULE-20-6 │ │ └── FunctionLikeMacroArgsContainHashTokenCQuery.testref │ │ ├── RULE-20-7 │ │ └── MacroParameterNotEnclosedInParenthesesCQuery.testref │ │ ├── RULE-20-8 │ │ ├── ControllingExpressionIfDirective.expected │ │ ├── ControllingExpressionIfDirective.qlref │ │ └── test.c │ │ ├── RULE-20-9 │ │ └── IdentifiersUsedInPreprocessorExpression.testref │ │ ├── RULE-21-1 │ │ ├── DefineAndUndefUsedOnReservedIdentifierOrMacroName.expected │ │ ├── DefineAndUndefUsedOnReservedIdentifierOrMacroName.qlref │ │ └── test.c │ │ ├── RULE-21-10 │ │ ├── StandardLibraryTimeAndDateFunctionsUsed.expected │ │ ├── StandardLibraryTimeAndDateFunctionsUsed.qlref │ │ └── test.c │ │ ├── RULE-21-11 │ │ ├── StandardHeaderFileTgmathhUsed.expected │ │ ├── StandardHeaderFileTgmathhUsed.expected.clang │ │ ├── StandardHeaderFileTgmathhUsed.expected.gcc │ │ ├── StandardHeaderFileTgmathhUsed.qlref │ │ ├── test-math-lib.c │ │ └── test.c │ │ ├── RULE-21-12 │ │ ├── ExceptionHandlingFeaturesOfFenvhUsed.expected │ │ ├── ExceptionHandlingFeaturesOfFenvhUsed.qlref │ │ └── test.c │ │ ├── RULE-21-13 │ │ ├── CtypeFunctionArgNotUnsignedCharOrEof.expected │ │ ├── CtypeFunctionArgNotUnsignedCharOrEof.expected.clang │ │ ├── CtypeFunctionArgNotUnsignedCharOrEof.expected.gcc │ │ ├── CtypeFunctionArgNotUnsignedCharOrEof.expected.qcc │ │ ├── CtypeFunctionArgNotUnsignedCharOrEof.qlref │ │ └── test.c │ │ ├── RULE-21-14 │ │ ├── MemcmpUsedToCompareNullTerminatedStrings.expected │ │ ├── MemcmpUsedToCompareNullTerminatedStrings.qlref │ │ └── test.c │ │ ├── RULE-21-15 │ │ ├── MemcpyMemmoveMemcmpArgNotPointersToCompatibleTypes.expected │ │ ├── MemcpyMemmoveMemcmpArgNotPointersToCompatibleTypes.qlref │ │ └── test.c │ │ ├── RULE-21-16 │ │ ├── MemcmpOnInappropriateEssentialTypeArgs.expected │ │ ├── MemcmpOnInappropriateEssentialTypeArgs.qlref │ │ └── test.c │ │ ├── RULE-21-17 │ │ ├── StringFunctionPointerArgumentOutOfBounds.expected │ │ ├── StringFunctionPointerArgumentOutOfBounds.qlref │ │ └── test.c │ │ ├── RULE-21-18 │ │ ├── StringLibrarySizeArgumentOutOfBounds.expected │ │ ├── StringLibrarySizeArgumentOutOfBounds.qlref │ │ └── test.c │ │ ├── RULE-21-19 │ │ └── ValuesReturnedByLocaleSettingUsedAsPtrToConst.testref │ │ ├── RULE-21-2 │ │ └── DoNotDeclareAReservedIdentifier.testref │ │ ├── RULE-21-20 │ │ ├── CallToSetlocaleInvalidatesOldPointers.testref │ │ └── CallToSetlocaleInvalidatesOldPointersWarn.testref │ │ ├── RULE-21-21 │ │ ├── SystemOfStdlibhUsed.expected │ │ ├── SystemOfStdlibhUsed.qlref │ │ └── test.c │ │ ├── RULE-21-22 │ │ ├── TgMathArgumentWithInvalidEssentialType.expected │ │ ├── TgMathArgumentWithInvalidEssentialType.expected.clang │ │ ├── TgMathArgumentWithInvalidEssentialType.expected.gcc │ │ ├── TgMathArgumentWithInvalidEssentialType.qlref │ │ ├── test.c │ │ ├── test.c.clang │ │ └── test.c.gcc │ │ ├── RULE-21-23 │ │ ├── TgMathArgumentsWithDifferingStandardType.expected │ │ ├── TgMathArgumentsWithDifferingStandardType.expected.clang │ │ ├── TgMathArgumentsWithDifferingStandardType.expected.gcc │ │ ├── TgMathArgumentsWithDifferingStandardType.qlref │ │ └── test.c │ │ ├── RULE-21-24 │ │ ├── CallToBannedRandomFunction.expected │ │ ├── CallToBannedRandomFunction.qlref │ │ └── test.c │ │ ├── RULE-21-25 │ │ ├── InvalidMemoryOrderArgument.expected │ │ ├── InvalidMemoryOrderArgument.expected.gcc │ │ ├── InvalidMemoryOrderArgument.qlref │ │ └── test.c │ │ ├── RULE-21-26 │ │ ├── TimedlockOnInappropriateMutexType.expected │ │ ├── TimedlockOnInappropriateMutexType.qlref │ │ └── test.c │ │ ├── RULE-21-3 │ │ ├── MemoryAllocDeallocFunctionsOfStdlibhUsed.expected │ │ ├── MemoryAllocDeallocFunctionsOfStdlibhUsed.qlref │ │ └── test.c │ │ ├── RULE-21-4 │ │ ├── StandardHeaderFileUsedSetjmph.expected │ │ ├── StandardHeaderFileUsedSetjmph.expected.clang │ │ ├── StandardHeaderFileUsedSetjmph.expected.gcc │ │ ├── StandardHeaderFileUsedSetjmph.expected.qcc │ │ ├── StandardHeaderFileUsedSetjmph.qlref │ │ └── test.c │ │ ├── RULE-21-5 │ │ ├── StandardHeaderFileUsedSignalh.expected │ │ ├── StandardHeaderFileUsedSignalh.qlref │ │ └── test.c │ │ ├── RULE-21-6 │ │ ├── StandardLibraryInputoutputFunctionsUsed.expected │ │ ├── StandardLibraryInputoutputFunctionsUsed.qlref │ │ └── test.c │ │ ├── RULE-21-7 │ │ └── AtofAtoiAtolAndAtollOfStdlibhUsed.testref │ │ ├── RULE-21-8 │ │ ├── TerminationFunctionsOfStdlibhUsed.expected │ │ ├── TerminationFunctionsOfStdlibhUsed.qlref │ │ ├── TerminationMacrosOfStdlibhUsed.expected │ │ ├── TerminationMacrosOfStdlibhUsed.qlref │ │ └── test.c │ │ ├── RULE-21-9 │ │ ├── BsearchAndQsortOfStdlibhUsed.expected │ │ ├── BsearchAndQsortOfStdlibhUsed.qlref │ │ └── test.c │ │ ├── RULE-22-1 │ │ ├── CloseFileHandleWhenNoLongerNeededMisra.testref │ │ └── FreeMemoryWhenNoLongerNeededMisra.testref │ │ ├── RULE-22-10 │ │ ├── OnlyTestErrnoRightAfterErrnoSettingFunction.expected │ │ ├── OnlyTestErrnoRightAfterErrnoSettingFunction.qlref │ │ └── test.c │ │ ├── RULE-22-11 │ │ ├── ThreadPreviouslyJoinedOrDetached.testref │ │ └── ThreadWasPreviouslyJoinedOrDetached.testref │ │ ├── RULE-22-12 │ │ ├── NonstandardUseOfThreadingObject.expected │ │ ├── NonstandardUseOfThreadingObject.qlref │ │ └── test.c │ │ ├── RULE-22-13 │ │ ├── ThreadingObjectWithInvalidStorageDuration.expected │ │ ├── ThreadingObjectWithInvalidStorageDuration.qlref │ │ └── test.c │ │ ├── RULE-22-14 │ │ ├── MutexInitWithInvalidMutexType.expected │ │ ├── MutexInitWithInvalidMutexType.qlref │ │ ├── MutexInitializedInsideThread.expected │ │ ├── MutexInitializedInsideThread.qlref │ │ ├── MutexNotInitializedBeforeUse.expected │ │ ├── MutexNotInitializedBeforeUse.qlref │ │ └── test.c │ │ ├── RULE-22-15 │ │ ├── ThreadResourceDisposedBeforeThreadsJoined.expected │ │ ├── ThreadResourceDisposedBeforeThreadsJoined.qlref │ │ └── test.c │ │ ├── RULE-22-16 │ │ ├── MutexObjectsNotAlwaysUnlocked.expected │ │ ├── MutexObjectsNotAlwaysUnlocked.qlref │ │ └── test.c │ │ ├── RULE-22-17 │ │ ├── InvalidOperationOnUnlockedMutex.expected │ │ ├── InvalidOperationOnUnlockedMutex.qlref │ │ └── test.c │ │ ├── RULE-22-18 │ │ ├── NonRecursiveMutexRecursivelyLocked.expected │ │ ├── NonRecursiveMutexRecursivelyLocked.qlref │ │ ├── NonRecursiveMutexRecursivelyLockedAudit.expected │ │ ├── NonRecursiveMutexRecursivelyLockedAudit.qlref │ │ └── test.c │ │ ├── RULE-22-19 │ │ ├── ConditionVariableUsedWithMultipleMutexes.expected │ │ ├── ConditionVariableUsedWithMultipleMutexes.qlref │ │ └── test.c │ │ ├── RULE-22-2 │ │ └── OnlyFreeMemoryAllocatedDynamicallyMisra.testref │ │ ├── RULE-22-20 │ │ ├── ThreadStorageNotInitializedBeforeUse.expected │ │ ├── ThreadStorageNotInitializedBeforeUse.qlref │ │ ├── ThreadStoragePointerInitializedInsideThread.expected │ │ ├── ThreadStoragePointerInitializedInsideThread.qlref │ │ └── test.c │ │ ├── RULE-22-3 │ │ ├── FileOpenForReadAndWriteOnDifferentStreams.expected │ │ ├── FileOpenForReadAndWriteOnDifferentStreams.qlref │ │ └── test.c │ │ ├── RULE-22-4 │ │ ├── AttemptToWriteToAReadOnlyStream.expected │ │ ├── AttemptToWriteToAReadOnlyStream.qlref │ │ └── test.c │ │ ├── RULE-22-5 │ │ ├── PointerToAFileObjectDereferenced.expected │ │ ├── PointerToAFileObjectDereferenced.qlref │ │ └── test.c │ │ ├── RULE-22-6 │ │ └── FileUsedAfterClosed.testref │ │ ├── RULE-22-7 │ │ ├── EofShallBeComparedWithUnmodifiedReturnValues.expected │ │ ├── EofShallBeComparedWithUnmodifiedReturnValues.qlref │ │ └── test.c │ │ ├── RULE-22-8 │ │ ├── ErrnoSetToZeroPriorToCall.expected │ │ ├── ErrnoSetToZeroPriorToCall.qlref │ │ └── test.c │ │ ├── RULE-22-9 │ │ ├── ErrnoSetToZeroAfterCall.expected │ │ ├── ErrnoSetToZeroAfterCall.qlref │ │ └── test.c │ │ ├── RULE-23-1 │ │ ├── GenericSelectionDoesntDependOnMacroArgument.expected │ │ ├── GenericSelectionDoesntDependOnMacroArgument.qlref │ │ ├── GenericSelectionNotExpandedFromAMacro.expected │ │ ├── GenericSelectionNotExpandedFromAMacro.qlref │ │ └── test.c │ │ ├── RULE-23-2 │ │ ├── GenericSelectionNotFromMacroWithSideEffects.expected │ │ ├── GenericSelectionNotFromMacroWithSideEffects.qlref │ │ └── test.c │ │ ├── RULE-23-3 │ │ ├── GenericWithoutNonDefaultAssociation.expected │ │ ├── GenericWithoutNonDefaultAssociation.qlref │ │ └── test.c │ │ ├── RULE-23-4 │ │ ├── GenericAssociationWithUnselectableType.expected │ │ ├── GenericAssociationWithUnselectableType.qlref │ │ └── test.c │ │ ├── RULE-23-5 │ │ ├── DangerousDefaultSelectionForPointerInGeneric.expected │ │ ├── DangerousDefaultSelectionForPointerInGeneric.qlref │ │ └── test.c │ │ ├── RULE-23-6 │ │ ├── GenericExpressionWithIncorrectEssentialType.expected │ │ ├── GenericExpressionWithIncorrectEssentialType.qlref │ │ └── test.c │ │ ├── RULE-23-7 │ │ ├── InvalidGenericMacroArgumentEvaluation.expected │ │ ├── InvalidGenericMacroArgumentEvaluation.qlref │ │ └── test.c │ │ ├── RULE-23-8 │ │ ├── DefaultGenericSelectionNotFirstOrLast.expected │ │ ├── DefaultGenericSelectionNotFirstOrLast.qlref │ │ └── test.c │ │ ├── RULE-3-1 │ │ ├── CharacterSequencesAndUsedWithinAComment.expected │ │ ├── CharacterSequencesAndUsedWithinAComment.qlref │ │ └── test.c │ │ ├── RULE-3-2 │ │ ├── LineSplicingUsedInComments.expected │ │ ├── LineSplicingUsedInComments.qlref │ │ └── test.c │ │ ├── RULE-4-1 │ │ └── OctalAndHexadecimalEscapeSequencesNotTerminated.testref │ │ ├── RULE-5-1 │ │ └── ExternalIdentifiersNotDistinct.testref │ │ ├── RULE-5-2 │ │ ├── IdentifiersDeclaredInTheSameScopeNotDistinct.expected │ │ ├── IdentifiersDeclaredInTheSameScopeNotDistinct.qlref │ │ └── test.c │ │ ├── RULE-5-3 │ │ └── IdentifierHidingC.testref │ │ ├── RULE-5-4 │ │ ├── MacroIdentifierNotDistinctFromParameter.expected │ │ ├── MacroIdentifierNotDistinctFromParameter.qlref │ │ ├── MacroIdentifiersNotDistinct.expected │ │ ├── MacroIdentifiersNotDistinct.qlref │ │ ├── conditional.h │ │ ├── header1.h │ │ ├── header2.h │ │ ├── header3.h │ │ ├── header4.h │ │ ├── root1.c │ │ ├── root2.c │ │ └── test.c │ │ ├── RULE-5-5 │ │ ├── IdentifiersNotDistinctFromMacroNames.expected │ │ ├── IdentifiersNotDistinctFromMacroNames.qlref │ │ └── test.c │ │ ├── RULE-5-6 │ │ ├── TypedefNameNotUnique.expected │ │ ├── TypedefNameNotUnique.qlref │ │ ├── test.c │ │ ├── test.h │ │ └── test1.c │ │ ├── RULE-5-7 │ │ ├── TagNameNotUnique.expected │ │ ├── TagNameNotUnique.qlref │ │ └── test.c │ │ ├── RULE-5-8 │ │ ├── IdentifiersWithExternalLinkageNotUnique.expected │ │ ├── IdentifiersWithExternalLinkageNotUnique.qlref │ │ ├── test.c │ │ └── test1.c │ │ ├── RULE-5-9 │ │ ├── IdentifiersWithInternalLinkageNotUnique.expected │ │ ├── IdentifiersWithInternalLinkageNotUnique.qlref │ │ ├── test.c │ │ └── test1.c │ │ ├── RULE-6-1 │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.expected │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.qlref │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.testref │ │ ├── clang │ │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.expected │ │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.qlref │ │ │ ├── options │ │ │ └── test.c │ │ ├── gcc │ │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.expected │ │ │ ├── BitFieldsShallOnlyBeDeclaredWithAnAppropriateType.qlref │ │ │ ├── options │ │ │ └── test.c │ │ ├── options │ │ └── test.c │ │ ├── RULE-6-2 │ │ └── SingleBitNamedBitFieldsOfASignedType.testref │ │ ├── RULE-6-3 │ │ ├── BitFieldDeclaredAsMemberOfAUnion.expected │ │ ├── BitFieldDeclaredAsMemberOfAUnion.qlref │ │ └── test.c │ │ ├── RULE-7-1 │ │ └── OctalConstantsUsed.testref │ │ ├── RULE-7-2 │ │ ├── UOrUSuffixRepresentedInUnsignedType.expected │ │ ├── UOrUSuffixRepresentedInUnsignedType.qlref │ │ └── test.c │ │ ├── RULE-7-3 │ │ └── LowercaseCharacterLUsedInLiteralSuffix.testref │ │ ├── RULE-7-4 │ │ ├── StringLiteralAssignedToNonConstChar.expected │ │ ├── StringLiteralAssignedToNonConstChar.qlref │ │ └── test.c │ │ ├── RULE-7-5 │ │ ├── IncorrectlySizedIntegerConstantMacroArgument.expected │ │ ├── IncorrectlySizedIntegerConstantMacroArgument.qlref │ │ ├── IntegerConstantMacroArgumentUsesSuffix.expected │ │ ├── IntegerConstantMacroArgumentUsesSuffix.qlref │ │ ├── InvalidIntegerConstantMacroArgument.expected │ │ ├── InvalidIntegerConstantMacroArgument.qlref │ │ ├── InvalidLiteralForIntegerConstantMacroArgument.expected │ │ ├── InvalidLiteralForIntegerConstantMacroArgument.qlref │ │ └── test.c │ │ ├── RULE-7-6 │ │ ├── UseOfBannedSmallIntegerConstantMacro.expected │ │ ├── UseOfBannedSmallIntegerConstantMacro.qlref │ │ └── test.c │ │ ├── RULE-8-1 │ │ └── ExplicitlyDeclareTypes.testref │ │ ├── RULE-8-10 │ │ ├── InlineFunctionNotDeclaredStaticStorage.expected │ │ ├── InlineFunctionNotDeclaredStaticStorage.qlref │ │ └── test.c │ │ ├── RULE-8-11 │ │ ├── ArrayExternalLinkageSizeExplicitlySpecified.expected │ │ ├── ArrayExternalLinkageSizeExplicitlySpecified.qlref │ │ └── test.c │ │ ├── RULE-8-12 │ │ └── ValueImplicitEnumerationConstantNotUnique.testref │ │ ├── RULE-8-13 │ │ ├── PointerShouldPointToConstTypeWhenPossible.expected │ │ ├── PointerShouldPointToConstTypeWhenPossible.qlref │ │ └── test.c │ │ ├── RULE-8-14 │ │ ├── RestrictTypeQualifierUsed.expected │ │ ├── RestrictTypeQualifierUsed.qlref │ │ └── test.c │ │ ├── RULE-8-15 │ │ ├── RedeclarationOfObjectWithUnmatchedAlignment.expected │ │ ├── RedeclarationOfObjectWithUnmatchedAlignment.expected.gcc │ │ ├── RedeclarationOfObjectWithUnmatchedAlignment.qlref │ │ ├── RedeclarationOfObjectWithoutAlignment.expected │ │ ├── RedeclarationOfObjectWithoutAlignment.qlref │ │ ├── test.c │ │ └── test.c.gcc │ │ ├── RULE-8-16 │ │ ├── AlignmentWithSizeZero.expected │ │ ├── AlignmentWithSizeZero.qlref │ │ └── test.c │ │ ├── RULE-8-17 │ │ ├── MoreThanOneAlignmentSpecifierOnDeclaration.expected │ │ ├── MoreThanOneAlignmentSpecifierOnDeclaration.qlref │ │ └── test.c │ │ ├── RULE-8-2 │ │ └── FunctionTypesNotInPrototypeForm.testref │ │ ├── RULE-8-3 │ │ ├── DeclarationsOfAFunctionSameNameAndType.expected │ │ ├── DeclarationsOfAFunctionSameNameAndType.qlref │ │ ├── DeclarationsOfAnObjectSameNameAndType.expected │ │ ├── DeclarationsOfAnObjectSameNameAndType.qlref │ │ ├── function1.c │ │ ├── function2.c │ │ ├── object1.c │ │ ├── object2.c │ │ └── test.c │ │ ├── RULE-8-4 │ │ ├── CompatibleDeclarationFunctionDefined.expected │ │ ├── CompatibleDeclarationFunctionDefined.qlref │ │ ├── CompatibleDeclarationObjectDefined.expected │ │ ├── CompatibleDeclarationObjectDefined.qlref │ │ ├── function1.c │ │ ├── function2.c │ │ ├── object1.c │ │ └── object2.c │ │ ├── RULE-8-5 │ │ ├── ExternalObjectOrFunctionNotDeclaredInOneFile.expected │ │ ├── ExternalObjectOrFunctionNotDeclaredInOneFile.qlref │ │ ├── test.c │ │ ├── test.h │ │ ├── test1.c │ │ └── test1.h │ │ ├── RULE-8-6 │ │ └── IdentifierWithExternalLinkageOneDefinition.testref │ │ ├── RULE-8-7 │ │ ├── ShouldNotBeDefinedWithExternalLinkage.expected │ │ ├── ShouldNotBeDefinedWithExternalLinkage.qlref │ │ ├── test.c │ │ ├── test.h │ │ ├── test1.c │ │ └── test2.h │ │ ├── RULE-8-8 │ │ ├── MissingStaticSpecifierFunctionRedeclarationC.testref │ │ └── MissingStaticSpecifierObjectRedeclarationC.testref │ │ ├── RULE-8-9 │ │ └── UnnecessaryExposedIdentifierDeclarationC.testref │ │ ├── RULE-9-1 │ │ └── ObjectWithAutoStorageDurationReadBeforeInit.testref │ │ ├── RULE-9-2 │ │ └── InitializerForAggregateOrUnionNotEnclosedInBraces.testref │ │ ├── RULE-9-3 │ │ ├── PartiallyInitializedArrayWithExplicitInitializers.expected │ │ ├── PartiallyInitializedArrayWithExplicitInitializers.qlref │ │ └── test.c │ │ ├── RULE-9-4 │ │ ├── RepeatedInitializationOfAggregateObjectElement.expected │ │ ├── RepeatedInitializationOfAggregateObjectElement.qlref │ │ └── test.c │ │ └── RULE-9-7 │ │ ├── UninitializedAtomicObject.expected │ │ ├── UninitializedAtomicObject.qlref │ │ └── test.c └── options ├── change_notes ├── 2021-06-29-remove-incompatability-codeql-cli-2.5.6.md ├── 2021-07-15-base-class-slicing.md ├── 2021-07-28-remove-incompatability-codeql-cli-2.5.6.md ├── 2021-09-03-update-access-path-perf.md ├── 2021-09-21-add-user-manual.md ├── 2021-09-21-well-formed-metadata.md ├── 2021-09-23-fix-performance-issues-in-2.5.9.md ├── 2021-09-24-incompatibility-on-case-insensitive.md ├── 2021-10-03-fix-reported-fp-for-a7-1-2.md ├── 2021-10-04-trivial-types.md ├── 2021-10-07-moved-from-unspecified.md ├── 2021-10-11-nsdmi-supported.md ├── 2021-10-11-register-keyword-updated.md ├── 2021-10-14-fix-specified-booleans-are-flagged-as-non-booleans.md ├── 2021-10-18-fix-reported-for-deleted-member-functions.md ├── 2021-10-20-fix-reported-for-inlined-destructor-declared-default.md ├── 2021-10-20-fix-the-non-compiler-generated-memberfunction-is-not-defaulted.md ├── 2021-10-20-supported-rules.md ├── 2021-10-21-access-static-pointer-to-member.md ├── 2021-10-22-update-name-quoting.md ├── 2021-10-23-a7-3-1-performance.md ├── 2021-10-23-smart-pointer-performance.md ├── 2021-10-25-m8-5-2-performance.md ├── 2021-10-26-enable-lifetime-profile.md ├── 2021-10-27-fix-reported-for-catch-clause-and-flagging-pointer-types-as-cheap-to-copy.md ├── 2021-10-27-fix-reported-for-inlined-default-constructor.md ├── 2021-10-29-fix-false-positive-lambdas-for-a7-1-7.md ├── 2021-11-01-fix-false-positive-main-flagged-for-a3-9-1.md ├── 2021-11-02-fix-false-positive-reported-for-a3-1-5.md ├── 2021-11-03-a27-0-2-enhancement.md ├── 2021-11-03-fix-unrequired-comments-on-generated-code.md ├── 2021-11-04-a15-4-4-ignore-deleted-functions.md ├── 2021-11-04-add-analysis-report-generation.md ├── 2021-11-04-fix-alert-message-M11-0-1.md ├── 2021-11-08-a0-1-2-use-underlying-type.md ├── 2021-11-16-add-deviation-support-to-report-generation.md ├── 2021-11-18-a8-4-9-exclude-member-initializing-params.md ├── 2021-11-18-clarify-overloaded-function.md ├── 2021-11-18-fix-false-positive-function-templates-a3-1-1.md ├── 2021-11-18-recursive-functions.md ├── 2021-11-19-allow-empty-fall-throw-case-stmt.md ├── 2021-11-22-M3-2-3-exclude-using-type-alias.md ├── 2021-11-23-A0-1-6-exclude-uninstantiated-templates.md ├── 2021-11-24-A2-7-3-exclude-documenting-lambda-capture.md ├── 2021-11-24-M5-0-20-bitwise-operator.md ├── 2021-11-24-false-positives-for-template-types.md ├── 2021-11-25-A5-1-9-exclude-identical-lambdas-in-template-instantiation.md ├── 2021-11-25-a8-4-9-exclude-operators-and-non-const-calls.md ├── 2021-11-26-A7-1-5-exclude-uninstantiated-tempates.md ├── 2021-11-26-change-considered-member-functions-for-a3-1-6.md ├── 2021-11-26-exclude-noexcept-false.md ├── 2021-11-26-expand-A12-8-6-output.md ├── 2021-11-26-improve-m7-5-2-coverage.md ├── 2021-11-26-reduce-the-set-of-considered-elements-for-a3-3-1.md ├── 2021-11-29-A10-3-2-exclude-compiler-generated-member-functions.md ├── 2021-11-29-template-exclusions-for-m5-3-1.md ├── 2021-12-01-a12-4-1-update-syntax.md ├── 2021-12-01-a2-7-3-exclude-forward-declarations.md ├── 2021-12-02-M0-1-2-exclude-loop-break.md ├── 2021-12-03-a8-4-9-sanitizier-calls.md ├── 2021-12-03-virtual-functions.md ├── 2021-12-06-A2-7-3-exclude-variables-from-templates.md ├── 2021-12-06-M0-1-10-exlude-deleted-functions.md ├── 2021-12-09-A8-5-2-exclude-auto-vars.md ├── 2021-12-09-ignore-unknown-cast-types.md ├── 2021-12-10-A3-1-5-simplify-trivial-cases.md ├── 2021-12-10-A8-4-11-add-lifetyme-operations.md ├── 2021-12-10-ignore-lambdas.md ├── 2021-12-12-revert-m7-5-2-coverage.md ├── 2021-12-16-fix-fp-a3-1-5.md ├── 2021-12-20-a13-2-2-add-reference-return-types.md ├── 2021-12-20-fix-fn-for-a15-5-1.md ├── 2021-12-21-a7-1-1-misc-fixes.md ├── 2022-01-20-m18-2-1-offsetof-lowercase.md ├── 2022-01-24-fix-clang-errors-batch-2.md ├── 2022-01-25-split-rule-A2-3-1-and-update-semantics.md ├── 2022-01-25-split-rule-DCL51-CPP.md ├── 2022-02-08-add-deviation-permit-diagnostics.md ├── 2022-02-09-expand-exception-modeling-for-new.md ├── 2022-02-09-fix-reported-fn-dangling-references.md ├── 2022-02-23-a13-5-2-fix-reported-fp-for-a13-5-2.md ├── 2022-02-23-fix-reported-fp-for-a0-1-2-and-a0-1-4.md ├── 2022-03-04-address-fp-m7-3-4.md ├── 2022-03-08-update-to-CodeQL-2.10.5.md ├── 2022-03-16-fix-placeholders.md ├── 2022-03-16-update-for-dataflow-changes.md ├── 2022-03-18-address-fp-A3-3-1.md ├── 2022-03-18-update-create-release-script.md ├── 2022-04-06-rand-refactor.md ├── 2022-05-20-M16-3-1-exclude-non-function-macros.md ├── 2022-06-24-use-variable-entry-type-in-M3-2-1.md ├── 2022-06-28-detect-static-namespace-members.md ├── 2022-07-13-improvements-to-lock-detection.md ├── 2022-07-14-update-pack-generation.md ├── 2022-07-15-M5-18-1-address-non-conforming-alert-message.md ├── 2022-07-21-performance-fix-to-deadlock-query.md ├── 2022-08-01-a0-1-6-alias-templates.md ├── 2022-08-10-improvements-to-thread-edge-cases.md ├── 2022-08-12-fix-RULE-11-1-false-negative.md ├── 2022-08-17-add-single-translation-unit-suites.md ├── 2022-08-17-fix-reported-fp-for-a13-2-2.md ├── 2022-08-17-fix-reported-fp-for-a7-1-1.md ├── 2022-08-18-dead-code-static-asserts.md ├── 2022-08-18-variable-templates-reused-name.md ├── 2022-08-31-update-to-CodeQL-2.9.4.md ├── 2022-09-18-m3-2-1-templates.md ├── 2022-11-02-c-style-casts-library-macros.md ├── 2022-11-02-m0-1-4-single-use-with-templates.md ├── 2022-11-04-refactor-dir-rules.md ├── 2022-11-07-add-guideline-recategorization-scripts.md ├── 2022-11-14-fix-RULE-11-7-message.md ├── 2022-11-15-consistent-gvn-library0use.md ├── 2022-11-21-null-sizet-not-cstdio.md ├── 2022-12-06-remove-use-of-default-taint-tracking.md ├── 2023-01-09-cstylecasts-template-parameters.md ├── 2023-01-11-dead-code-macros.md ├── 2023-02-07-extend-getatypeuse.md ├── 2023-02-10-refactor-test-cases.md ├── 2023-03-02-simplify-stdlib-queries.md ├── 2023-03-06-A13-2-2-message.md ├── 2023-03-06-better-modeling-of-stdatomic.md ├── 2023-03-07-20-12-perf.md ├── 2023-03-08-identifier-performance.md ├── 2023-03-09-changed-alert-messages.md ├── 2023-03-13-ctype-improvements.md ├── 2023-03-13-fp-a16-0-1.md ├── 2023-03-13-fp-dcl51-cpp.md ├── 2023-03-14-fio42-c-fix-logic-error.md ├── 2023-03-14-fp-a2-10-1.md ├── 2023-03-15-fix-reported-fp-for-A15-4-4.md ├── 2023-03-15-fix-reported-fp-for-A2-7-3.md ├── 2023-03-16-essential-types-performance.md ├── 2023-03-16-fp-a5-1-1.md ├── 2023-03-20-constant-integer-expression-wrap-casted.md ├── 2023-03-26-nested-switch-case.md ├── 2023-03-27-integer-overflow.md ├── 2023-04-24-fix-compatibility-issues-with-qnx.md ├── 2023-04-28-a14-7-2.md ├── 2023-04-28-dcl56-cpp-perf.md ├── 2023-05-02-func-c-style.md ├── 2023-05-02-single-reserved-prefix-generated.md ├── 2023-05-22-pass-compiler-tests-qcc.md ├── 2023-06-28-unused-local-function-use-cases.md ├── 2023-07-04-remove-compiler-generated-vars.md ├── 2023-07-11-lambda-expr-without-param-list.md ├── 2023-07-26-unused-local-variable.md ├── 2023-07-28-rule-11-4-improvements.md ├── 2023-07-30-update-to-2.11.6.md ├── 2023-07-5-fix-suppression-ids.md ├── 2023-08-02-a8-4-13-false-positives.md ├── 2023-08-02-smart-pointers.md ├── 2023-08-03-string-replace.md ├── 2023-08-04-a15-5-1-noexcept.md ├── 2023-08-16-update-to-2.12.7.md ├── 2023-08-30-a15-2-2-no-zero-paths.md ├── 2023-09-28-a7-3-1-updates.md ├── 2023-10-04-aggregate-literals-from-variadic-templates.md ├── 2023-10-04-m5-0-20-exclude-pointer-bitwise.md ├── 2023-10-10-add-certification-kit.md ├── 2023-10-24-a7-1-5-non-fundamental.md ├── 2023-10-25-a0-1-1.md ├── 2023-10-26-a15-4-4-noexcept.md ├── 2023-11-03-identifier-hiding-improvements.md ├── 2023-11-05-m6-5-5-const-refs.md ├── 2023-11-07-use-misra-underlying-type.md ├── 2023-11-22-remove-parameters-a7-1-1.md ├── 2023-11-24-a2-7-3-remove-function-scope.md ├── 2023-12-05-a7-2-1-typo.md ├── 2023-12-06-m16-1-1-perf.md ├── 2023-12-07-fix-deviations.md ├── 2024-01-12-fix-reported-fp-a3-9-1.md ├── 2024-01-14-m5-3-3-exclude-binary.md ├── 2024-01-16-m5-2-10-arith-only.md ├── 2024-01-17-a4-7-1-exclude-pointers.md ├── 2024-01-17-fix-reported-fp-for-a2-3-1.md ├── 2024-01-18-fix-reported-fp-for-rule-7-3.md ├── 2024-01-24-throwing-functions-exclude-noexcept.md ├── 2024-01-25-exclusion-m9-3-3.md ├── 2024-01-25-fix-reported-fp-for-a8-4-7.md ├── 2024-01-26-exclusion-a5-0-2.md ├── 2024-01-30-exclusion-a13-3-1.md ├── 2024-01-30-fix-fp-for-a4-7-1.md ├── 2024-01-30-fix-fp-for-a8-4-8.md ├── 2024-01-30-m0-3-2.md ├── 2024-01-31-exclusion-a16-0-1.md ├── 2024-01-31-fix-fp-a4-5-1.md ├── 2024-01-31-fix-fp-a7-1-2.md ├── 2024-01-31-fix-fp-m9-3-3.md ├── 2024-02-01-fix-fp-reported-for-a7-1-1.md ├── 2024-02-12-exclusion-A2-10-4.md ├── 2024-02-12-improve-a18-0-1.md ├── 2024-02-13-fix-fn-M7-3-6.md ├── 2024-02-13-fix-fp-a15-4-4.md ├── 2024-02-14-fix-fp-m0-1-4.md ├── 2024-02-15-fix-fp-m0-1-3.md ├── 2024-02-16-fix-fps-a5-1-1.md ├── 2024-02-21-fix-reported-fp-a4-7-1.md ├── 2024-02-22-fix-fp-a5-0-2-and-change-alert-m5-3-1.md ├── 2024-02-26-exclusion-M5-14-1.md ├── 2024-02-27-identifier-hidden.md ├── 2024-03-01-fix-fp-a12-4-1-and-a12-8-6.md ├── 2024-03-04-fix-fp-a16-2-2.md ├── 2024-03-04-improve-a8-4-7.md ├── 2024-03-19-change-alert-a3-3-1.md ├── 2024-03-22-fix-fp-89-a8-4-7.md ├── 2024-03-22-fix-fp-ctr55-cpp.md ├── 2024-04-12-fix-fp-m9-3-3.md ├── 2024-04-22-improve-a13-2-2.md ├── 2024-04-23-fix-fp-193.md ├── 2024-04-26-fix-fp-rule-6-1.md ├── 2024-05-06-fix-fn-31-STR32C.md ├── 2024-05-21-identifier-hidden.md ├── 2024-05-22-fix-fp-rule-A18-5-8.md ├── 2024-06-03-a3-1-5-trivial-defs.md ├── 2024-06-03-constexpr-variable.md ├── 2024-06-07-m0-1-3-uninstantiated-templates.md ├── 2024-06-11-fix-fp-376-M-0-1-2.md ├── 2024-06-18-fix-fp-614-A3-9-1.md ├── 2024-06-18-fix-fp-616-M9-3-3.md ├── 2024-06-21-misra-cpp-2023-support.md ├── 2024-07-03-consider-anonymous-struct.md ├── 2024-07-03-fix-fp-611-A3-1-5.md ├── 2024-07-05-fix-fp-576-STR34-C.md ├── 2024-07-05-fix-fp-621-A7-1-1.md ├── 2024-07-05-fix-fp628-630.md ├── 2024-07-10-fix-fn-119-m0-2-1.md ├── 2024-07-11-fix-fp-406.md ├── 2024-07-12-support-doxygen-comment-groups.md ├── 2024-07-16-fix-fp-606-A2-7-3.md ├── 2024-07-23-fix-fp-646-M0-1-10.md ├── 2024-07-30-fix-fp-650-PRE32-C.md ├── 2024-08-06-fix-fp-658-M0-1-3.md ├── 2024-09-11-rule-12-2-improvements.md ├── 2024-09-16-rule-5-8-consider-linkage.md ├── 2024-09-17-essential-types-unary.md ├── 2024-09-17-fix-fp-678-m0-1-9.md ├── 2024-09-17-rule-8-3-linker-aware.md ├── 2024-09-18-handle-warning-suppresion-flags ├── 2024-09-19-c-extensions.md ├── 2024-09-19-fix-fp-665-M3-4-1.md ├── 2024-09-20-fix-7-2-fps.md ├── 2024-09-25-dead-code-improvements.md ├── 2024-09-28-improved-noreturn-rules.md ├── 2024-10-02-c-perf-issues.md ├── 2024-10-02-fix-fp-711-M0-1-10.md ├── 2024-10-03-misra-c-query-suites.md ├── 2024-10-04-fix-constexpr-arr-size-fp-a0-1-1.md ├── 2024-10-08-upgrade-to-2.16.6.md ├── 2024-10-10-rule-18-8-vla-rule-changes-amendment4.md ├── 2024-10-11-specifiers-rule-11-misra-c.md ├── 2024-10-15-a7-1-3-multi-refs.md ├── 2024-10-15-fix-fp-739-a14-5-2.md ├── 2024-10-15-lits-and-constants-10-4.md ├── 2024-10-17-a5-2-6-no-ambiguity.md ├── 2024-10-17-suffixes.md ├── 2024-10-18-init-base-class-deleted.md ├── 2024-10-20-8-13-fixes.md ├── 2024-10-21-rule-1-3-main.md ├── 2024-10-21-rule-5-4-conditional.md ├── 2024-10-22-fix-fp-m6-5-3.md ├── 2024-10-22-rule-2-5.md ├── 2024-10-22-update-release-artifacts.md ├── 2024-10-23-cvalue-widening.md ├── 2024-10-24-compatible-types.md ├── 2024-10-28-essential-types-bitwise.md ├── 2024-10-30-fix-issue-629.md ├── 2024-11-11-fix-fp-789.md ├── 2024-11-13-fix-fp-796.md ├── 2024-11-27-c-object-refactor.md ├── 2024-11-27-raii-concurrency-analysis-perf.md ├── 2024-11-27-resource-leak-analysis-refactor.md ├── 2024-12-05-upgrade-to-2.18.4.md ├── 2024-12-08-identifier-hiding.md ├── 2024-12-10-a15-4-4-deviations.md ├── 2024-12-10-refactor-concurrency-library.md ├── 2024-12-10-udpate-a7-1-1.md ├── 2024-12-12-complex-floating-essential-types.md ├── 2024-12-12-lessen-emergent-language-feature-restrictions.md ├── 2024-12-13-implement-misra-c-amendment4-rule-amendments.md ├── 2024-12-17-fix-fp-824-a15-4-4 ├── 2024-12-18-fix-fp-540-a3-9-1.md ├── 2024-9-20-a1-1-2-improvements.md ├── 2025-01-09-return-reference.md ├── 2025-01-21-a7-1-2-remove-function-constexpr.md ├── 2025-01-29-implement-misra-clarifications-change-categories.md ├── 2025-02-06-a3-1-5-audit.md ├── 2025-02-06-m5-3-1-exclude-unknown-type.md ├── 2025-02-10-improve-perf-a5-1-9.md ├── 2025-02-13-deviations.md ├── 2025-02-13-fix-issue-718.md ├── 2025-02-17-iofstream-performance.md ├── 2025-02-20-rule-22-16-update-aliasing-for-performance.md ├── 2025-02-25-move-type-related-libraries.md ├── 2025-02-25-update-macro-deduplication-library.md ├── 2025-03-04-essential-types-with-explicit-conversions.md ├── 2025-03-04-more-accurate-type-comparisons.md ├── 2025-03-09-rule-8-7.md ├── 2025-03-11-various-misra-amendments.md ├── 2025-03-26-deviations-suppression.md ├── 2025-03-27-detect-precision-limit-in-trig-functions.md ├── 2025-03-31-allow-atomics-threads-and-threadlocals-in-misra-c.md ├── 2025-04-08-address-cross-compiler-compatibility-in-misra-2023.md ├── 2025-04-09-new-cert-c-recommendation-query-suite.md ├── 2025-04-14-update-infinity-nan-detection.md ├── 2025-04-25-improve-type-comparison-performance.md ├── 2025-05-01-cert-extra-props.md ├── 2025-05-15-misra-c-2023.md ├── 2025-06-06-same-source-performance.md └── 2025-1-04-misra-c-technical-corrigenda-2.md ├── cpp ├── autosar │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codeql-suites │ │ │ ├── autosar-advisory.qls │ │ │ ├── autosar-audit.qls │ │ │ ├── autosar-default.qls │ │ │ ├── autosar-required.qls │ │ │ └── autosar-single-translation-unit.qls │ │ ├── codingstandards │ │ │ └── cpp │ │ │ │ ├── CommonTypes.qll │ │ │ │ ├── HardwareOrProtocolInterface.qll │ │ │ │ ├── ImplicitHardwareOrProtocolInterfaceClass.qll │ │ │ │ ├── Typehelpers.qll │ │ │ │ ├── autosar.qll │ │ │ │ └── autosar │ │ │ │ ├── CheckedException.qll │ │ │ │ └── Customizations.qll │ │ ├── qlpack.yml │ │ └── rules │ │ │ ├── A0-1-1 │ │ │ └── UselessAssignment.ql │ │ │ ├── A0-1-2 │ │ │ └── UnusedReturnValue.ql │ │ │ ├── A0-1-3 │ │ │ └── UnusedLocalFunction.ql │ │ │ ├── A0-1-4 │ │ │ └── UnusedParameter.ql │ │ │ ├── A0-1-5 │ │ │ └── UnusedVirtualParameter.ql │ │ │ ├── A0-1-6 │ │ │ └── UnusedTypeDeclarations.ql │ │ │ ├── A0-4-1 │ │ │ └── FloatingPointImplementationShallComplyWithIeeeStandard.ql │ │ │ ├── A0-4-2 │ │ │ └── TypeLongDoubleUsed.ql │ │ │ ├── A0-4-3 │ │ │ └── CompilerImplementationShallComplyWithCPP14Standard.ql │ │ │ ├── A0-4-4 │ │ │ └── UncheckedRangeDomainPoleErrors.ql │ │ │ ├── A1-1-1 │ │ │ ├── CStandardLibraryHeadersAreDeprecated.ql │ │ │ ├── DynamicExceptionsAreDeprecated.ql │ │ │ ├── ImplicitCopyAssignmentOperatorIsDeprecated.ql │ │ │ ├── ImplicitCopyConstructorIsDeprecated.ql │ │ │ ├── ImplicitMethods.qll │ │ │ ├── IncrementOperatorWithBoolOperandIsDeprecated.ql │ │ │ ├── RegisterKeywordIsDeprecated.ql │ │ │ └── StrstreamTypesAreDeprecated.ql │ │ │ ├── A1-1-2 │ │ │ └── CompilerWarningLevelNotInCompliance.ql │ │ │ ├── A1-1-3 │ │ │ └── UncompliantOptimizationOptionMustBeDisabledInCompiler.ql │ │ │ ├── A10-0-1 │ │ │ └── PublicInheritanceNotUsedForIsARelationship.ql │ │ │ ├── A10-0-2 │ │ │ └── NonPublicInheritanceNotUsedForHasARelationship.ql │ │ │ ├── A10-1-1 │ │ │ └── ClassDerivedFromMoreThanOneNonInterfaceBaseClass.ql │ │ │ ├── A10-2-1 │ │ │ └── NonVirtualPublicOrProtectedFunctionsRedefined.ql │ │ │ ├── A10-3-1 │ │ │ └── VirtualFunctionsShallContainOneSpecifier.ql │ │ │ ├── A10-3-2 │ │ │ └── OverridingFunctionNotDeclaredOverrideOrFinal.ql │ │ │ ├── A10-3-3 │ │ │ └── VirtualFunctionsIntroducedInFinalClass.ql │ │ │ ├── A10-3-5 │ │ │ └── UserDefinedAssignmentOperatorVirtual.ql │ │ │ ├── A10-4-1 │ │ │ └── HierarchiesShouldBeBasedOnInterfaceClasses.ql │ │ │ ├── A11-0-1 │ │ │ └── NonPodTypeShouldBeDefinedAsClass.ql │ │ │ ├── A11-0-2 │ │ │ ├── NonUnionStruct.qll │ │ │ ├── TypeDefinedAsStructHasNoMethods.ql │ │ │ ├── TypeDefinedAsStructHasOnlyPublicDataMembers.ql │ │ │ ├── TypeDefinedAsStructIsDoesNotInheritFromStructOrClass.ql │ │ │ └── TypeDefinedAsStructIsNotBaseOfOtherClassOrStruct.ql │ │ │ ├── A11-3-1 │ │ │ └── FriendDeclarationsUsed.ql │ │ │ ├── A12-0-1 │ │ │ └── MissingSpecialMemberFunction.ql │ │ │ ├── A12-0-2 │ │ │ └── OperationsAssumingMemoryLayoutPerformedOnObjects.ql │ │ │ ├── A12-1-1 │ │ │ └── ExplicitConstructorBaseClassInitialization.ql │ │ │ ├── A12-1-2 │ │ │ └── NonStaticMemberMultipleInit.ql │ │ │ ├── A12-1-3 │ │ │ └── MissedNSDMIOpportunity.ql │ │ │ ├── A12-1-4 │ │ │ └── ConstructorWithFundamentalArgMissingExplicit.ql │ │ │ ├── A12-1-5 │ │ │ ├── AvoidDuplicationInConstructors.ql │ │ │ └── InitializerHashCons.qll │ │ │ ├── A12-1-6 │ │ │ └── UseInheritingConstructors.ql │ │ │ ├── A12-4-1 │ │ │ └── DestructorOfABaseClassNotPublicVirtual.ql │ │ │ ├── A12-4-2 │ │ │ └── NonVirtualPublicDestructorInNonFinalClass.ql │ │ │ ├── A12-6-1 │ │ │ └── ClassDataMembersInitializationCondition.ql │ │ │ ├── A12-7-1 │ │ │ └── RedundantMemberFunctionsShouldBeDefaultedOrLeftUndefined.ql │ │ │ ├── A12-8-1 │ │ │ ├── CopyConstructorShallOnlyCopyObject.ql │ │ │ └── MoveConstructorShallOnlyMoveObject.ql │ │ │ ├── A12-8-2 │ │ │ └── UserDefinedCopyAndMoveUseNoThrowSwapFunction.ql │ │ │ ├── A12-8-3 │ │ │ └── MovedFromObjectReadAccessed.ql │ │ │ ├── A12-8-4 │ │ │ └── MoveConstructorUsesCopySemantics.ql │ │ │ ├── A12-8-5 │ │ │ └── CopyAssignmentAndAMoveHandleSelfAssignment.ql │ │ │ ├── A12-8-6 │ │ │ └── CopyAndMoveNotDeclaredProtected.ql │ │ │ ├── A12-8-7 │ │ │ └── OperatorsShouldBeDeclaredWithTheRefQualifier.ql │ │ │ ├── A13-1-2 │ │ │ └── UserDefinedLiteralOperatorSuffixViolation.ql │ │ │ ├── A13-1-3 │ │ │ ├── UserDefinedLiteralsOperatorsShallNotHaveSideEffects.ql │ │ │ └── UserDefinedLiteralsOperatorsShallOnlyPerformConversionOfPassedParameters.ql │ │ │ ├── A13-2-1 │ │ │ └── AssignmentOperatorReturnThis.ql │ │ │ ├── A13-2-2 │ │ │ └── BinaryOperatorAndBitwiseOperatorReturnAPrvalue.ql │ │ │ ├── A13-2-3 │ │ │ └── RelationalOperatorShallReturnABooleanValue.ql │ │ │ ├── A13-3-1 │ │ │ └── FunctionThatContainsForwardingReferenceAsItsArgumentOverloaded.ql │ │ │ ├── A13-5-1 │ │ │ └── MissingConstOperatorSubscript.ql │ │ │ ├── A13-5-2 │ │ │ └── UserDefinedConversionOperatorsNotDefinedExplicit.ql │ │ │ ├── A13-5-3 │ │ │ └── UserDefinedConversionOperatorsShouldNotBeUsed.ql │ │ │ ├── A13-5-4 │ │ │ └── OppositeOperatorsNotDefinedInTermsOfOther.ql │ │ │ ├── A13-5-5 │ │ │ └── ComparisonOperatorsNotNonMemberFunctionsWithIdenticalParameterTypesAndNoexcept.ql │ │ │ ├── A13-6-1 │ │ │ └── UseCorrectIntervalForDigitSequencesSeparators.ql │ │ │ ├── A14-1-1 │ │ │ └── TemplateShouldCheckArg.ql │ │ │ ├── A14-5-1 │ │ │ └── TemplateConstructorOverloadResolution.ql │ │ │ ├── A14-5-2 │ │ │ └── NonTemplateMemberDefinedInTemplate.ql │ │ │ ├── A14-5-3 │ │ │ └── NonMemberGenericOperatorCondition.ql │ │ │ ├── A14-7-1 │ │ │ └── TypeUsedAsTemplateArgShallProvideAllMembers.ql │ │ │ ├── A14-7-2 │ │ │ └── TemplateSpecializationNotDeclaredInTheSameFile.ql │ │ │ ├── A14-8-2 │ │ │ └── ExplicitSpecializationsOfFunctionTemplatesUsed.ql │ │ │ ├── A15-0-1 │ │ │ └── ExceptionThrownOnCompletion.ql │ │ │ ├── A15-0-2 │ │ │ └── ExceptionSafetyGuaranteesNotProvided.ql │ │ │ ├── A15-0-3 │ │ │ └── ExceptionSafetyGuaranteeOfACalledFunction.ql │ │ │ ├── A15-0-4 │ │ │ └── RecoverableUncheckedExceptions.ql │ │ │ ├── A15-0-5 │ │ │ └── UnrecoverableCheckedExceptions.ql │ │ │ ├── A15-1-1 │ │ │ └── OnlyThrowStdExceptionDerivedTypes.ql │ │ │ ├── A15-1-2 │ │ │ └── PointerExceptionObject.ql │ │ │ ├── A15-1-3 │ │ │ └── ThrownExceptionsShouldBeUnique.ql │ │ │ ├── A15-1-4 │ │ │ └── ValidResourcesStateBeforeThrow.ql │ │ │ ├── A15-1-5 │ │ │ └── ExceptionsThrownAcrossExecutionBoundaries.ql │ │ │ ├── A15-2-1 │ │ │ └── ConstructorsThatAreNotNoexceptInvokedBeforeProgramStartup.ql │ │ │ ├── A15-2-2 │ │ │ └── ConstructorErrorLeavesObjectInInvalidState.ql │ │ │ ├── A15-3-3 │ │ │ └── MissingCatchHandlerInMain.ql │ │ │ ├── A15-3-4 │ │ │ └── CatchAllEllipsisUsedInNonMain.ql │ │ │ ├── A15-3-5 │ │ │ └── ClassTypeExceptionNotCaughtByReference.ql │ │ │ ├── A15-4-1 │ │ │ └── UseOfDynamicExceptionSpecification.ql │ │ │ ├── A15-4-2 │ │ │ └── NoExceptFunctionThrows.ql │ │ │ ├── A15-4-3 │ │ │ ├── IncompatibleNoexceptSpecification.ql │ │ │ ├── IncompatibleNoexceptSpecificationForOverriders.ql │ │ │ ├── IncompatibleNoexceptSpecifications.qll │ │ │ ├── InconsistentNoexceptFalseSpecification.ql │ │ │ └── InconsistentNoexceptTrueSpecification.ql │ │ │ ├── A15-4-4 │ │ │ └── MissingNoExcept.ql │ │ │ ├── A15-4-5 │ │ │ ├── InconsistentCheckedExceptions.ql │ │ │ └── MissingCheckedExceptions.ql │ │ │ ├── A15-5-1 │ │ │ ├── SpecialFunctionExitsWithException.ql │ │ │ └── SpecialFunctionMissingNoExceptSpecification.ql │ │ │ ├── A15-5-2 │ │ │ └── ExplicitAbruptTerminationAutosar.ql │ │ │ ├── A15-5-3 │ │ │ ├── ConditionVariablePostConditionFailedAutosar.ql │ │ │ ├── ExitHandlerThrowsExceptionAutosar.ql │ │ │ ├── JoinableThreadCopiedOrDestroyedAutosar.ql │ │ │ └── RethrowNestedWithoutCaptureAutosar.ql │ │ │ ├── A16-0-1 │ │ │ └── PreProcessorShallOnlyBeUsedForCertainDirectivesPatterns.ql │ │ │ ├── A16-2-1 │ │ │ └── CharactersOccurInHeaderFileNameOrInIncludeDirective.ql │ │ │ ├── A16-2-2 │ │ │ ├── HeaderQueries.qll │ │ │ ├── PreprocBlock.qll │ │ │ ├── TranslationUnit.qll │ │ │ └── UnusedIncludeDirectives.ql │ │ │ ├── A16-6-1 │ │ │ └── ErrorDirectiveUsed.ql │ │ │ ├── A16-7-1 │ │ │ └── PragmaDirectiveUsed.ql │ │ │ ├── A17-0-1 │ │ │ └── ReservedIdentifiersMacrosAndFunctionsAreDefinedRedefinedOrUndefined.ql │ │ │ ├── A17-1-1 │ │ │ └── CStandardLibraryFunctionCalls.ql │ │ │ ├── A17-6-1 │ │ │ └── NonStandardEntitiesInStandardNamespaces.ql │ │ │ ├── A18-0-1 │ │ │ └── CLibraryFacilitiesNotAccessedThroughCPPLibraryHeaders.ql │ │ │ ├── A18-0-2 │ │ │ ├── StringNumberConversionMissingErrorCheck.ql │ │ │ └── UseOfUnsafeCStringToNumberConversion.ql │ │ │ ├── A18-0-3 │ │ │ ├── LocaleFunctionsUsed.ql │ │ │ ├── LocaleMacrosUsed.ql │ │ │ └── LocaleTypeLConvUsed.ql │ │ │ ├── A18-1-1 │ │ │ └── CStyleArraysUsed.ql │ │ │ ├── A18-1-2 │ │ │ └── VectorboolSpecializationUsed.ql │ │ │ ├── A18-1-3 │ │ │ └── AutoPtrTypeUsed.ql │ │ │ ├── A18-1-4 │ │ │ └── PointerToAnElementOfAnArrayPassedToASmartPointer.ql │ │ │ ├── A18-1-6 │ │ │ └── HashSpecializationsHaveANoexceptFunctionCallOperator.ql │ │ │ ├── A18-5-1 │ │ │ └── FunctionsMallocCallocReallocAndFreeUsed.ql │ │ │ ├── A18-5-10 │ │ │ ├── PlacementNewInsufficientStorageAutosar.ql │ │ │ └── PlacementNewNotProperlyAlignedAutosar.ql │ │ │ ├── A18-5-11 │ │ │ ├── OperatorNewAndOperatorDeleteNotDefinedGlobally.ql │ │ │ └── OperatorNewAndOperatorDeleteNotDefinedLocally.ql │ │ │ ├── A18-5-2 │ │ │ ├── DoNotUseNonPlacementDelete.ql │ │ │ └── DoNotUseNonPlacementNew.ql │ │ │ ├── A18-5-3 │ │ │ ├── NewArrayDeleteMismatch.ql │ │ │ └── NewDeleteArrayMismatch.ql │ │ │ ├── A18-5-4 │ │ │ ├── GlobalSizedOperatorDeleteNotDefined.ql │ │ │ └── GlobalUnsizedOperatorDeleteNotDefined.ql │ │ │ ├── A18-5-5 │ │ │ └── MemoryManagementFunctionInvariants.ql │ │ │ ├── A18-5-6 │ │ │ └── DynamicMemoryManagementFailureMode.ql │ │ │ ├── A18-5-8 │ │ │ └── UnnecessaryUseOfDynamicStorage.ql │ │ │ ├── A18-5-9 │ │ │ ├── OperatorDeleteMissingPartnerAutosar.ql │ │ │ ├── ThrowingNoThrowOperatorNewDeleteAutosar.ql │ │ │ ├── ThrowingOperatorNewReturnsNullAutosar.ql │ │ │ └── ThrowingOperatorNewThrowsInvalidExceptionAutosar.ql │ │ │ ├── A18-9-1 │ │ │ └── BindUsed.ql │ │ │ ├── A18-9-2 │ │ │ └── ForwardingValuesToOtherFunctions.ql │ │ │ ├── A18-9-3 │ │ │ └── MoveUsedOnConstObjects.ql │ │ │ ├── A18-9-4 │ │ │ └── ArgumentToForwardSubsequentlyUsed.ql │ │ │ ├── A2-10-1 │ │ │ └── IdentifierHiding.ql │ │ │ ├── A2-10-4 │ │ │ ├── IdentifierNameOfStaticFunctionReusedInNamespace.ql │ │ │ └── IdentifierNameOfStaticNonMemberObjectReusedInNamespace.ql │ │ │ ├── A2-10-5 │ │ │ ├── IdentifierNameOfANonMemberObjectWithExternalOrInternalLinkageIsReused.ql │ │ │ └── IdentifierNameOfAStaticFunctionIsReused.ql │ │ │ ├── A2-10-6 │ │ │ ├── ClassOrEnum.qll │ │ │ ├── ClassOrEnumerationNameHiddenByAFunctionInTheSameScope.ql │ │ │ ├── ClassOrEnumerationNameHiddenByAVariableInTheSameScope.ql │ │ │ └── ClassOrEnumerationNameHiddenByAnEnumeratorInTheSameScope.ql │ │ │ ├── A2-11-1 │ │ │ └── VolatileKeywordUsed.ql │ │ │ ├── A2-13-1 │ │ │ └── EscapeSequenceOutsideISO.ql │ │ │ ├── A2-13-3 │ │ │ └── TypeWcharTUsed.ql │ │ │ ├── A2-13-4 │ │ │ └── StringLiteralsAssignedToNonConstantPointers.ql │ │ │ ├── A2-13-5 │ │ │ └── HexadecimalConstantsShouldBeUpperCase.ql │ │ │ ├── A2-13-6 │ │ │ └── UniversalCharacterNamesUsedOutsideCharacterOrStringLiterals.ql │ │ │ ├── A2-3-1 │ │ │ ├── CharacterOutsideTheLanguageStandardBasicSourceCharacterSetUsedInTheSourceCode.ql │ │ │ ├── InvalidCharacterInComment.ql │ │ │ └── InvalidCharacterInStringLiteral.ql │ │ │ ├── A2-7-1 │ │ │ └── SingleLineCommentEndsWithSlash.ql │ │ │ ├── A2-7-2 │ │ │ └── SectionsOfCodeCommentedOut.ql │ │ │ ├── A2-7-3 │ │ │ └── UndocumentedUserDefinedType.ql │ │ │ ├── A20-8-1 │ │ │ └── OwnedPointerValueStoredInUnrelatedSmartPointerAsar.ql │ │ │ ├── A20-8-2 │ │ │ └── UniquePtrNotUsedToRepresentExclusiveOwnership.ql │ │ │ ├── A20-8-3 │ │ │ └── SharedPtrNotUsedToRepresentSharedOwnership.ql │ │ │ ├── A20-8-4 │ │ │ └── SharedPointerUsedWithNoOwnershipSharing.ql │ │ │ ├── A20-8-5 │ │ │ └── MakeUniqueNotUsedToConstructObjectOwnedByUniquePtr.ql │ │ │ ├── A20-8-6 │ │ │ └── MakeSharedNotUsedToConstructObjectOwnedBySharedPtr.ql │ │ │ ├── A20-8-7 │ │ │ └── WeakPtrNotUsedToRepresentTemporarySharedOwnership.ql │ │ │ ├── A21-8-1 │ │ │ └── SignedValPassedToChar.ql │ │ │ ├── A23-0-1 │ │ │ └── IteratorImplicitlyConvertedToConstIterator.ql │ │ │ ├── A23-0-2 │ │ │ └── ValidContainerElementAccess.ql │ │ │ ├── A25-1-1 │ │ │ └── StateRelatedToFunctionObjectIdentityShallNotBeCopied.ql │ │ │ ├── A25-4-1 │ │ │ └── OrderingPredicatesInvariants.ql │ │ │ ├── A26-5-1 │ │ │ └── PseudorandomNumbersGeneratedUsingRand.ql │ │ │ ├── A26-5-2 │ │ │ └── RandomNumberEnginesDefaultInitialized.ql │ │ │ ├── A27-0-1 │ │ │ └── InputsFromIndependentComponentsNotValidated.ql │ │ │ ├── A27-0-2 │ │ │ ├── BasicStringMayNotBeNullTerminatedAutosar.ql │ │ │ └── OperationMayNotNullTerminateCStyleStringAutosar.ql │ │ │ ├── A27-0-3 │ │ │ └── InterleavedInputOutputWithoutFlush.ql │ │ │ ├── A27-0-4 │ │ │ └── CStyleStringsUsed.ql │ │ │ ├── A3-1-1 │ │ │ └── ViolationsOfOneDefinitionRule.ql │ │ │ ├── A3-1-2 │ │ │ └── HeaderFileExpectedFileNameExtension.ql │ │ │ ├── A3-1-3 │ │ │ └── FileNameExtensionCpp.ql │ │ │ ├── A3-1-4 │ │ │ └── ExternalLinkageArrayWithoutExplicitSize.ql │ │ │ ├── A3-1-5 │ │ │ └── NonTrivialNonTemplateFunctionDefinedInsideClassDefinition.ql │ │ │ ├── A3-1-6 │ │ │ └── TrivialAccessorAndMutatorFunctionsNotInlined.ql │ │ │ ├── A3-3-1 │ │ │ └── ExternalLinkageNotDeclaredInHeaderFile.ql │ │ │ ├── A3-3-2 │ │ │ └── StaticOrThreadLocalObjectsNonConstantInit.ql │ │ │ ├── A3-8-1 │ │ │ ├── ObjectAccessedAfterLifetimeAutosar.ql │ │ │ └── ObjectAccessedBeforeLifetimeAutosar.ql │ │ │ ├── A3-9-1 │ │ │ ├── VariableWidthIntegerTypesUsed.ql │ │ │ └── VariableWidthPlainCharTypeUsed.ql │ │ │ ├── A4-10-1 │ │ │ └── NullPointerConstantNotNullptr.ql │ │ │ ├── A4-5-1 │ │ │ └── EnumUsedInArithmeticContexts.ql │ │ │ ├── A4-7-1 │ │ │ ├── IntMultToLong.ql │ │ │ └── IntegerExpressionLeadToDataLoss.ql │ │ │ ├── A5-0-1 │ │ │ └── ExpressionShouldNotRelyOnOrderOfEvaluation.ql │ │ │ ├── A5-0-2 │ │ │ ├── NonBooleanIfCondition.ql │ │ │ └── NonBooleanIterationCondition.ql │ │ │ ├── A5-0-3 │ │ │ └── DeclarationContainLessThanTwoLevelsOfIndirection.ql │ │ │ ├── A5-0-4 │ │ │ └── PointerArithmeticUsedWithPointersToNonFinalClasses.ql │ │ │ ├── A5-1-1 │ │ │ └── LiteralValueUsedOutsideTypeInit.ql │ │ │ ├── A5-1-2 │ │ │ └── ImplicitLambdaCapture.ql │ │ │ ├── A5-1-3 │ │ │ └── LambdaExpressionWithoutParameterList.ql │ │ │ ├── A5-1-4 │ │ │ ├── MovedLambdaObjectOutlivesCaptureByReference.ql │ │ │ └── ReturnedLambdaObjectOutlivesCaptureByReference.ql │ │ │ ├── A5-1-6 │ │ │ └── LambdaWithImplicitNonVoidReturnType.ql │ │ │ ├── A5-1-7 │ │ │ ├── LambdaPassedToDecltype.ql │ │ │ └── LambdaPassedToTypeid.ql │ │ │ ├── A5-1-8 │ │ │ └── LambdaExpressionInLambdaExpression.ql │ │ │ ├── A5-1-9 │ │ │ ├── IdenticalLambdaExpressions.ql │ │ │ └── LambdaEquivalence.qll │ │ │ ├── A5-10-1 │ │ │ └── PointerToMemberVirtualFunctionWithNullPointerConstant.ql │ │ │ ├── A5-16-1 │ │ │ └── TernaryConditionalOperatorUsedAsSubExpression.ql │ │ │ ├── A5-2-1 │ │ │ └── DynamicCastShouldNotBeUsed.ql │ │ │ ├── A5-2-2 │ │ │ └── TraditionalCStyleCastsUsed.ql │ │ │ ├── A5-2-3 │ │ │ └── RemoveConstOrVolatileQualificationAutosar.ql │ │ │ ├── A5-2-4 │ │ │ └── ReinterpretCastUsed.ql │ │ │ ├── A5-2-5 │ │ │ └── ContainerAccessWithoutRangeCheckAutosar.ql │ │ │ ├── A5-2-6 │ │ │ └── OperandsOfALogicalAndOrNotParenthesized.ql │ │ │ ├── A5-3-1 │ │ │ └── EvaluationOfTheOperandToTheTypeidOperatorContainSideEffects.ql │ │ │ ├── A5-3-2 │ │ │ └── NullPointersDereferenced.ql │ │ │ ├── A5-3-3 │ │ │ └── DeletingPointerToIncompleteType.ql │ │ │ ├── A5-5-1 │ │ │ ├── NullPointerToMemberAccessNonExistentClassMembers.ql │ │ │ ├── PointerToMemberAccessNonExistentClassMembers.ql │ │ │ └── UninitializedStaticPointerToMemberUse.ql │ │ │ ├── A5-6-1 │ │ │ └── DivisorEqualToZero.ql │ │ │ ├── A6-2-1 │ │ │ ├── CopyOperatorShallOnlyCopyObject.ql │ │ │ └── MoveOperatorShallOnlyMoveObject.ql │ │ │ ├── A6-2-2 │ │ │ └── ExplicitConstructionOfUnnamedTemporary.ql │ │ │ ├── A6-4-1 │ │ │ └── SwitchLessThanTwoCases.ql │ │ │ ├── A6-5-1 │ │ │ └── UnusedLoopCounterForContainerIteration.ql │ │ │ ├── A6-5-2 │ │ │ ├── FloatingPointLoopCounter.ql │ │ │ └── MultipleLoopCounters.ql │ │ │ ├── A6-5-3 │ │ │ └── DoStatementsShouldNotBeUsed.ql │ │ │ ├── A6-5-4 │ │ │ ├── ForLoopInitializesNonLoopCounter.ql │ │ │ └── ForLoopModifiesNonLoopCounter.ql │ │ │ ├── A6-6-1 │ │ │ └── GotoStatementUsed.ql │ │ │ ├── A7-1-1 │ │ │ └── DeclarationUnmodifiedObjectMissingConstSpecifier.ql │ │ │ ├── A7-1-2 │ │ │ └── VariableMissingConstexpr.ql │ │ │ ├── A7-1-3 │ │ │ └── CvQualifiersNotPlacedOnTheRightHandSide.ql │ │ │ ├── A7-1-4 │ │ │ └── RegisterKeywordUsed.ql │ │ │ ├── A7-1-5 │ │ │ ├── AutoSpecifierNotUsedAppropriatelyInFunctionDefinition.ql │ │ │ └── AutoSpecifierNotUsedAppropriatelyInVariableDefinition.ql │ │ │ ├── A7-1-6 │ │ │ └── TypedefSpecifierUsed.ql │ │ │ ├── A7-1-7 │ │ │ └── IdentifierDeclarationAndInitializationNotOnSeparateLines.ql │ │ │ ├── A7-1-9 │ │ │ └── ClassStructEnumDeclaredInDefinition.ql │ │ │ ├── A7-2-1 │ │ │ └── NonEnumeratorEnumValue.ql │ │ │ ├── A7-2-2 │ │ │ └── EnumerationUnderlyingBaseTypeNotExplicitlyDefined.ql │ │ │ ├── A7-2-3 │ │ │ └── EnumerationsNotDeclaredAsScopedEnumClasses.ql │ │ │ ├── A7-2-4 │ │ │ └── NoneFirstOrAllEnumeratorsNotInitialized.ql │ │ │ ├── A7-2-5 │ │ │ ├── IntegerUsedForEnum.ql │ │ │ └── UseOfEnumForRelatedConstants.ql │ │ │ ├── A7-3-1 │ │ │ ├── DefinitionNotConsideredForUnqualifiedLookup.ql │ │ │ ├── HiddenInheritedNonOverridableMemberFunction.ql │ │ │ └── HiddenInheritedOverridableMemberFunction.ql │ │ │ ├── A7-4-1 │ │ │ └── AsmDeclarationUsed.ql │ │ │ ├── A7-5-1 │ │ │ └── InvalidFunctionReturnType.ql │ │ │ ├── A7-5-2 │ │ │ └── RecursiveFunctions.ql │ │ │ ├── A7-6-1 │ │ │ └── FunctionNoReturnAttributeConditionAutosar.ql │ │ │ ├── A8-4-1 │ │ │ └── FunctionsDefinedUsingTheEllipsisNotation.ql │ │ │ ├── A8-4-10 │ │ │ └── ParameterNotPassedByReference.ql │ │ │ ├── A8-4-11 │ │ │ └── SmartPointerAsParameterWithoutLifetimeSemantics.ql │ │ │ ├── A8-4-12 │ │ │ └── UniquePtrPassedToFunctionWithImproperSemantics.ql │ │ │ ├── A8-4-13 │ │ │ └── SharedPtrPassedToFunctionWithImproperSemantics.ql │ │ │ ├── A8-4-2 │ │ │ └── NonVoidFunctionDoesNotReturnAutosar.ql │ │ │ ├── A8-4-4 │ │ │ └── FunctionReturnMultipleValueCondition.ql │ │ │ ├── A8-4-5 │ │ │ └── MoveFromConsumeParametersRvalRef.ql │ │ │ ├── A8-4-6 │ │ │ └── ForwardForwardingReferences.ql │ │ │ ├── A8-4-7 │ │ │ ├── InParametersForCheapToCopyTypesNotPassedByValue.ql │ │ │ ├── InParametersForNotCheapToCopyTypesNotPassedByReference.ql │ │ │ └── TriviallyCopyableSmallType.qll │ │ │ ├── A8-4-8 │ │ │ └── OutputParametersUsed.ql │ │ │ ├── A8-4-9 │ │ │ └── InOutParametersDeclaredAsTNotModified.ql │ │ │ ├── A8-5-0 │ │ │ └── MemoryNotInitializedBeforeItIsRead.ql │ │ │ ├── A8-5-1 │ │ │ └── InitializationListOutOfOrder.ql │ │ │ ├── A8-5-2 │ │ │ └── UseBracedVariableInitialization.ql │ │ │ ├── A8-5-3 │ │ │ └── AvoidAutoWithBracedInitialization.ql │ │ │ ├── A8-5-4 │ │ │ └── ConfusingUseOfInitializerListConstructors.ql │ │ │ ├── A9-3-1 │ │ │ └── ReturnsNonConstRawPointersOrReferencesToPrivateOrProtectedData.ql │ │ │ ├── A9-5-1 │ │ │ └── UnionsUsed.ql │ │ │ ├── A9-6-1 │ │ │ ├── DataTypesUsedForInterfacingWithHardwareOrProtocolsMustBeTrivialAndStandardLayout.ql │ │ │ └── DataTypesUsedForInterfacingWithHardwareOrProtocolsMustContainOnlyDefinedDataTypeSizes.ql │ │ │ ├── A9-6-2 │ │ │ ├── AuditPossibleHardwareInterfaceDueToBitFieldUsageInDataTypeDefinition.ql │ │ │ └── BitFieldsShallBeUsedOnlyWhenInterfacingToHardwareOrConformingToCommunicationProtocols.ql │ │ │ ├── M0-1-1 │ │ │ └── UnreachableCode.ql │ │ │ ├── M0-1-10 │ │ │ ├── UnusedFunction.ql │ │ │ └── UnusedSplMemberFunction.ql │ │ │ ├── M0-1-2 │ │ │ └── InfeasiblePath.ql │ │ │ ├── M0-1-3 │ │ │ ├── UnusedGlobalOrNamespaceVariable.ql │ │ │ ├── UnusedLocalVariable.ql │ │ │ └── UnusedMemberVariable.ql │ │ │ ├── M0-1-4 │ │ │ ├── SingleUseGlobalOrNamespacePODVariable.ql │ │ │ ├── SingleUseLocalPODVariable.ql │ │ │ ├── SingleUseMemberPODVariable.ql │ │ │ └── SingleUsePODVariable.qll │ │ │ ├── M0-1-8 │ │ │ └── FunctionsWithVoidReturnTypeShallHaveExternalSideEffects.ql │ │ │ ├── M0-1-9 │ │ │ └── DeadCode.ql │ │ │ ├── M0-2-1 │ │ │ ├── DoNotPassAliasedPointerToParam.ql │ │ │ └── ObjectAssignedToAnOverlappingObject.ql │ │ │ ├── M0-3-2 │ │ │ └── FunctionErroneousReturnValueNotTested.ql │ │ │ ├── M10-1-1 │ │ │ └── ClassesShouldNotBeDerivedFromVirtualBases.ql │ │ │ ├── M10-1-2 │ │ │ └── BaseClassCanBeVirtualOnlyInDiamondHierarchy.ql │ │ │ ├── M10-1-3 │ │ │ └── AccessibleBaseClassBothVirtualAndNonVirtualInHierarchy.ql │ │ │ ├── M10-2-1 │ │ │ └── UniqueAccessibleEntityNamesInMultipleInheritance.ql │ │ │ ├── M10-3-3 │ │ │ └── VirtualFunctionOverriddenByAPureVirtualFunction.ql │ │ │ ├── M11-0-1 │ │ │ └── MemberDataInNonPodClassTypesNotPrivate.ql │ │ │ ├── M12-1-1 │ │ │ └── DynamicTypeOfThisUsedFromConstructorOrDestructor.ql │ │ │ ├── M14-5-3 │ │ │ └── CopyAssignmentOperatorNotDeclared.ql │ │ │ ├── M14-6-1 │ │ │ ├── NameNotReferredUsingAQualifiedIdOrThis.ql │ │ │ └── NameNotReferredUsingAQualifiedIdOrThisAudit.ql │ │ │ ├── M15-0-3 │ │ │ ├── GotoToCatchBlock.ql │ │ │ └── SwitchToCatchBlock.ql │ │ │ ├── M15-1-1 │ │ │ └── ExceptionThrownDuringThrow.ql │ │ │ ├── M15-1-2 │ │ │ └── NullThrownExplicitly.ql │ │ │ ├── M15-1-3 │ │ │ └── EmptyThrowOutsideCatch.ql │ │ │ ├── M15-3-1 │ │ │ ├── ExceptionRaisedDuringStartup.ql │ │ │ └── ExceptionRaisedDuringTermination.ql │ │ │ ├── M15-3-3 │ │ │ └── DestroyedValueReferencedInDestructorCatchBlock.ql │ │ │ ├── M15-3-4 │ │ │ └── CatchAllExplicitlyThrownExceptions.ql │ │ │ ├── M15-3-6 │ │ │ └── CatchBlockShadowingMisra.ql │ │ │ ├── M15-3-7 │ │ │ └── CatchAllHandlerLast.ql │ │ │ ├── M16-0-1 │ │ │ └── IncludeDirectivesNotPrecededByDirectivesOrComments.ql │ │ │ ├── M16-0-2 │ │ │ └── MacrosShallOnlyBeDefinedOrUndefdInTheGlobalNamespace.ql │ │ │ ├── M16-0-5 │ │ │ └── FunctionLikeMacroArgsContainHashToken.ql │ │ │ ├── M16-0-6 │ │ │ └── FunctionLikeMacroParameterNotEnclosedInParentheses.ql │ │ │ ├── M16-0-7 │ │ │ └── UndefinedMacroIdentifiersUsedIn.ql │ │ │ ├── M16-1-1 │ │ │ ├── DefinedMacro.qll │ │ │ ├── DefinedPreProcessorOperatorGeneratedFromExpansionFound.ql │ │ │ └── DefinedPreProcessorOperatorInOneOfTheTwoStandardForms.ql │ │ │ ├── M16-2-3 │ │ │ ├── IncludeGuardsNotProvided.ql │ │ │ └── include-example.cpp │ │ │ ├── M16-3-1 │ │ │ └── MoreThanOneOccurrenceHashOperatorInMacroDefinition.ql │ │ │ ├── M16-3-2 │ │ │ └── HashOperatorsShouldNotBeUsed.ql │ │ │ ├── M17-0-2 │ │ │ └── NameOfStandardLibraryMacroOrObjectReused.ql │ │ │ ├── M17-0-3 │ │ │ └── NameOfStandardLibraryFunctionIsOverridden.ql │ │ │ ├── M17-0-5 │ │ │ └── SetjmpMacroAndTheLongjmpFunctionUsed.ql │ │ │ ├── M18-0-3 │ │ │ └── LibraryFunctionsAbortExitGetenvAndSystemFromLibraryCstdlibUsed.ql │ │ │ ├── M18-0-4 │ │ │ └── TimeHandlingFunctionsOfLibraryCtimeUsed.ql │ │ │ ├── M18-0-5 │ │ │ └── UnboundedFunctionsOfLibraryCstringUsed.ql │ │ │ ├── M18-2-1 │ │ │ └── MacroOffsetofUsed.ql │ │ │ ├── M18-7-1 │ │ │ ├── CsignalFunctionsUsed.ql │ │ │ └── CsignalTypesUsed.ql │ │ │ ├── M19-3-1 │ │ │ └── ErrnoUsed.ql │ │ │ ├── M2-10-1 │ │ │ └── DifferentIdentifiersNotTypographicallyUnambiguous.ql │ │ │ ├── M2-13-2 │ │ │ ├── UseOfNonZeroOctalEscape.ql │ │ │ └── UseOfNonZeroOctalLiteral.ql │ │ │ ├── M2-13-3 │ │ │ └── MissingUSuffix.ql │ │ │ ├── M2-13-4 │ │ │ └── LiteralSuffixNotUpperCase.ql │ │ │ ├── M2-7-1 │ │ │ └── SlashStarUsedWithinACStyleComment.ql │ │ │ ├── M27-0-1 │ │ │ ├── CstdioFunctionsUsed.ql │ │ │ ├── CstdioMacrosUsed.ql │ │ │ └── CstdioTypesUsed.ql │ │ │ ├── M3-1-2 │ │ │ └── FunctionsDeclaredAtBlockScope.ql │ │ │ ├── M3-2-1 │ │ │ ├── DeclarationsOfAFunctionShallHaveCompatibleTypes.ql │ │ │ └── DeclarationsOfAnObjectShallHaveCompatibleTypes.ql │ │ │ ├── M3-2-2 │ │ │ └── OneDefinitionRuleViolation.ql │ │ │ ├── M3-2-3 │ │ │ └── MultipleDeclarationViolation.ql │ │ │ ├── M3-2-4 │ │ │ └── IdentifierWithExternalLinkageShallHaveOneDefinition.ql │ │ │ ├── M3-3-2 │ │ │ └── MissingStaticSpecifierOnFunctionRedeclaration.ql │ │ │ ├── M3-4-1 │ │ │ └── UnnecessaryExposedIdentifierDeclaration.ql │ │ │ ├── M3-9-1 │ │ │ ├── TypesNotIdenticalInObjectDeclarations.ql │ │ │ └── TypesNotIdenticalInReturnDeclarations.ql │ │ │ ├── M3-9-3 │ │ │ └── UnderlyingBitRepresentationsOfFloatingPointValuesUsed.ql │ │ │ ├── M4-10-1 │ │ │ └── NullUsedAsIntegerValue.ql │ │ │ ├── M4-10-2 │ │ │ └── LiteralZeroUsedAsNullPointerConstant.ql │ │ │ ├── M4-5-1 │ │ │ └── BoolOperandsToDisallowedBuiltInOperators.ql │ │ │ ├── M4-5-3 │ │ │ └── CharUsedAsOperandsToDisallowedBuiltInOperators.ql │ │ │ ├── M5-0-10 │ │ │ └── UnsignedBitwiseOperatorWithoutCast.ql │ │ │ ├── M5-0-11 │ │ │ └── PlainCharTypeShallOnlyBeUsedForTheStorageAndUseOfCharacterValues.ql │ │ │ ├── M5-0-12 │ │ │ └── SignedCharAndUnsignedCharTypeShallOnlyBeUsedForTheStorageAndUseOfNumericValues.ql │ │ │ ├── M5-0-14 │ │ │ └── TernaryOperatorConditionNotTypeBool.ql │ │ │ ├── M5-0-15 │ │ │ └── IndexingNotTheOnlyFormOfPointerArithmetic.ql │ │ │ ├── M5-0-16 │ │ │ └── PointerAndDerivedPointerAccessDifferentArray.ql │ │ │ ├── M5-0-17 │ │ │ └── PointerSubtractionOnDifferentArrays.ql │ │ │ ├── M5-0-18 │ │ │ └── AppliedToObjectsOfPointerType.ql │ │ │ ├── M5-0-2 │ │ │ ├── GratuitousUseOfParentheses.ql │ │ │ └── InsufficientUseOfParentheses.ql │ │ │ ├── M5-0-20 │ │ │ └── BitwiseOperatorOperandsHaveDifferentUnderlyingType.ql │ │ │ ├── M5-0-21 │ │ │ └── BitwiseOperatorAppliedToSignedTypes.ql │ │ │ ├── M5-0-3 │ │ │ └── CvalueExpressionConvertedToDifferentUnderlyingType.ql │ │ │ ├── M5-0-4 │ │ │ └── ImplicitChangeOfTheSignednessOfTheUnderlyingType.ql │ │ │ ├── M5-0-5 │ │ │ ├── ImplicitConstFloatingIntegralConversion.ql │ │ │ └── ImplicitNonConstFloatingIntegralConversion.ql │ │ │ ├── M5-0-6 │ │ │ ├── ImplicitConstConversionToSmallerUnderlyingType.ql │ │ │ └── ImplicitNonConstConversionToSmallerUnderlyingType.ql │ │ │ ├── M5-0-7 │ │ │ └── ExplicitFloatingIntegralConversionOfACValueExpr.ql │ │ │ ├── M5-0-8 │ │ │ └── ExplicitWideningConversionOfACValueExpr.ql │ │ │ ├── M5-0-9 │ │ │ └── ExplicitSignednessConversionOfCValue.ql │ │ │ ├── M5-14-1 │ │ │ └── RightHandOperandOfALogicalAndOperatorsContainSideEffects.ql │ │ │ ├── M5-17-1 │ │ │ └── SemanticEquivalenceBetweenOperatorFormNotPreserved.ql │ │ │ ├── M5-18-1 │ │ │ └── CommaOperatorUsed.ql │ │ │ ├── M5-19-1 │ │ │ └── ConstantUnsignedIntegerExpressionsWrapAround.ql │ │ │ ├── M5-2-10 │ │ │ └── IncrementAndDecrementOperatorsMixedWithOtherOperatorsInExpression.ql │ │ │ ├── M5-2-11 │ │ │ └── CommaOperatorAndOperatorAndTheOperatorOverloaded.ql │ │ │ ├── M5-2-12 │ │ │ └── IdentifierWithArrayTypePassedAsFunctionArgumentDecayToAPointer.ql │ │ │ ├── M5-2-2 │ │ │ └── PointerToAVirtualBaseClassCastToAPointer.ql │ │ │ ├── M5-2-3 │ │ │ └── DowncastingShouldNotBePerformedOnPolymorphicTypes.ql │ │ │ ├── M5-2-6 │ │ │ └── CastNotConvertPointerToFunction.ql │ │ │ ├── M5-2-8 │ │ │ └── IntegerOrPointerToVoidConvertedToPointerType.ql │ │ │ ├── M5-2-9 │ │ │ └── CastConvertAPointerTypeToAnIntegralType.ql │ │ │ ├── M5-3-1 │ │ │ └── EachOperandOfTheOperatorTheLogicalAndOrTheLogicalOperatorsShallHaveTypeBool.ql │ │ │ ├── M5-3-2 │ │ │ └── UnaryMinusOperatorAppliedToAnExpressionWhoseUnderlyingTypeIsUnsigned.ql │ │ │ ├── M5-3-3 │ │ │ └── UnaryOperatorOverloaded.ql │ │ │ ├── M5-3-4 │ │ │ └── EvaluationOfTheOperandToTheSizeofOperatorContainSideEffects.ql │ │ │ ├── M5-8-1 │ │ │ └── RightBitShiftOperandIsNegativeOrTooWide.ql │ │ │ ├── M6-2-1 │ │ │ └── AssignmentInSubExpression.ql │ │ │ ├── M6-2-2 │ │ │ └── FloatsTestedForEquality.ql │ │ │ ├── M6-2-3 │ │ │ ├── EmptyStatementTokenOrder.qll │ │ │ └── NullOnSharedLine.ql │ │ │ ├── M6-3-1 │ │ │ ├── LoopCompoundCondition.ql │ │ │ └── SwitchCompoundCondition.ql │ │ │ ├── M6-4-1 │ │ │ └── IfCompoundCondition.ql │ │ │ ├── M6-4-2 │ │ │ └── IfElseTerminationCondition.ql │ │ │ ├── M6-4-3 │ │ │ ├── 6-4-3_grammar_1.png │ │ │ ├── 6-4-3_grammar_2.png │ │ │ ├── 6-4-3_grammar_3.png │ │ │ ├── SwitchDoesNotStartWithCase.ql │ │ │ └── SwitchStatementNotWellFormed.ql │ │ │ ├── M6-4-4 │ │ │ └── NestedCaseInSwitch.ql │ │ │ ├── M6-4-5 │ │ │ └── NonEmptySwitchClauseDoesNotTerminate.ql │ │ │ ├── M6-4-6 │ │ │ ├── MissingDefaultInSwitch.ql │ │ │ └── SwitchFinalClauseNotDefault.ql │ │ │ ├── M6-4-7 │ │ │ └── BooleanInSwitchCondition.ql │ │ │ ├── M6-5-2 │ │ │ └── NotEqualsInLoopCondition.ql │ │ │ ├── M6-5-3 │ │ │ ├── LoopCounterModifiedWithinCondition.ql │ │ │ └── LoopCounterModifiedWithinStatement.ql │ │ │ ├── M6-5-4 │ │ │ └── IrregularLoopCounterModification.ql │ │ │ ├── M6-5-5 │ │ │ ├── LoopControlVariableModifiedInLoopCondition.ql │ │ │ └── LoopControlVariableModifiedInLoopExpression.ql │ │ │ ├── M6-5-6 │ │ │ └── NonBooleanLoopControlVariable.ql │ │ │ ├── M6-6-1 │ │ │ └── GotoBlockCondition.ql │ │ │ ├── M6-6-2 │ │ │ └── GotoStatementJumpCondition.ql │ │ │ ├── M6-6-3 │ │ │ └── ContinueInForLoopCondition.ql │ │ │ ├── M7-1-2 │ │ │ └── PointerOrReferenceParameterToConst.ql │ │ │ ├── M7-3-1 │ │ │ └── GlobalNamespaceMembershipViolation.ql │ │ │ ├── M7-3-2 │ │ │ └── IdentifierMainUsedForAFunctionOtherThanTheGlobalFunctionMain.ql │ │ │ ├── M7-3-3 │ │ │ └── UnnamedNamespacesInHeaderFile.ql │ │ │ ├── M7-3-4 │ │ │ └── UsingDirectivesUsed.ql │ │ │ ├── M7-3-6 │ │ │ └── UsingDeclarationsUsedInHeaderFiles.ql │ │ │ ├── M7-4-1 │ │ │ └── UsageOfAssemblerNotDocumented.ql │ │ │ ├── M7-4-2 │ │ │ └── AssmemblerInstructionsCondition.ql │ │ │ ├── M7-4-3 │ │ │ └── AssemblyLanguageCondition.ql │ │ │ ├── M7-5-1 │ │ │ └── FunctionReturnAutomaticVarCondition.ql │ │ │ ├── M7-5-2 │ │ │ └── AssignmentOfEscapingAutoStorage.ql │ │ │ ├── M8-0-1 │ │ │ ├── MultipleGlobalOrMemberDeclarators.ql │ │ │ └── MultipleLocalDeclarators.ql │ │ │ ├── M8-3-1 │ │ │ └── VirtualFunctionParametersUseTheSameDefaultArguments.ql │ │ │ ├── M8-4-2 │ │ │ └── NonIdenticalIdentifierUsedForTheParameterInReDeclarationOfAFunction.ql │ │ │ ├── M8-4-4 │ │ │ └── FunctionIdentifierCondition.ql │ │ │ ├── M8-5-2 │ │ │ ├── MissingExplicitInitializers.ql │ │ │ ├── NestedZeroValueInitialization.ql │ │ │ └── UseInitBracesToMatchTypeStructure.ql │ │ │ ├── M9-3-1 │ │ │ └── ConstMemberFunctionReturnsNonConstPointer.ql │ │ │ ├── M9-3-3 │ │ │ ├── MemberFunctionConstIfPossible.ql │ │ │ └── MemberFunctionStaticIfPossible.ql │ │ │ └── M9-6-4 │ │ │ └── NamedBitFieldsWithSignedIntegerTypeShallHaveALengthOfMoreThanOneBit.ql │ └── test │ │ ├── codeql-pack.lock.yml │ │ ├── qlpack.yml │ │ └── rules │ │ ├── A0-1-1 │ │ ├── UselessAssignment.expected │ │ ├── UselessAssignment.qlref │ │ └── test.cpp │ │ ├── A0-1-2 │ │ ├── UnusedReturnValue.expected │ │ ├── UnusedReturnValue.qlref │ │ └── test.cpp │ │ ├── A0-1-3 │ │ ├── UnusedLocalFunction.expected │ │ ├── UnusedLocalFunction.qlref │ │ └── test.cpp │ │ ├── A0-1-4 │ │ └── UnusedParameter.testref │ │ ├── A0-1-5 │ │ ├── UnusedVirtualParameter.expected │ │ ├── UnusedVirtualParameter.qlref │ │ └── test.cpp │ │ ├── A0-1-6 │ │ └── UnusedTypeDeclarations.testref │ │ ├── A0-4-1 │ │ ├── FloatingPointImplementationShallComplyWithIeeeStandard.expected │ │ ├── FloatingPointImplementationShallComplyWithIeeeStandard.expected.clang │ │ ├── FloatingPointImplementationShallComplyWithIeeeStandard.expected.gcc │ │ ├── FloatingPointImplementationShallComplyWithIeeeStandard.expected.qcc │ │ ├── FloatingPointImplementationShallComplyWithIeeeStandard.qlref │ │ ├── test.cpp │ │ ├── test.cpp.clang │ │ ├── test.cpp.gcc │ │ └── test.cpp.qcc │ │ ├── A0-4-2 │ │ ├── TypeLongDoubleUsed.expected │ │ ├── TypeLongDoubleUsed.qlref │ │ └── test.cpp │ │ ├── A0-4-3 │ │ ├── CompilerImplementationShallComplyWithCPP14Standard.expected │ │ ├── CompilerImplementationShallComplyWithCPP14Standard.qlref │ │ ├── options.clang │ │ ├── options.gcc │ │ ├── options.qcc │ │ └── test.cpp │ │ ├── A0-4-4 │ │ └── UncheckedRangeDomainPoleErrors.testref │ │ ├── A1-1-1 │ │ ├── CStandardLibraryHeadersAreDeprecated.cpp │ │ ├── CStandardLibraryHeadersAreDeprecated.expected │ │ ├── CStandardLibraryHeadersAreDeprecated.qlref │ │ ├── DynamicExceptionsAreDeprecated.cpp │ │ ├── DynamicExceptionsAreDeprecated.expected │ │ ├── DynamicExceptionsAreDeprecated.qlref │ │ ├── ImplicitCopyAssignmentOperatorIsDeprecated.cpp │ │ ├── ImplicitCopyAssignmentOperatorIsDeprecated.expected │ │ ├── ImplicitCopyAssignmentOperatorIsDeprecated.qlref │ │ ├── ImplicitCopyConstructorIsDeprecated.cpp │ │ ├── ImplicitCopyConstructorIsDeprecated.expected │ │ ├── ImplicitCopyConstructorIsDeprecated.qlref │ │ ├── IncrementOperatorWithBoolOperandIsDeprecated.cpp │ │ ├── IncrementOperatorWithBoolOperandIsDeprecated.expected │ │ ├── IncrementOperatorWithBoolOperandIsDeprecated.qlref │ │ ├── RegisterKeywordIsDeprecated.cpp │ │ ├── RegisterKeywordIsDeprecated.expected │ │ ├── RegisterKeywordIsDeprecated.qlref │ │ ├── StrstreamTypesAreDeprecated.cpp │ │ ├── StrstreamTypesAreDeprecated.expected │ │ └── StrstreamTypesAreDeprecated.qlref │ │ ├── A1-1-2.1 │ │ ├── CompilerWarningLevelNotInCompliance.expected │ │ ├── CompilerWarningLevelNotInCompliance.qlref │ │ ├── foo │ │ ├── options.clang │ │ ├── options.gcc │ │ ├── options.qcc │ │ └── responsefile.cpp │ │ ├── A1-1-2.2 │ │ ├── CompilerWarningLevelNotInCompliance.expected │ │ ├── CompilerWarningLevelNotInCompliance.expected.clang │ │ ├── CompilerWarningLevelNotInCompliance.expected.gcc │ │ ├── CompilerWarningLevelNotInCompliance.expected.qcc │ │ ├── CompilerWarningLevelNotInCompliance.qlref │ │ ├── Wcast-function-type.cpp │ │ ├── options.clang │ │ ├── options.gcc │ │ └── options.qcc │ │ ├── A1-1-2.3 │ │ ├── CompilerWarningLevelNotInCompliance.expected │ │ ├── CompilerWarningLevelNotInCompliance.qlref │ │ ├── options.clang │ │ ├── options.gcc │ │ ├── options.qcc │ │ └── test.cpp │ │ ├── A1-1-2.4 │ │ ├── CompilerWarningLevelNotInCompliance.expected │ │ ├── CompilerWarningLevelNotInCompliance.qlref │ │ ├── Wformat=0-Wno-format-security.cpp │ │ ├── options.clang │ │ ├── options.gcc │ │ └── options.qcc │ │ ├── A1-1-2.5 │ │ ├── CompilerWarningLevelNotInCompliance.expected │ │ ├── CompilerWarningLevelNotInCompliance.expected.clang │ │ ├── CompilerWarningLevelNotInCompliance.expected.gcc │ │ ├── CompilerWarningLevelNotInCompliance.expected.qcc │ │ ├── CompilerWarningLevelNotInCompliance.qlref │ │ ├── Wall-Wno-format.cpp │ │ ├── options.clang │ │ ├── options.gcc │ │ └── options.qcc │ │ ├── A1-1-2 │ │ ├── CompilerWarningLevelNotInCompliance.expected │ │ ├── CompilerWarningLevelNotInCompliance.expected.clang │ │ ├── CompilerWarningLevelNotInCompliance.expected.gcc │ │ ├── CompilerWarningLevelNotInCompliance.expected.qcc │ │ ├── CompilerWarningLevelNotInCompliance.qlref │ │ ├── Wall.cpp │ │ ├── options.clang │ │ ├── options.gcc │ │ ├── options.qcc │ │ └── test.hpp │ │ ├── A1-1-3 │ │ ├── UncompliantOptimizationOptionMustBeDisabledInCompiler.expected │ │ ├── UncompliantOptimizationOptionMustBeDisabledInCompiler.expected.clang │ │ ├── UncompliantOptimizationOptionMustBeDisabledInCompiler.expected.gcc │ │ ├── UncompliantOptimizationOptionMustBeDisabledInCompiler.expected.qcc │ │ ├── UncompliantOptimizationOptionMustBeDisabledInCompiler.qlref │ │ ├── options.clang │ │ ├── options.gcc │ │ ├── options.qcc │ │ └── test.cpp │ │ ├── A10-0-1 │ │ ├── PublicInheritanceNotUsedForIsARelationship.expected │ │ ├── PublicInheritanceNotUsedForIsARelationship.qlref │ │ └── test.cpp │ │ ├── A10-0-2 │ │ ├── NonPublicInheritanceNotUsedForHasARelationship.expected │ │ ├── NonPublicInheritanceNotUsedForHasARelationship.qlref │ │ └── test.cpp │ │ ├── A10-1-1 │ │ ├── ClassDerivedFromMoreThanOneNonInterfaceBaseClass.expected │ │ ├── ClassDerivedFromMoreThanOneNonInterfaceBaseClass.qlref │ │ └── test.cpp │ │ ├── A10-2-1 │ │ ├── NonVirtualPublicOrProtectedFunctionsRedefined.expected │ │ ├── NonVirtualPublicOrProtectedFunctionsRedefined.qlref │ │ └── test.cpp │ │ ├── A10-3-1 │ │ ├── VirtualFunctionsShallContainOneSpecifier.expected │ │ ├── VirtualFunctionsShallContainOneSpecifier.qlref │ │ └── test.cpp │ │ ├── A10-3-2 │ │ ├── OverridingFunctionNotDeclaredOverrideOrFinal.expected │ │ ├── OverridingFunctionNotDeclaredOverrideOrFinal.qlref │ │ └── test.cpp │ │ ├── A10-3-3 │ │ ├── VirtualFunctionsIntroducedInFinalClass.expected │ │ ├── VirtualFunctionsIntroducedInFinalClass.qlref │ │ └── test.cpp │ │ ├── A10-3-5 │ │ ├── UserDefinedAssignmentOperatorVirtual.expected │ │ ├── UserDefinedAssignmentOperatorVirtual.qlref │ │ └── test.cpp │ │ ├── A10-4-1 │ │ ├── HierarchiesShouldBeBasedOnInterfaceClasses.expected │ │ ├── HierarchiesShouldBeBasedOnInterfaceClasses.qlref │ │ └── test.cpp │ │ ├── A11-0-1 │ │ ├── NonPodTypeShouldBeDefinedAsClass.expected │ │ ├── NonPodTypeShouldBeDefinedAsClass.qlref │ │ └── test.cpp │ │ ├── A11-0-2 │ │ ├── TypeDefinedAsStructHasNoMethods.expected │ │ ├── TypeDefinedAsStructHasNoMethods.qlref │ │ ├── TypeDefinedAsStructHasOnlyPublicDataMembers.expected │ │ ├── TypeDefinedAsStructHasOnlyPublicDataMembers.qlref │ │ ├── TypeDefinedAsStructIsDoesNotInheritFromStructOrClass.expected │ │ ├── TypeDefinedAsStructIsDoesNotInheritFromStructOrClass.qlref │ │ ├── TypeDefinedAsStructIsNotBaseOfOtherClassOrStruct.expected │ │ ├── TypeDefinedAsStructIsNotBaseOfOtherClassOrStruct.qlref │ │ └── test.cpp │ │ ├── A11-3-1 │ │ ├── FriendDeclarationsUsed.expected │ │ ├── FriendDeclarationsUsed.qlref │ │ └── test.cpp │ │ ├── A12-0-1 │ │ ├── MissingSpecialMemberFunction.expected │ │ ├── MissingSpecialMemberFunction.qlref │ │ └── test.cpp │ │ ├── A12-0-2 │ │ ├── OperationsAssumingMemoryLayoutPerformedOnObjects.expected │ │ ├── OperationsAssumingMemoryLayoutPerformedOnObjects.qlref │ │ └── test.cpp │ │ ├── A12-1-1 │ │ └── ExplicitConstructorBaseClassInitialization.testref │ │ ├── A12-1-2 │ │ ├── NonStaticMemberMultipleInit.expected │ │ ├── NonStaticMemberMultipleInit.qlref │ │ └── test.cpp │ │ ├── A12-1-3 │ │ ├── MissedNSDMIOpportunity.expected │ │ ├── MissedNSDMIOpportunity.qlref │ │ └── test.cpp │ │ ├── A12-1-4 │ │ ├── ConstructorWithFundamentalArgMissingExplicit.expected │ │ ├── ConstructorWithFundamentalArgMissingExplicit.qlref │ │ └── test.cpp │ │ ├── A12-1-5 │ │ ├── AvoidDuplicationInConstructors.expected │ │ ├── AvoidDuplicationInConstructors.qlref │ │ └── test.cpp │ │ ├── A12-1-6 │ │ ├── UseInheritingConstructors.expected │ │ ├── UseInheritingConstructors.qlref │ │ └── test.cpp │ │ ├── A12-4-1 │ │ ├── DestructorOfABaseClassNotPublicVirtual.expected │ │ ├── DestructorOfABaseClassNotPublicVirtual.qlref │ │ └── test.cpp │ │ ├── A12-4-2 │ │ ├── NonVirtualPublicDestructorInNonFinalClass.expected │ │ ├── NonVirtualPublicDestructorInNonFinalClass.qlref │ │ └── test.cpp │ │ ├── A12-6-1 │ │ ├── ClassDataMembersInitializationCondition.expected │ │ ├── ClassDataMembersInitializationCondition.qlref │ │ └── test.cpp │ │ ├── A12-7-1 │ │ ├── RedundantMemberFunctionsShouldBeDefaultedOrLeftUndefined.expected │ │ ├── RedundantMemberFunctionsShouldBeDefaultedOrLeftUndefined.qlref │ │ └── test.cpp │ │ ├── A12-8-1 │ │ ├── CopyConstructorShallOnlyCopyObject.expected │ │ ├── CopyConstructorShallOnlyCopyObject.qlref │ │ ├── MoveConstructorShallOnlyMoveObject.expected │ │ ├── MoveConstructorShallOnlyMoveObject.qlref │ │ └── test.cpp │ │ ├── A12-8-2 │ │ ├── UserDefinedCopyAndMoveUseNoThrowSwapFunction.expected │ │ ├── UserDefinedCopyAndMoveUseNoThrowSwapFunction.qlref │ │ └── test.cpp │ │ ├── A12-8-3 │ │ └── MovedFromObjectReadAccessed.testref │ │ ├── A12-8-4 │ │ ├── MoveConstructorUsesCopySemantics.expected │ │ ├── MoveConstructorUsesCopySemantics.qlref │ │ └── test.cpp │ │ ├── A12-8-5 │ │ └── CopyAssignmentAndAMoveHandleSelfAssignment.testref │ │ ├── A12-8-6 │ │ ├── CopyAndMoveNotDeclaredProtected.expected │ │ ├── CopyAndMoveNotDeclaredProtected.qlref │ │ └── test.cpp │ │ ├── A12-8-7 │ │ ├── OperatorsShouldBeDeclaredWithTheRefQualifier.expected │ │ ├── OperatorsShouldBeDeclaredWithTheRefQualifier.qlref │ │ └── test.cpp │ │ ├── A13-1-2 │ │ ├── UserDefinedLiteralOperatorSuffixViolation.expected │ │ ├── UserDefinedLiteralOperatorSuffixViolation.qlref │ │ └── test.cpp │ │ ├── A13-1-3 │ │ ├── UserDefinedLiteralsOperatorsShallNotHaveSideEffects.expected │ │ ├── UserDefinedLiteralsOperatorsShallNotHaveSideEffects.qlref │ │ ├── UserDefinedLiteralsOperatorsShallOnlyPerformConversionOfPassedParameters.expected │ │ ├── UserDefinedLiteralsOperatorsShallOnlyPerformConversionOfPassedParameters.qlref │ │ └── test.cpp │ │ ├── A13-2-1 │ │ ├── AssignmentOperatorReturnThis.expected │ │ ├── AssignmentOperatorReturnThis.qlref │ │ └── test.cpp │ │ ├── A13-2-2 │ │ ├── BinaryOperatorAndBitwiseOperatorReturnAPrvalue.expected │ │ ├── BinaryOperatorAndBitwiseOperatorReturnAPrvalue.qlref │ │ └── test.cpp │ │ ├── A13-2-3 │ │ ├── RelationalOperatorShallReturnABooleanValue.expected │ │ ├── RelationalOperatorShallReturnABooleanValue.qlref │ │ └── test.cpp │ │ ├── A13-3-1 │ │ ├── FunctionThatContainsForwardingReferenceAsItsArgumentOverloaded.expected │ │ ├── FunctionThatContainsForwardingReferenceAsItsArgumentOverloaded.qlref │ │ └── test.cpp │ │ ├── A13-5-1 │ │ ├── MissingConstOperatorSubscript.expected │ │ ├── MissingConstOperatorSubscript.qlref │ │ └── test.cpp │ │ ├── A13-5-2 │ │ ├── UserDefinedConversionOperatorsNotDefinedExplicit.expected │ │ ├── UserDefinedConversionOperatorsNotDefinedExplicit.qlref │ │ └── test.cpp │ │ ├── A13-5-3 │ │ ├── UserDefinedConversionOperatorsShouldNotBeUsed.expected │ │ ├── UserDefinedConversionOperatorsShouldNotBeUsed.qlref │ │ └── test.cpp │ │ ├── A13-5-4 │ │ ├── OppositeOperatorsNotDefinedInTermsOfOther.expected │ │ ├── OppositeOperatorsNotDefinedInTermsOfOther.qlref │ │ └── test.cpp │ │ ├── A13-5-5 │ │ ├── ComparisonOperatorsNotNonMemberFunctionsWithIdenticalParameterTypesAndNoexcept.expected │ │ ├── ComparisonOperatorsNotNonMemberFunctionsWithIdenticalParameterTypesAndNoexcept.qlref │ │ └── test.cpp │ │ ├── A13-6-1 │ │ ├── UseCorrectIntervalForDigitSequencesSeparators.expected │ │ ├── UseCorrectIntervalForDigitSequencesSeparators.qlref │ │ └── test.cpp │ │ ├── A14-1-1 │ │ ├── TemplateShouldCheckArg.expected │ │ ├── TemplateShouldCheckArg.qlref │ │ └── test.cpp │ │ ├── A14-5-1 │ │ ├── TemplateConstructorOverloadResolution.expected │ │ ├── TemplateConstructorOverloadResolution.qlref │ │ └── test.cpp │ │ ├── A14-5-2 │ │ ├── NonTemplateMemberDefinedInTemplate.expected │ │ ├── NonTemplateMemberDefinedInTemplate.qlref │ │ └── test.cpp │ │ ├── A14-5-3 │ │ ├── NonMemberGenericOperatorCondition.expected │ │ ├── NonMemberGenericOperatorCondition.qlref │ │ └── test.cpp │ │ ├── A14-7-1 │ │ ├── TypeUsedAsTemplateArgShallProvideAllMembers.expected │ │ ├── TypeUsedAsTemplateArgShallProvideAllMembers.qlref │ │ └── test.cpp │ │ ├── A14-7-2 │ │ ├── TemplateSpecializationNotDeclaredInTheSameFile.expected │ │ ├── TemplateSpecializationNotDeclaredInTheSameFile.qlref │ │ ├── test.cpp │ │ └── test.hpp │ │ ├── A14-8-2 │ │ └── ExplicitSpecializationsOfFunctionTemplatesUsed.testref │ │ ├── A15-0-1 │ │ ├── ExceptionThrownOnCompletion.expected │ │ ├── ExceptionThrownOnCompletion.qlref │ │ └── test.cpp │ │ ├── A15-0-2 │ │ └── ExceptionSafetyGuaranteesNotProvided.testref │ │ ├── A15-0-3 │ │ ├── ExceptionSafetyGuaranteeOfACalledFunction.expected │ │ ├── ExceptionSafetyGuaranteeOfACalledFunction.qlref │ │ └── test.cpp │ │ ├── A15-0-4 │ │ ├── RecoverableUncheckedExceptions.expected │ │ ├── RecoverableUncheckedExceptions.qlref │ │ └── test.cpp │ │ ├── A15-0-5 │ │ ├── UnrecoverableCheckedExceptions.expected │ │ ├── UnrecoverableCheckedExceptions.qlref │ │ └── test.cpp │ │ ├── A15-1-1 │ │ ├── OnlyThrowStdExceptionDerivedTypes.expected │ │ ├── OnlyThrowStdExceptionDerivedTypes.qlref │ │ └── test.cpp │ │ ├── A15-1-2 │ │ └── PointerExceptionObject.testref │ │ ├── A15-1-3 │ │ ├── ThrownExceptionsShouldBeUnique.expected │ │ ├── ThrownExceptionsShouldBeUnique.qlref │ │ └── test.cpp │ │ ├── A15-1-4 │ │ └── ValidResourcesStateBeforeThrow.testref │ │ ├── A15-1-5 │ │ ├── ExceptionsThrownAcrossExecutionBoundaries.expected │ │ ├── ExceptionsThrownAcrossExecutionBoundaries.expected.clang │ │ ├── ExceptionsThrownAcrossExecutionBoundaries.expected.gcc │ │ ├── ExceptionsThrownAcrossExecutionBoundaries.expected.qcc │ │ ├── ExceptionsThrownAcrossExecutionBoundaries.qlref │ │ ├── test-diff.cpp │ │ ├── test-diff.h │ │ └── test.cpp │ │ ├── A15-2-1 │ │ ├── ConstructorsThatAreNotNoexceptInvokedBeforeProgramStartup.expected │ │ ├── ConstructorsThatAreNotNoexceptInvokedBeforeProgramStartup.qlref │ │ └── test.cpp │ │ ├── A15-2-2 │ │ ├── ConstructorErrorLeavesObjectInInvalidState.expected │ │ ├── ConstructorErrorLeavesObjectInInvalidState.qlref │ │ └── test.cpp │ │ ├── A15-3-3 │ │ ├── MissingCatchHandlerInMain.expected │ │ ├── MissingCatchHandlerInMain.qlref │ │ ├── test.cpp │ │ ├── test_compliant_multi_try.cpp │ │ ├── test_non_compliant.cpp │ │ ├── test_non_compliant_multi_try.cpp │ │ └── test_non_compliant_try_function.cpp │ │ ├── A15-3-4 │ │ ├── CatchAllEllipsisUsedInNonMain.expected │ │ ├── CatchAllEllipsisUsedInNonMain.qlref │ │ └── test.cpp │ │ ├── A15-3-5 │ │ └── ClassTypeExceptionNotCaughtByReference.testref │ │ ├── A15-4-1 │ │ ├── UseOfDynamicExceptionSpecification.expected │ │ ├── UseOfDynamicExceptionSpecification.qlref │ │ └── test.cpp │ │ ├── A15-4-2 │ │ └── NoExceptFunctionThrows.testref │ │ ├── A15-4-3 │ │ ├── IncompatibleNoexceptSpecification.expected │ │ ├── IncompatibleNoexceptSpecification.qlref │ │ ├── IncompatibleNoexceptSpecificationForOverriders.expected │ │ ├── IncompatibleNoexceptSpecificationForOverriders.qlref │ │ ├── InconsistentNoexceptFalseSpecification.expected │ │ ├── InconsistentNoexceptFalseSpecification.qlref │ │ ├── InconsistentNoexceptTrueSpecification.expected │ │ ├── InconsistentNoexceptTrueSpecification.qlref │ │ ├── test.cpp │ │ └── test2.cpp │ │ ├── A15-4-4 │ │ ├── MissingNoExcept.expected │ │ ├── MissingNoExcept.qlref │ │ ├── coding-standards.xml │ │ └── test.cpp │ │ ├── A15-4-5 │ │ ├── InconsistentCheckedExceptions.expected │ │ ├── InconsistentCheckedExceptions.qlref │ │ ├── MissingCheckedExceptions.expected │ │ ├── MissingCheckedExceptions.qlref │ │ └── test.cpp │ │ ├── A15-5-1 │ │ ├── SpecialFunctionExitsWithException.expected │ │ ├── SpecialFunctionExitsWithException.qlref │ │ ├── SpecialFunctionMissingNoExceptSpecification.expected │ │ ├── SpecialFunctionMissingNoExceptSpecification.qlref │ │ └── test.cpp │ │ ├── A15-5-2 │ │ └── ExplicitAbruptTerminationAutosar.testref │ │ ├── A15-5-3 │ │ ├── ConditionVariablePostConditionFailedAutosar.testref │ │ ├── ExitHandlerThrowsExceptionAutosar.testref │ │ ├── JoinableThreadCopiedOrDestroyedAutosar.testref │ │ └── RethrowNestedWithoutCaptureAutosar.testref │ │ ├── A16-0-1 │ │ ├── PreProcessorShallOnlyBeUsedForCertainDirectivesPatterns.expected │ │ ├── PreProcessorShallOnlyBeUsedForCertainDirectivesPatterns.qlref │ │ ├── options │ │ └── test.cpp │ │ ├── A16-2-1 │ │ └── CharactersOccurInHeaderFileNameOrInIncludeDirective.testref │ │ ├── A16-2-2 │ │ ├── UnusedIncludeDirectives.expected │ │ ├── UnusedIncludeDirectives.expected.clang │ │ ├── UnusedIncludeDirectives.expected.gcc │ │ ├── UnusedIncludeDirectives.expected.qcc │ │ ├── UnusedIncludeDirectives.qlref │ │ ├── internal.h │ │ ├── test.cpp │ │ ├── test.hpp │ │ ├── test2.cpp │ │ └── z.h │ │ ├── A16-6-1 │ │ ├── ErrorDirectiveUsed.expected │ │ ├── ErrorDirectiveUsed.qlref │ │ └── test.cpp │ │ ├── A16-7-1 │ │ ├── PragmaDirectiveUsed.expected │ │ ├── PragmaDirectiveUsed.qlref │ │ └── test.cpp │ │ ├── A17-0-1 │ │ ├── ReservedIdentifiersMacrosAndFunctionsAreDefinedRedefinedOrUndefined.expected │ │ ├── ReservedIdentifiersMacrosAndFunctionsAreDefinedRedefinedOrUndefined.qlref │ │ └── test.cpp │ │ ├── A17-1-1 │ │ ├── CStandardLibraryFunctionCalls.expected │ │ ├── CStandardLibraryFunctionCalls.qlref │ │ └── test.cpp │ │ ├── A17-6-1 │ │ └── NonStandardEntitiesInStandardNamespaces.testref │ │ ├── A18-0-1 │ │ ├── CLibraryFacilitiesNotAccessedThroughCPPLibraryHeaders.expected │ │ ├── CLibraryFacilitiesNotAccessedThroughCPPLibraryHeaders.qlref │ │ ├── lib │ │ │ └── example.h │ │ ├── test.cpp │ │ ├── test.cpp.qcc │ │ └── time.h │ │ ├── A18-0-2 │ │ ├── StringNumberConversionMissingErrorCheck.testref │ │ ├── UseOfUnsafeCStringToNumberConversion.expected │ │ ├── UseOfUnsafeCStringToNumberConversion.qlref │ │ └── test.cpp │ │ ├── A18-0-3 │ │ ├── LocaleFunctionsUsed.expected │ │ ├── LocaleFunctionsUsed.qlref │ │ ├── LocaleMacrosUsed.expected │ │ ├── LocaleMacrosUsed.qlref │ │ ├── LocaleTypeLConvUsed.expected │ │ ├── LocaleTypeLConvUsed.qlref │ │ └── test.cpp │ │ ├── A18-1-1 │ │ ├── CStyleArraysUsed.expected │ │ ├── CStyleArraysUsed.qlref │ │ └── test.cpp │ │ ├── A18-1-2 │ │ └── VectorboolSpecializationUsed.testref │ │ ├── A18-1-3 │ │ ├── AutoPtrTypeUsed.expected │ │ ├── AutoPtrTypeUsed.qlref │ │ └── test.cpp │ │ ├── A18-1-4 │ │ ├── PointerToAnElementOfAnArrayPassedToASmartPointer.expected │ │ ├── PointerToAnElementOfAnArrayPassedToASmartPointer.qlref │ │ └── test.cpp │ │ ├── A18-1-6 │ │ ├── HashSpecializationsHaveANoexceptFunctionCallOperator.expected │ │ ├── HashSpecializationsHaveANoexceptFunctionCallOperator.qlref │ │ └── test.cpp │ │ ├── A18-5-1 │ │ ├── FunctionsMallocCallocReallocAndFreeUsed.expected │ │ ├── FunctionsMallocCallocReallocAndFreeUsed.qlref │ │ └── test.cpp │ │ ├── A18-5-10 │ │ ├── PlacementNewInsufficientStorageAutosar.testref │ │ └── PlacementNewNotProperlyAlignedAutosar.testref │ │ ├── A18-5-11 │ │ ├── OperatorNewAndOperatorDeleteNotDefinedGlobally.expected │ │ ├── OperatorNewAndOperatorDeleteNotDefinedGlobally.qlref │ │ ├── OperatorNewAndOperatorDeleteNotDefinedLocally.expected │ │ ├── OperatorNewAndOperatorDeleteNotDefinedLocally.qlref │ │ └── test.cpp │ │ ├── A18-5-2 │ │ ├── DoNotUseNonPlacementDelete.expected │ │ ├── DoNotUseNonPlacementDelete.qlref │ │ ├── DoNotUseNonPlacementNew.expected │ │ ├── DoNotUseNonPlacementNew.qlref │ │ └── test.cpp │ │ ├── A18-5-3 │ │ ├── NewArrayDeleteMismatch.expected │ │ ├── NewArrayDeleteMismatch.qlref │ │ ├── NewDeleteArrayMismatch.expected │ │ ├── NewDeleteArrayMismatch.qlref │ │ └── test.cpp │ │ ├── A18-5-4 │ │ ├── GlobalSizedOperatorDeleteNotDefined.testref │ │ └── GlobalUnsizedOperatorDeleteNotDefined.testref │ │ ├── A18-5-5 │ │ ├── MemoryManagementFunctionInvariants.expected │ │ ├── MemoryManagementFunctionInvariants.qlref │ │ └── test.cpp │ │ ├── A18-5-6 │ │ ├── DynamicMemoryManagementFailureMode.expected │ │ ├── DynamicMemoryManagementFailureMode.qlref │ │ └── test.cpp │ │ ├── A18-5-8 │ │ ├── UnnecessaryUseOfDynamicStorage.expected │ │ ├── UnnecessaryUseOfDynamicStorage.qlref │ │ └── test.cpp │ │ ├── A18-5-9 │ │ ├── OperatorDeleteMissingPartnerAutosar.testref │ │ ├── ThrowingNoThrowOperatorNewDeleteAutosar.testref │ │ ├── ThrowingOperatorNewReturnsNullAutosar.testref │ │ └── ThrowingOperatorNewThrowsInvalidExceptionAutosar.testref │ │ ├── A18-9-1 │ │ ├── BindUsed.expected │ │ ├── BindUsed.qlref │ │ └── test.cpp │ │ ├── A18-9-2 │ │ └── ForwardingValuesToOtherFunctions.testref │ │ ├── A18-9-3 │ │ ├── MoveUsedOnConstObjects.expected │ │ ├── MoveUsedOnConstObjects.qlref │ │ └── test.cpp │ │ ├── A18-9-4 │ │ ├── ArgumentToForwardSubsequentlyUsed.expected │ │ ├── ArgumentToForwardSubsequentlyUsed.qlref │ │ └── test.cpp │ │ ├── A2-10-1 │ │ └── IdentifierHiding.testref │ │ ├── A2-10-4 │ │ ├── IdentifierNameOfStaticFunctionReusedInNamespace.expected │ │ ├── IdentifierNameOfStaticFunctionReusedInNamespace.qlref │ │ ├── IdentifierNameOfStaticNonMemberObjectReusedInNamespace.expected │ │ ├── IdentifierNameOfStaticNonMemberObjectReusedInNamespace.qlref │ │ ├── test1a.cpp │ │ └── test1b.cpp │ │ ├── A2-10-5 │ │ ├── IdentifierNameOfANonMemberObjectWithExternalOrInternalLinkageIsReused.expected │ │ ├── IdentifierNameOfANonMemberObjectWithExternalOrInternalLinkageIsReused.qlref │ │ ├── IdentifierNameOfAStaticFunctionIsReused.expected │ │ ├── IdentifierNameOfAStaticFunctionIsReused.qlref │ │ ├── test1a.cpp │ │ └── test1b.cpp │ │ ├── A2-10-6 │ │ ├── ClassOrEnumerationNameHiddenByAFunctionInTheSameScope.expected │ │ ├── ClassOrEnumerationNameHiddenByAFunctionInTheSameScope.qlref │ │ ├── ClassOrEnumerationNameHiddenByAVariableInTheSameScope.expected │ │ ├── ClassOrEnumerationNameHiddenByAVariableInTheSameScope.qlref │ │ ├── ClassOrEnumerationNameHiddenByAnEnumeratorInTheSameScope.expected │ │ ├── ClassOrEnumerationNameHiddenByAnEnumeratorInTheSameScope.qlref │ │ └── test.cpp │ │ ├── A2-11-1 │ │ ├── VolatileKeywordUsed.expected │ │ ├── VolatileKeywordUsed.qlref │ │ └── test.cpp │ │ ├── A2-13-1 │ │ └── EscapeSequenceOutsideISO.testref │ │ ├── A2-13-3 │ │ ├── TypeWcharTUsed.expected │ │ ├── TypeWcharTUsed.qlref │ │ └── test.cpp │ │ ├── A2-13-4 │ │ ├── StringLiteralsAssignedToNonConstantPointers.expected │ │ ├── StringLiteralsAssignedToNonConstantPointers.qlref │ │ └── test.cpp │ │ ├── A2-13-5 │ │ ├── HexadecimalConstantsShouldBeUpperCase.expected │ │ ├── HexadecimalConstantsShouldBeUpperCase.qlref │ │ └── test.cpp │ │ ├── A2-13-6 │ │ ├── UniversalCharacterNamesUsedOutsideCharacterOrStringLiterals.expected │ │ ├── UniversalCharacterNamesUsedOutsideCharacterOrStringLiterals.qlref │ │ └── test.cpp │ │ ├── A2-3-1 │ │ ├── CharacterOutsideTheLanguageStandardBasicSourceCharacterSetUsedInTheSourceCode.expected │ │ ├── CharacterOutsideTheLanguageStandardBasicSourceCharacterSetUsedInTheSourceCode.expected.gcc │ │ ├── CharacterOutsideTheLanguageStandardBasicSourceCharacterSetUsedInTheSourceCode.expected.qcc │ │ ├── CharacterOutsideTheLanguageStandardBasicSourceCharacterSetUsedInTheSourceCode.qlref │ │ ├── InvalidCharacterInComment.expected │ │ ├── InvalidCharacterInComment.qlref │ │ ├── InvalidCharacterInStringLiteral.expected │ │ ├── InvalidCharacterInStringLiteral.qlref │ │ ├── test.cpp │ │ ├── test.cpp.gcc │ │ └── test.cpp.qcc │ │ ├── A2-7-1 │ │ └── SingleLineCommentEndsWithSlash.testref │ │ ├── A2-7-2 │ │ └── SectionsOfCodeCommentedOut.testref │ │ ├── A2-7-3 │ │ ├── UndocumentedUserDefinedType.expected │ │ ├── UndocumentedUserDefinedType.qlref │ │ └── test.cpp │ │ ├── A20-8-1 │ │ └── OwnedPointerValueStoredInUnrelatedSmartPointerAsar.testref │ │ ├── A20-8-2 │ │ ├── UniquePtrNotUsedToRepresentExclusiveOwnership.expected │ │ ├── UniquePtrNotUsedToRepresentExclusiveOwnership.qlref │ │ └── test.cpp │ │ ├── A20-8-3 │ │ ├── SharedPtrNotUsedToRepresentSharedOwnership.expected │ │ ├── SharedPtrNotUsedToRepresentSharedOwnership.qlref │ │ └── test.cpp │ │ ├── A20-8-4 │ │ ├── SharedPointerUsedWithNoOwnershipSharing.expected │ │ ├── SharedPointerUsedWithNoOwnershipSharing.qlref │ │ └── test.cpp │ │ ├── A20-8-5 │ │ ├── MakeUniqueNotUsedToConstructObjectOwnedByUniquePtr.expected │ │ ├── MakeUniqueNotUsedToConstructObjectOwnedByUniquePtr.qlref │ │ └── test.cpp │ │ ├── A20-8-6 │ │ ├── MakeSharedNotUsedToConstructObjectOwnedBySharedPtr.expected │ │ ├── MakeSharedNotUsedToConstructObjectOwnedBySharedPtr.qlref │ │ └── test.cpp │ │ ├── A20-8-7 │ │ ├── WeakPtrNotUsedToRepresentTemporarySharedOwnership.expected │ │ ├── WeakPtrNotUsedToRepresentTemporarySharedOwnership.qlref │ │ └── test.cpp │ │ ├── A21-8-1 │ │ ├── SignedValPassedToChar.expected │ │ ├── SignedValPassedToChar.qlref │ │ └── test.cpp │ │ ├── A23-0-1 │ │ ├── IteratorImplicitlyConvertedToConstIterator.expected │ │ ├── IteratorImplicitlyConvertedToConstIterator.expected.clang │ │ ├── IteratorImplicitlyConvertedToConstIterator.expected.gcc │ │ ├── IteratorImplicitlyConvertedToConstIterator.expected.qcc │ │ ├── IteratorImplicitlyConvertedToConstIterator.qlref │ │ └── test.cpp │ │ ├── A23-0-2 │ │ └── ValidContainerElementAccess.testref │ │ ├── A25-1-1 │ │ └── StateRelatedToFunctionObjectIdentityShallNotBeCopied.testref │ │ ├── A25-4-1 │ │ └── OrderingPredicatesInvariants.testref │ │ ├── A26-5-1 │ │ └── PseudorandomNumbersGeneratedUsingRand.testref │ │ ├── A26-5-2 │ │ ├── RandomNumberEnginesDefaultInitialized.expected │ │ ├── RandomNumberEnginesDefaultInitialized.qlref │ │ └── test.cpp │ │ ├── A27-0-1 │ │ └── InputsFromIndependentComponentsNotValidated.testref │ │ ├── A27-0-2 │ │ ├── BasicStringMayNotBeNullTerminated.testref │ │ ├── BasicStringMayNotBeNullTerminatedAutosar.testref │ │ ├── OperationMayNotNullTerminateCStyleString.testref │ │ └── OperationMayNotNullTerminateCStyleStringAutosar.testref │ │ ├── A27-0-3 │ │ └── InterleavedInputOutputWithoutFlush.testref │ │ ├── A27-0-4 │ │ ├── CStyleStringsUsed.expected │ │ ├── CStyleStringsUsed.qlref │ │ └── test.cpp │ │ ├── A3-1-1 │ │ ├── ViolationsOfOneDefinitionRule.expected │ │ ├── ViolationsOfOneDefinitionRule.qlref │ │ ├── test.cpp │ │ └── test.hpp │ │ ├── A3-1-2 │ │ ├── HeaderFileExpectedFileNameExtension.expected │ │ ├── HeaderFileExpectedFileNameExtension.qlref │ │ ├── headers │ │ │ ├── cheader.c │ │ │ ├── cppheader.cpp │ │ │ ├── hdrheader.hdr │ │ │ ├── hheader.h │ │ │ ├── hppheader.hpp │ │ │ ├── hxxheader.hxx │ │ │ └── incheader.inc │ │ └── test.cpp │ │ ├── A3-1-3 │ │ ├── FileNameExtensionCpp.expected │ │ ├── FileNameExtensionCpp.qlref │ │ ├── test.cc │ │ └── test.cpp │ │ ├── A3-1-4 │ │ ├── ExternalLinkageArrayWithoutExplicitSize.expected │ │ ├── ExternalLinkageArrayWithoutExplicitSize.qlref │ │ └── test.cpp │ │ ├── A3-1-5 │ │ ├── NonTrivialNonTemplateFunctionDefinedInsideClassDefinition.expected │ │ ├── NonTrivialNonTemplateFunctionDefinedInsideClassDefinition.qlref │ │ └── test.cpp │ │ ├── A3-1-6 │ │ ├── TrivialAccessorAndMutatorFunctionsNotInlined.expected │ │ ├── TrivialAccessorAndMutatorFunctionsNotInlined.qlref │ │ └── test.cpp │ │ ├── A3-3-1 │ │ ├── ExternalLinkageNotDeclaredInHeaderFile.expected │ │ ├── ExternalLinkageNotDeclaredInHeaderFile.qlref │ │ ├── test.cpp │ │ └── test.hpp │ │ ├── A3-3-2 │ │ ├── StaticOrThreadLocalObjectsNonConstantInit.expected │ │ ├── StaticOrThreadLocalObjectsNonConstantInit.qlref │ │ └── test.cpp │ │ ├── A3-8-1 │ │ ├── ObjectAccessedAfterLifetime.testref │ │ ├── ObjectAccessedAfterLifetimeAutosar.testref │ │ ├── ObjectAccessedBeforeLifetime.testref │ │ └── ObjectAccessedBeforeLifetimeAutosar.testref │ │ ├── A3-9-1 │ │ ├── VariableWidthIntegerTypesUsed.expected │ │ ├── VariableWidthIntegerTypesUsed.qlref │ │ ├── VariableWidthPlainCharTypeUsed.expected │ │ ├── VariableWidthPlainCharTypeUsed.qlref │ │ └── test.cpp │ │ ├── A4-10-1 │ │ └── NullPointerConstantNotNullptr.testref │ │ ├── A4-5-1 │ │ ├── EnumUsedInArithmeticContexts.expected │ │ ├── EnumUsedInArithmeticContexts.expected.gcc │ │ ├── EnumUsedInArithmeticContexts.expected.qcc │ │ ├── EnumUsedInArithmeticContexts.qlref │ │ ├── enum.cpp │ │ ├── enum.cpp.gcc │ │ ├── enum.cpp.qcc │ │ └── enum_class.cpp │ │ ├── A4-7-1 │ │ ├── IntMultToLong.cpp │ │ ├── IntMultToLong.expected │ │ ├── IntMultToLong.qlref │ │ ├── IntMultToLongc.cpp │ │ ├── IntegerExpressionLeadToDataLoss.expected │ │ ├── IntegerExpressionLeadToDataLoss.qlref │ │ └── test.cpp │ │ ├── A5-0-1 │ │ ├── ExpressionShouldNotRelyOnOrderOfEvaluation.expected │ │ ├── ExpressionShouldNotRelyOnOrderOfEvaluation.qlref │ │ └── test.cpp │ │ ├── A5-0-2 │ │ ├── NonBooleanIfCondition.testref │ │ └── NonBooleanIterationCondition.testref │ │ ├── A5-0-3 │ │ └── DeclarationContainLessThanTwoLevelsOfIndirection.testref │ │ ├── A5-0-4 │ │ ├── PointerArithmeticUsedWithPointersToNonFinalClasses.expected │ │ ├── PointerArithmeticUsedWithPointersToNonFinalClasses.expected.qcc │ │ ├── PointerArithmeticUsedWithPointersToNonFinalClasses.qlref │ │ └── test.cpp │ │ ├── A5-1-1 │ │ ├── LiteralValueUsedOutsideTypeInit.expected │ │ ├── LiteralValueUsedOutsideTypeInit.qlref │ │ └── test.cpp │ │ ├── A5-1-2 │ │ ├── ImplicitLambdaCapture.expected │ │ ├── ImplicitLambdaCapture.qlref │ │ └── test.cpp │ │ ├── A5-1-3 │ │ ├── LambdaExpressionWithoutParameterList.expected │ │ ├── LambdaExpressionWithoutParameterList.qlref │ │ └── test.cpp │ │ ├── A5-1-4 │ │ ├── MovedLambdaObjectOutlivesCaptureByReference.testref │ │ └── ReturnedLambdaObjectOutlivesCaptureByReference.testref │ │ ├── A5-1-6 │ │ ├── LambdaWithImplicitNonVoidReturnType.expected │ │ ├── LambdaWithImplicitNonVoidReturnType.qlref │ │ └── test.cpp │ │ ├── A5-1-7 │ │ ├── LambdaPassedToDecltype.expected │ │ ├── LambdaPassedToDecltype.qlref │ │ ├── LambdaPassedToTypeid.expected │ │ ├── LambdaPassedToTypeid.qlref │ │ └── test.cpp │ │ ├── A5-1-8 │ │ ├── LambdaExpressionInLambdaExpression.expected │ │ ├── LambdaExpressionInLambdaExpression.qlref │ │ └── test.cpp │ │ ├── A5-1-9 │ │ ├── IdenticalLambdaExpressions.expected │ │ ├── IdenticalLambdaExpressions.qlref │ │ └── test.cpp │ │ ├── A5-10-1 │ │ ├── PointerToMemberVirtualFunctionWithNullPointerConstant.testref │ │ └── PotentiallyVirtualPointerOnlyComparesToNullptr.testref │ │ ├── A5-16-1 │ │ ├── TernaryConditionalOperatorUsedAsSubExpression.expected │ │ ├── TernaryConditionalOperatorUsedAsSubExpression.qlref │ │ └── test.cpp │ │ ├── A5-2-1 │ │ ├── DynamicCastShouldNotBeUsed.expected │ │ ├── DynamicCastShouldNotBeUsed.qlref │ │ └── test.cpp │ │ ├── A5-2-2 │ │ ├── TraditionalCStyleCastsUsed.expected │ │ ├── TraditionalCStyleCastsUsed.qlref │ │ ├── options.clang │ │ ├── options.gcc │ │ ├── options.qcc │ │ └── test.cpp │ │ ├── A5-2-3 │ │ └── RemoveConstOrVolatileQualificationAutosar.testref │ │ ├── A5-2-4 │ │ └── ReinterpretCastUsed.testref │ │ ├── A5-2-5 │ │ └── ContainerAccessWithoutRangeCheckAutosar.testref │ │ ├── A5-2-6 │ │ ├── OperandsOfALogicalAndOrNotParenthesized.expected │ │ ├── OperandsOfALogicalAndOrNotParenthesized.qlref │ │ └── test.cpp │ │ ├── A5-3-1 │ │ ├── EvaluationOfTheOperandToTheTypeidOperatorContainSideEffects.expected │ │ ├── EvaluationOfTheOperandToTheTypeidOperatorContainSideEffects.qlref │ │ └── test.cpp │ │ ├── A5-3-2 │ │ └── NullPointersDereferenced.testref │ │ ├── A5-3-3 │ │ └── DeletingPointerToIncompleteType.testref │ │ ├── A5-5-1 │ │ ├── NullPointerToMemberAccessNonExistentClassMembers.testref │ │ ├── PointerToMemberAccessNonExistentClassMembers.testref │ │ └── UninitializedStaticPointerToMemberUse.testref │ │ ├── A5-6-1 │ │ ├── DivisorEqualToZero.expected │ │ ├── DivisorEqualToZero.qlref │ │ └── test.cpp │ │ ├── A6-2-1 │ │ ├── CopyOperatorShallOnlyCopyObject.expected │ │ ├── CopyOperatorShallOnlyCopyObject.qlref │ │ ├── MoveOperatorShallOnlyMoveObject.expected │ │ ├── MoveOperatorShallOnlyMoveObject.qlref │ │ └── test.cpp │ │ ├── A6-2-2 │ │ ├── ExplicitConstructionOfUnnamedTemporary.expected │ │ ├── ExplicitConstructionOfUnnamedTemporary.qlref │ │ └── test.cpp │ │ ├── A6-4-1 │ │ ├── SwitchLessThanTwoCases.expected │ │ ├── SwitchLessThanTwoCases.qlref │ │ └── test.cpp │ │ ├── A6-5-1 │ │ ├── UnusedLoopCounterForContainerIteration.expected │ │ ├── UnusedLoopCounterForContainerIteration.qlref │ │ └── test.cpp │ │ ├── A6-5-2 │ │ ├── FloatingPointLoopCounter.expected │ │ ├── FloatingPointLoopCounter.qlref │ │ ├── MultipleLoopCounters.expected │ │ ├── MultipleLoopCounters.qlref │ │ └── test.cpp │ │ ├── A6-5-3 │ │ ├── DoStatementsShouldNotBeUsed.expected │ │ ├── DoStatementsShouldNotBeUsed.qlref │ │ └── test.cpp │ │ ├── A6-5-4 │ │ ├── ForLoopInitializesNonLoopCounter.expected │ │ ├── ForLoopInitializesNonLoopCounter.qlref │ │ ├── ForLoopModifiesNonLoopCounter.expected │ │ ├── ForLoopModifiesNonLoopCounter.qlref │ │ └── test.cpp │ │ ├── A6-6-1 │ │ └── GotoStatementUsed.testref │ │ ├── A7-1-1 │ │ ├── DeclarationUnmodifiedObjectMissingConstSpecifier.expected │ │ ├── DeclarationUnmodifiedObjectMissingConstSpecifier.qlref │ │ └── test.cpp │ │ ├── A7-1-2 │ │ ├── VariableMissingConstexpr.expected │ │ ├── VariableMissingConstexpr.qlref │ │ └── test.cpp │ │ ├── A7-1-3 │ │ ├── CvQualifiersNotPlacedOnTheRightHandSide.expected │ │ ├── CvQualifiersNotPlacedOnTheRightHandSide.qlref │ │ └── test.cpp │ │ ├── A7-1-4 │ │ ├── RegisterKeywordUsed.expected │ │ ├── RegisterKeywordUsed.qlref │ │ └── test.cpp │ │ ├── A7-1-5 │ │ ├── AutoSpecifierNotUsedAppropriatelyInFunctionDefinition.expected │ │ ├── AutoSpecifierNotUsedAppropriatelyInFunctionDefinition.qlref │ │ ├── AutoSpecifierNotUsedAppropriatelyInVariableDefinition.expected │ │ ├── AutoSpecifierNotUsedAppropriatelyInVariableDefinition.qlref │ │ └── test.cpp │ │ ├── A7-1-6 │ │ ├── TypedefSpecifierUsed.expected │ │ ├── TypedefSpecifierUsed.qlref │ │ └── test.cpp │ │ ├── A7-1-7 │ │ ├── IdentifierDeclarationAndInitializationNotOnSeparateLines.expected │ │ ├── IdentifierDeclarationAndInitializationNotOnSeparateLines.qlref │ │ └── test.cpp │ │ ├── A7-1-9 │ │ ├── ClassStructEnumDeclaredInDefinition.expected │ │ ├── ClassStructEnumDeclaredInDefinition.qlref │ │ └── test.cpp │ │ ├── A7-2-1 │ │ ├── NonEnumeratorEnumValue.expected │ │ ├── NonEnumeratorEnumValue.qlref │ │ └── test.cpp │ │ ├── A7-2-2 │ │ └── EnumerationUnderlyingBaseTypeNotExplicitlyDefined.testref │ │ ├── A7-2-3 │ │ ├── EnumerationsNotDeclaredAsScopedEnumClasses.expected │ │ ├── EnumerationsNotDeclaredAsScopedEnumClasses.qlref │ │ └── test.cpp │ │ ├── A7-2-4 │ │ ├── NoneFirstOrAllEnumeratorsNotInitialized.expected │ │ ├── NoneFirstOrAllEnumeratorsNotInitialized.qlref │ │ └── test.cpp │ │ ├── A7-2-5 │ │ ├── IntegerUsedForEnum.expected │ │ ├── IntegerUsedForEnum.qlref │ │ ├── UseOfEnumForRelatedConstants.expected │ │ ├── UseOfEnumForRelatedConstants.qlref │ │ └── test.cpp │ │ ├── A7-3-1 │ │ ├── DefinitionNotConsideredForUnqualifiedLookup.testref │ │ ├── HiddenInheritedNonOverridableMemberFunction.testref │ │ └── HiddenInheritedOverridableMemberFunction.testref │ │ ├── A7-4-1 │ │ └── AsmDeclarationUsed.testref │ │ ├── A7-5-1 │ │ ├── InvalidFunctionReturnType.expected │ │ ├── InvalidFunctionReturnType.qlref │ │ └── test.cpp │ │ ├── A7-5-2 │ │ └── RecursiveFunctions.testref │ │ ├── A7-6-1 │ │ ├── FunctionNoReturnAttributeCondition.testref │ │ └── FunctionNoReturnAttributeConditionAutosar.testref │ │ ├── A8-4-1 │ │ ├── FunctionsDefinedUsingTheEllipsisNotation.expected │ │ ├── FunctionsDefinedUsingTheEllipsisNotation.qlref │ │ └── test.cpp │ │ ├── A8-4-10 │ │ ├── ParameterNotPassedByReference.expected │ │ ├── ParameterNotPassedByReference.qlref │ │ └── test.cpp │ │ ├── A8-4-11 │ │ ├── SmartPointerAsParameterWithoutLifetimeSemantics.expected │ │ ├── SmartPointerAsParameterWithoutLifetimeSemantics.qlref │ │ └── test.cpp │ │ ├── A8-4-12 │ │ ├── UniquePtrPassedToFunctionWithImproperSemantics.expected │ │ ├── UniquePtrPassedToFunctionWithImproperSemantics.qlref │ │ └── test.cpp │ │ ├── A8-4-13 │ │ ├── SharedPtrPassedToFunctionWithImproperSemantics.expected │ │ ├── SharedPtrPassedToFunctionWithImproperSemantics.qlref │ │ └── test.cpp │ │ ├── A8-4-2 │ │ ├── NonVoidFunctionDoesNotReturn.testref │ │ └── NonVoidFunctionDoesNotReturnAutosar.testref │ │ ├── A8-4-4 │ │ ├── FunctionReturnMultipleValueCondition.expected │ │ ├── FunctionReturnMultipleValueCondition.qlref │ │ └── test.cpp │ │ ├── A8-4-5 │ │ ├── MoveFromConsumeParametersRvalRef.expected │ │ ├── MoveFromConsumeParametersRvalRef.qlref │ │ └── test.cpp │ │ ├── A8-4-6 │ │ ├── ForwardForwardingReferences.expected │ │ ├── ForwardForwardingReferences.qlref │ │ └── test.cpp │ │ ├── A8-4-7 │ │ ├── InParametersForCheapToCopyTypesNotPassedByValue.expected │ │ ├── InParametersForCheapToCopyTypesNotPassedByValue.qlref │ │ ├── InParametersForNotCheapToCopyTypesNotPassedByReference.expected │ │ ├── InParametersForNotCheapToCopyTypesNotPassedByReference.qlref │ │ └── test.cpp │ │ ├── A8-4-8 │ │ ├── OutputParametersUsed.expected │ │ ├── OutputParametersUsed.qlref │ │ └── test.cpp │ │ ├── A8-4-9 │ │ ├── InOutParametersDeclaredAsTNotModified.expected │ │ ├── InOutParametersDeclaredAsTNotModified.qlref │ │ └── test.cpp │ │ ├── A8-5-0 │ │ └── MemoryNotInitializedBeforeItIsRead.testref │ │ ├── A8-5-1 │ │ └── InitializationListOutOfOrder.testref │ │ ├── A8-5-2 │ │ ├── UseBracedVariableInitialization.expected │ │ ├── UseBracedVariableInitialization.qlref │ │ └── test.cpp │ │ ├── A8-5-3 │ │ ├── AvoidAutoWithBracedInitialization.expected │ │ ├── AvoidAutoWithBracedInitialization.qlref │ │ └── test.cpp │ │ ├── A8-5-4 │ │ └── ConfusingUseOfInitializerListConstructors.testref │ │ ├── A9-3-1 │ │ ├── ReturnsNonConstRawPointersOrReferencesToPrivateOrProtectedData.expected │ │ ├── ReturnsNonConstRawPointersOrReferencesToPrivateOrProtectedData.qlref │ │ └── test.cpp │ │ ├── A9-5-1 │ │ ├── UnionsUsed.expected │ │ ├── UnionsUsed.qlref │ │ └── test.cpp │ │ ├── A9-6-1 │ │ ├── DataTypesUsedForInterfacingWithHardwareOrProtocolsMustBeTrivialAndStandardLayout.expected │ │ ├── DataTypesUsedForInterfacingWithHardwareOrProtocolsMustBeTrivialAndStandardLayout.qlref │ │ ├── DataTypesUsedForInterfacingWithHardwareOrProtocolsMustContainOnlyDefinedDataTypeSizes.expected │ │ ├── DataTypesUsedForInterfacingWithHardwareOrProtocolsMustContainOnlyDefinedDataTypeSizes.qlref │ │ └── test.cpp │ │ ├── A9-6-2 │ │ ├── AuditPossibleHardwareInterfaceDueToBitFieldUsageInDataTypeDefinition.expected │ │ ├── AuditPossibleHardwareInterfaceDueToBitFieldUsageInDataTypeDefinition.qlref │ │ ├── BitFieldsShallBeUsedOnlyWhenInterfacingToHardwareOrConformingToCommunicationProtocols.expected │ │ ├── BitFieldsShallBeUsedOnlyWhenInterfacingToHardwareOrConformingToCommunicationProtocols.qlref │ │ └── test.cpp │ │ ├── M0-1-1 │ │ └── UnreachableCode.testref │ │ ├── M0-1-10.1 │ │ ├── UnusedFunction.expected │ │ ├── UnusedFunction.qlref │ │ └── test.cpp │ │ ├── M0-1-10 │ │ ├── UnusedFunction.expected │ │ ├── UnusedFunction.qlref │ │ ├── UnusedSplMemberFunction.expected │ │ ├── UnusedSplMemberFunction.qlref │ │ ├── test.cpp │ │ └── test.hpp │ │ ├── M0-1-2 │ │ ├── InfeasiblePath.expected │ │ ├── InfeasiblePath.qlref │ │ └── test.cpp │ │ ├── M0-1-3 │ │ ├── UnusedGlobalOrNamespaceVariable.expected │ │ ├── UnusedGlobalOrNamespaceVariable.qlref │ │ ├── UnusedLocalVariable.expected │ │ ├── UnusedLocalVariable.qlref │ │ ├── UnusedMemberVariable.expected │ │ ├── UnusedMemberVariable.qlref │ │ ├── test.cpp │ │ ├── test_global_or_namespace.cpp │ │ └── test_member.cpp │ │ ├── M0-1-4 │ │ ├── SingleUseGlobalOrNamespacePODVariable.expected │ │ ├── SingleUseGlobalOrNamespacePODVariable.qlref │ │ ├── SingleUseLocalPODVariable.expected │ │ ├── SingleUseLocalPODVariable.qlref │ │ ├── SingleUseMemberPODVariable.expected │ │ ├── SingleUseMemberPODVariable.qlref │ │ ├── test.cpp │ │ ├── test_global_or_namespace.cpp │ │ └── test_member.cpp │ │ ├── M0-1-8 │ │ ├── FunctionsWithVoidReturnTypeShallHaveExternalSideEffects.expected │ │ ├── FunctionsWithVoidReturnTypeShallHaveExternalSideEffects.qlref │ │ └── test.cpp │ │ ├── M0-1-9 │ │ └── DeadCode.testref │ │ ├── M0-2-1 │ │ ├── DoNotPassAliasedPointerToParam.testref │ │ ├── ObjectAssignedToAnOverlappingObject.expected │ │ ├── ObjectAssignedToAnOverlappingObject.qlref │ │ └── test.cpp │ │ ├── M0-3-2 │ │ └── FunctionErroneousReturnValueNotTested.testref │ │ ├── M10-1-1 │ │ ├── ClassesShouldNotBeDerivedFromVirtualBases.expected │ │ ├── ClassesShouldNotBeDerivedFromVirtualBases.qlref │ │ └── test.cpp │ │ ├── M10-1-2 │ │ ├── BaseClassCanBeVirtualOnlyInDiamondHierarchy.expected │ │ ├── BaseClassCanBeVirtualOnlyInDiamondHierarchy.qlref │ │ └── test.cpp │ │ ├── M10-1-3 │ │ └── AccessibleBaseClassBothVirtualAndNonVirtualInHierarchy.testref │ │ ├── M10-2-1 │ │ ├── UniqueAccessibleEntityNamesInMultipleInheritance.expected │ │ ├── UniqueAccessibleEntityNamesInMultipleInheritance.qlref │ │ └── test.cpp │ │ ├── M10-3-3 │ │ ├── VirtualFunctionOverriddenByAPureVirtualFunction.expected │ │ ├── VirtualFunctionOverriddenByAPureVirtualFunction.qlref │ │ └── test.cpp │ │ ├── M11-0-1 │ │ ├── MemberDataInNonPodClassTypesNotPrivate.expected │ │ ├── MemberDataInNonPodClassTypesNotPrivate.qlref │ │ └── test.cpp │ │ ├── M12-1-1 │ │ └── DynamicTypeOfThisUsedFromConstructorOrDestructor.testref │ │ ├── M14-5-3 │ │ ├── CopyAssignmentOperatorNotDeclared.expected │ │ ├── CopyAssignmentOperatorNotDeclared.qlref │ │ └── test.cpp │ │ ├── M14-6-1 │ │ ├── NameNotReferredUsingAQualifiedIdOrThis.testref │ │ └── NameNotReferredUsingAQualifiedIdOrThisAudit.testref │ │ ├── M15-0-3 │ │ ├── GotoToCatchBlock.expected │ │ ├── GotoToCatchBlock.qlref │ │ ├── SwitchToCatchBlock.expected │ │ ├── SwitchToCatchBlock.qlref │ │ └── test.cpp │ │ ├── M15-1-1 │ │ ├── ExceptionThrownDuringThrow.expected │ │ ├── ExceptionThrownDuringThrow.qlref │ │ └── test.cpp │ │ ├── M15-1-2 │ │ ├── NullThrownExplicitly.expected │ │ ├── NullThrownExplicitly.qlref │ │ └── test.cpp │ │ ├── M15-1-3 │ │ └── EmptyThrowOutsideCatch.testref │ │ ├── M15-3-1 │ │ ├── ExceptionRaisedDuringStartup.testref │ │ ├── ExceptionRaisedDuringTermination.expected │ │ ├── ExceptionRaisedDuringTermination.qlref │ │ └── test.cpp │ │ ├── M15-3-3 │ │ └── DestroyedValueReferencedInDestructorCatchBlock.testref │ │ ├── M15-3-4 │ │ ├── CatchAllExplicitlyThrownExceptions.expected │ │ ├── CatchAllExplicitlyThrownExceptions.qlref │ │ └── test.cpp │ │ ├── M15-3-6 │ │ ├── CatchBlockShadowing.testref │ │ └── CatchBlockShadowingMisra.testref │ │ ├── M15-3-7 │ │ ├── CatchAllHandlerLast.expected │ │ ├── CatchAllHandlerLast.qlref │ │ └── test.cpp │ │ ├── M16-0-1 │ │ └── IncludeDirectivesNotPrecededByDirectivesOrComments.testref │ │ ├── M16-0-2 │ │ ├── MacrosShallOnlyBeDefinedOrUndefdInTheGlobalNamespace.expected │ │ ├── MacrosShallOnlyBeDefinedOrUndefdInTheGlobalNamespace.qlref │ │ └── test.cpp │ │ ├── M16-0-5 │ │ └── FunctionLikeMacroArgsContainHashToken.testref │ │ ├── M16-0-6 │ │ └── FunctionLikeMacroParameterNotEnclosedInParentheses.testref │ │ ├── M16-0-7 │ │ └── UndefinedMacroIdentifiersUsedIn.testref │ │ ├── M16-1-1 │ │ ├── DefinedPreProcessorOperatorGeneratedFromExpansionFound.expected │ │ ├── DefinedPreProcessorOperatorGeneratedFromExpansionFound.qlref │ │ ├── DefinedPreProcessorOperatorInOneOfTheTwoStandardForms.expected │ │ ├── DefinedPreProcessorOperatorInOneOfTheTwoStandardForms.qlref │ │ └── test.cpp │ │ ├── M16-2-3 │ │ ├── IncludeGuardsNotProvided.testref │ │ └── NonUniqueIncludeGuardsCpp.testref │ │ ├── M16-3-1 │ │ ├── MoreThanOneOccurrenceHashOperatorInMacroDefinition.expected │ │ ├── MoreThanOneOccurrenceHashOperatorInMacroDefinition.qlref │ │ └── test.cpp │ │ ├── M16-3-2 │ │ └── HashOperatorsShouldNotBeUsed.testref │ │ ├── M17-0-2 │ │ ├── NameOfStandardLibraryMacroOrObjectReused.expected │ │ ├── NameOfStandardLibraryMacroOrObjectReused.qlref │ │ └── test.cpp │ │ ├── M17-0-3 │ │ ├── NameOfStandardLibraryFunctionIsOverridden.expected │ │ ├── NameOfStandardLibraryFunctionIsOverridden.qlref │ │ └── test.cpp │ │ ├── M17-0-5 │ │ └── SetjmpMacroAndTheLongjmpFunctionUsed.testref │ │ ├── M18-0-3 │ │ ├── LibraryFunctionsAbortExitGetenvAndSystemFromLibraryCstdlibUsed.expected │ │ ├── LibraryFunctionsAbortExitGetenvAndSystemFromLibraryCstdlibUsed.qlref │ │ └── test.cpp │ │ ├── M18-0-4 │ │ ├── TimeHandlingFunctionsOfLibraryCtimeUsed.expected │ │ ├── TimeHandlingFunctionsOfLibraryCtimeUsed.qlref │ │ └── test.cpp │ │ ├── M18-0-5 │ │ ├── UnboundedFunctionsOfLibraryCstringUsed.expected │ │ ├── UnboundedFunctionsOfLibraryCstringUsed.qlref │ │ └── test.cpp │ │ ├── M18-2-1 │ │ └── MacroOffsetofUsed.testref │ │ ├── M18-7-1 │ │ ├── CsignalFunctionsUsed.testref │ │ └── CsignalTypesUsed.testref │ │ ├── M19-3-1 │ │ ├── ErrnoUsed.expected │ │ ├── ErrnoUsed.qlref │ │ └── test.cpp │ │ ├── M2-10-1 │ │ └── DifferentIdentifiersNotTypographicallyUnambiguous.testref │ │ ├── M2-13-2 │ │ ├── UseOfNonZeroOctalEscape.expected │ │ ├── UseOfNonZeroOctalEscape.qlref │ │ ├── UseOfNonZeroOctalLiteral.testref │ │ └── test.cpp │ │ ├── M2-13-3 │ │ └── MissingUSuffix.testref │ │ ├── M2-13-4 │ │ ├── LiteralSuffixNotUpperCase.expected │ │ ├── LiteralSuffixNotUpperCase.qlref │ │ └── test.cpp │ │ ├── M2-7-1 │ │ └── SlashStarUsedWithinACStyleComment.testref │ │ ├── M27-0-1 │ │ ├── CstdioFunctionsUsed.testref │ │ ├── CstdioMacrosUsed.testref │ │ └── CstdioTypesUsed.testref │ │ ├── M3-1-2 │ │ ├── FunctionsDeclaredAtBlockScope.expected │ │ ├── FunctionsDeclaredAtBlockScope.qlref │ │ └── test.cpp │ │ ├── M3-2-1 │ │ ├── DeclarationsOfAFunctionShallHaveCompatibleTypes.expected │ │ ├── DeclarationsOfAFunctionShallHaveCompatibleTypes.qlref │ │ ├── DeclarationsOfAnObjectShallHaveCompatibleTypes.expected │ │ ├── DeclarationsOfAnObjectShallHaveCompatibleTypes.qlref │ │ ├── test.cpp │ │ ├── test_declarations_of_a_function_shall_have_compatible_types_unit1.cpp │ │ ├── test_declarations_of_a_function_shall_have_compatible_types_unit2.cpp │ │ ├── test_declarations_of_an_object_shall_have_compatible_types_unit1.cpp │ │ └── test_declarations_of_an_object_shall_have_compatible_types_unit2.cpp │ │ ├── M3-2-2 │ │ └── OneDefinitionRuleViolation.testref │ │ ├── M3-2-3 │ │ ├── MultipleDeclarationViolation.expected │ │ ├── MultipleDeclarationViolation.qlref │ │ ├── test.cpp │ │ ├── test.h │ │ ├── test1.cpp │ │ └── test2.cpp │ │ ├── M3-2-4 │ │ └── IdentifierWithExternalLinkageShallHaveOneDefinition.testref │ │ ├── M3-3-2 │ │ └── MissingStaticSpecifierOnFunctionRedeclaration.testref │ │ ├── M3-4-1 │ │ └── UnnecessaryExposedIdentifierDeclaration.testref │ │ ├── M3-9-1 │ │ ├── TypesNotIdenticalInObjectDeclarations.expected │ │ ├── TypesNotIdenticalInObjectDeclarations.qlref │ │ ├── TypesNotIdenticalInReturnDeclarations.expected │ │ ├── TypesNotIdenticalInReturnDeclarations.qlref │ │ ├── test.cpp │ │ ├── test_types_not_identical_in_object_declarations.cpp │ │ └── test_types_not_identical_in_return_declarations.cpp │ │ ├── M3-9-3 │ │ ├── UnderlyingBitRepresentationsOfFloatingPointValuesUsed.expected │ │ ├── UnderlyingBitRepresentationsOfFloatingPointValuesUsed.qlref │ │ └── test.cpp │ │ ├── M4-10-1 │ │ ├── NullUsedAsIntegerValue.expected │ │ ├── NullUsedAsIntegerValue.qlref │ │ └── test.cpp │ │ ├── M4-10-2 │ │ ├── LiteralZeroUsedAsNullPointerConstant.expected │ │ ├── LiteralZeroUsedAsNullPointerConstant.qlref │ │ └── test.cpp │ │ ├── M4-5-1 │ │ ├── BoolOperandsToDisallowedBuiltInOperators.expected │ │ ├── BoolOperandsToDisallowedBuiltInOperators.qlref │ │ └── test.cpp │ │ ├── M4-5-3 │ │ ├── CharUsedAsOperandsToDisallowedBuiltInOperators.expected │ │ ├── CharUsedAsOperandsToDisallowedBuiltInOperators.qlref │ │ └── test.cpp │ │ ├── M5-0-10 │ │ ├── UnsignedBitwiseOperatorWithoutCast.expected │ │ ├── UnsignedBitwiseOperatorWithoutCast.qlref │ │ └── test.cpp │ │ ├── M5-0-11 │ │ ├── PlainCharTypeShallOnlyBeUsedForTheStorageAndUseOfCharacterValues.expected │ │ ├── PlainCharTypeShallOnlyBeUsedForTheStorageAndUseOfCharacterValues.qlref │ │ └── test.cpp │ │ ├── M5-0-12 │ │ ├── SignedCharAndUnsignedCharTypeShallOnlyBeUsedForTheStorageAndUseOfNumericValues.expected │ │ ├── SignedCharAndUnsignedCharTypeShallOnlyBeUsedForTheStorageAndUseOfNumericValues.qlref │ │ └── test.cpp │ │ ├── M5-0-14 │ │ ├── TernaryOperatorConditionNotTypeBool.expected │ │ ├── TernaryOperatorConditionNotTypeBool.qlref │ │ └── test.cpp │ │ ├── M5-0-15 │ │ └── IndexingNotTheOnlyFormOfPointerArithmetic.testref │ │ ├── M5-0-16 │ │ └── PointerAndDerivedPointerAccessDifferentArray.testref │ │ ├── M5-0-17 │ │ └── PointerSubtractionOnDifferentArrays.testref │ │ ├── M5-0-18 │ │ └── AppliedToObjectsOfPointerType.testref │ │ ├── M5-0-2 │ │ ├── GratuitousUseOfParentheses.expected │ │ ├── GratuitousUseOfParentheses.qlref │ │ ├── InsufficientUseOfParentheses.expected │ │ ├── InsufficientUseOfParentheses.qlref │ │ └── test.cpp │ │ ├── M5-0-20 │ │ ├── BitwiseOperatorOperandsHaveDifferentUnderlyingType.expected │ │ ├── BitwiseOperatorOperandsHaveDifferentUnderlyingType.qlref │ │ └── test.cpp │ │ ├── M5-0-21 │ │ ├── BitwiseOperatorAppliedToSignedTypes.expected │ │ ├── BitwiseOperatorAppliedToSignedTypes.qlref │ │ └── test.cpp │ │ ├── M5-0-3 │ │ ├── CvalueExpressionConvertedToDifferentUnderlyingType.expected │ │ ├── CvalueExpressionConvertedToDifferentUnderlyingType.qlref │ │ └── test.cpp │ │ ├── M5-0-4 │ │ ├── ImplicitChangeOfTheSignednessOfTheUnderlyingType.expected │ │ ├── ImplicitChangeOfTheSignednessOfTheUnderlyingType.qlref │ │ └── test.cpp │ │ ├── M5-0-5 │ │ ├── ImplicitConstFloatingIntegralConversion.expected │ │ ├── ImplicitConstFloatingIntegralConversion.qlref │ │ ├── ImplicitNonConstFloatingIntegralConversion.expected │ │ ├── ImplicitNonConstFloatingIntegralConversion.qlref │ │ └── test.cpp │ │ ├── M5-0-6 │ │ ├── ImplicitConstConversionToSmallerUnderlyingType.expected │ │ ├── ImplicitConstConversionToSmallerUnderlyingType.qlref │ │ ├── ImplicitNonConstConversionToSmallerUnderlyingType.expected │ │ ├── ImplicitNonConstConversionToSmallerUnderlyingType.qlref │ │ └── test.cpp │ │ ├── M5-0-7 │ │ ├── ExplicitFloatingIntegralConversionOfACValueExpr.expected │ │ ├── ExplicitFloatingIntegralConversionOfACValueExpr.qlref │ │ └── test.cpp │ │ ├── M5-0-8 │ │ ├── ExplicitWideningConversionOfACValueExpr.expected │ │ ├── ExplicitWideningConversionOfACValueExpr.qlref │ │ └── test.cpp │ │ ├── M5-0-9 │ │ ├── ExplicitSignednessConversionOfCValue.expected │ │ ├── ExplicitSignednessConversionOfCValue.qlref │ │ └── test.cpp │ │ ├── M5-14-1 │ │ ├── RightHandOperandOfALogicalAndOperatorsContainSideEffects.expected │ │ ├── RightHandOperandOfALogicalAndOperatorsContainSideEffects.qlref │ │ └── test.cpp │ │ ├── M5-17-1 │ │ ├── SemanticEquivalenceBetweenOperatorFormNotPreserved.expected │ │ ├── SemanticEquivalenceBetweenOperatorFormNotPreserved.qlref │ │ └── test.cpp │ │ ├── M5-18-1 │ │ └── CommaOperatorUsed.testref │ │ ├── M5-19-1 │ │ └── ConstantUnsignedIntegerExpressionsWrapAround.testref │ │ ├── M5-2-10 │ │ ├── IncrementAndDecrementOperatorsMixedWithOtherOperatorsInExpression.expected │ │ ├── IncrementAndDecrementOperatorsMixedWithOtherOperatorsInExpression.qlref │ │ └── test.cpp │ │ ├── M5-2-11 │ │ ├── CommaOperatorAndOperatorAndTheOperatorOverloaded.expected │ │ ├── CommaOperatorAndOperatorAndTheOperatorOverloaded.qlref │ │ └── test.cpp │ │ ├── M5-2-12 │ │ └── IdentifierWithArrayTypePassedAsFunctionArgumentDecayToAPointer.testref │ │ ├── M5-2-2 │ │ ├── PointerToAVirtualBaseClassCastToAPointer.expected │ │ ├── PointerToAVirtualBaseClassCastToAPointer.qlref │ │ └── test.cpp │ │ ├── M5-2-3 │ │ ├── DowncastingShouldNotBePerformedOnPolymorphicTypes.expected │ │ ├── DowncastingShouldNotBePerformedOnPolymorphicTypes.qlref │ │ └── test.cpp │ │ ├── M5-2-6 │ │ └── CastNotConvertPointerToFunction.testref │ │ ├── M5-2-8 │ │ ├── IntegerOrPointerToVoidConvertedToPointerType.expected │ │ ├── IntegerOrPointerToVoidConvertedToPointerType.qlref │ │ └── test.cpp │ │ ├── M5-2-9 │ │ ├── CastConvertAPointerTypeToAnIntegralType.expected │ │ ├── CastConvertAPointerTypeToAnIntegralType.qlref │ │ └── test.cpp │ │ ├── M5-3-1 │ │ ├── EachOperandOfTheOperatorTheLogicalAndOrTheLogicalOperatorsShallHaveTypeBool.expected │ │ ├── EachOperandOfTheOperatorTheLogicalAndOrTheLogicalOperatorsShallHaveTypeBool.qlref │ │ └── test.cpp │ │ ├── M5-3-2 │ │ └── UnaryMinusOperatorAppliedToAnExpressionWhoseUnderlyingTypeIsUnsigned.testref │ │ ├── M5-3-3 │ │ └── UnaryOperatorOverloaded.testref │ │ ├── M5-3-4 │ │ ├── EvaluationOfTheOperandToTheSizeofOperatorContainSideEffects.expected │ │ ├── EvaluationOfTheOperandToTheSizeofOperatorContainSideEffects.qlref │ │ └── test.cpp │ │ ├── M5-8-1 │ │ ├── RightBitShiftOperandIsNegativeOrTooWide.expected │ │ ├── RightBitShiftOperandIsNegativeOrTooWide.qlref │ │ └── test.cpp │ │ ├── M6-2-1 │ │ ├── AssignmentInSubExpression.expected │ │ ├── AssignmentInSubExpression.qlref │ │ └── test.cpp │ │ ├── M6-2-2 │ │ ├── FloatsTestedForEquality.expected │ │ ├── FloatsTestedForEquality.qlref │ │ └── test.cpp │ │ ├── M6-2-3 │ │ ├── NullOnSharedLine.expected │ │ ├── NullOnSharedLine.qlref │ │ └── test.cpp │ │ ├── M6-3-1 │ │ ├── LoopCompoundCondition.testref │ │ └── SwitchCompoundCondition.testref │ │ ├── M6-4-1 │ │ ├── IfCompoundCondition.expected │ │ ├── IfCompoundCondition.qlref │ │ └── test.cpp │ │ ├── M6-4-2 │ │ └── IfElseTerminationCondition.testref │ │ ├── M6-4-3 │ │ ├── SwitchDoesNotStartWithCase.testref │ │ └── SwitchStatementNotWellFormed.testref │ │ ├── M6-4-4 │ │ └── NestedCaseInSwitch.testref │ │ ├── M6-4-5 │ │ ├── NonEmptySwitchClauseDoesNotTerminate.expected │ │ ├── NonEmptySwitchClauseDoesNotTerminate.qlref │ │ └── test.cpp │ │ ├── M6-4-6 │ │ ├── MissingDefaultInSwitch.expected │ │ ├── MissingDefaultInSwitch.qlref │ │ ├── SwitchFinalClauseNotDefault.expected │ │ ├── SwitchFinalClauseNotDefault.qlref │ │ └── test.cpp │ │ ├── M6-4-7 │ │ ├── BooleanInSwitchCondition.expected │ │ ├── BooleanInSwitchCondition.qlref │ │ └── test.cpp │ │ ├── M6-5-2 │ │ ├── NotEqualsInLoopCondition.expected │ │ ├── NotEqualsInLoopCondition.qlref │ │ └── test.cpp │ │ ├── M6-5-3 │ │ ├── LoopCounterModifiedWithinCondition.expected │ │ ├── LoopCounterModifiedWithinCondition.qlref │ │ ├── LoopCounterModifiedWithinStatement.expected │ │ ├── LoopCounterModifiedWithinStatement.qlref │ │ └── test.cpp │ │ ├── M6-5-4 │ │ ├── IrregularLoopCounterModification.expected │ │ ├── IrregularLoopCounterModification.qlref │ │ └── test.cpp │ │ ├── M6-5-5 │ │ ├── LoopControlVariableModifiedInLoopCondition.expected │ │ ├── LoopControlVariableModifiedInLoopCondition.qlref │ │ ├── LoopControlVariableModifiedInLoopExpression.expected │ │ ├── LoopControlVariableModifiedInLoopExpression.qlref │ │ └── test.cpp │ │ ├── M6-5-6 │ │ ├── NonBooleanLoopControlVariable.expected │ │ ├── NonBooleanLoopControlVariable.qlref │ │ └── test.cpp │ │ ├── M6-6-1 │ │ ├── GotoBlockCondition.expected │ │ ├── GotoBlockCondition.qlref │ │ └── test.cpp │ │ ├── M6-6-2 │ │ └── GotoStatementJumpCondition.testref │ │ ├── M6-6-3 │ │ ├── ContinueInForLoopCondition.expected │ │ ├── ContinueInForLoopCondition.qlref │ │ └── test.cpp │ │ ├── M7-1-2 │ │ ├── PointerOrReferenceParameterToConst.expected │ │ ├── PointerOrReferenceParameterToConst.qlref │ │ └── test.cpp │ │ ├── M7-3-1 │ │ └── GlobalNamespaceMembershipViolation.testref │ │ ├── M7-3-2 │ │ └── IdentifierMainUsedForAFunctionOtherThanTheGlobalFunctionMain.testref │ │ ├── M7-3-3 │ │ ├── UnnamedNamespacesInHeaderFile.expected │ │ ├── UnnamedNamespacesInHeaderFile.qlref │ │ ├── test.cpp │ │ ├── test.h │ │ └── test.hpp │ │ ├── M7-3-4 │ │ ├── UsingDirectivesUsed.expected │ │ ├── UsingDirectivesUsed.qlref │ │ └── test.cpp │ │ ├── M7-3-6 │ │ ├── UsingDeclarationsUsedInHeaderFiles.expected │ │ ├── UsingDeclarationsUsedInHeaderFiles.qlref │ │ ├── test.cpp │ │ └── test.h │ │ ├── M7-4-1 │ │ ├── UsageOfAssemblerNotDocumented.expected │ │ ├── UsageOfAssemblerNotDocumented.testref │ │ └── test.cpp │ │ ├── M7-4-2 │ │ ├── AssmemblerInstructionsCondition.expected │ │ ├── AssmemblerInstructionsCondition.qlref │ │ └── test.cpp │ │ ├── M7-4-3 │ │ ├── AssemblyLanguageCondition.expected │ │ ├── AssemblyLanguageCondition.qlref │ │ └── test.cpp │ │ ├── M7-5-1 │ │ └── FunctionReturnAutomaticVarCondition.testref │ │ ├── M7-5-2 │ │ └── AssignmentOfEscapingAutoStorage.testref │ │ ├── M8-0-1 │ │ ├── MultipleGlobalOrMemberDeclarators.testref │ │ └── MultipleLocalDeclarators.testref │ │ ├── M8-3-1 │ │ └── VirtualFunctionParametersUseTheSameDefaultArguments.testref │ │ ├── M8-4-2 │ │ ├── NonIdenticalIdentifierUsedForTheParameterInReDeclarationOfAFunction.expected │ │ ├── NonIdenticalIdentifierUsedForTheParameterInReDeclarationOfAFunction.qlref │ │ └── test.cpp │ │ ├── M8-4-4 │ │ ├── FunctionIdentifierCondition.expected │ │ ├── FunctionIdentifierCondition.qlref │ │ └── test.cpp │ │ ├── M8-5-2 │ │ ├── MissingExplicitInitializers.expected │ │ ├── MissingExplicitInitializers.qlref │ │ ├── NestedZeroValueInitialization.expected │ │ ├── NestedZeroValueInitialization.qlref │ │ ├── UseInitBracesToMatchTypeStructure.testref │ │ └── test.cpp │ │ ├── M9-3-1 │ │ ├── ConstMemberFunctionReturnsNonConstPointer.expected │ │ ├── ConstMemberFunctionReturnsNonConstPointer.qlref │ │ └── test.cpp │ │ ├── M9-3-3 │ │ ├── MemberFunctionConstIfPossible.expected │ │ ├── MemberFunctionConstIfPossible.qlref │ │ ├── MemberFunctionStaticIfPossible.expected │ │ ├── MemberFunctionStaticIfPossible.qlref │ │ └── test.cpp │ │ └── M9-6-4 │ │ └── NamedBitFieldsWithSignedIntegerTypeShallHaveALengthOfMoreThanOneBit.testref ├── cert │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codeql-suites │ │ │ ├── cert-cpp-default.qls │ │ │ ├── cert-cpp-l1.qls │ │ │ ├── cert-cpp-l2.qls │ │ │ ├── cert-cpp-l3.qls │ │ │ ├── cert-cpp-single-translation-unit.qls │ │ │ ├── cert-default.qls │ │ │ └── cert-single-translation-unit.qls │ │ ├── codingstandards │ │ │ └── cpp │ │ │ │ ├── cert.qll │ │ │ │ └── cert │ │ │ │ └── Customizations.qll │ │ ├── qlpack.yml │ │ └── rules │ │ │ ├── CON50-CPP │ │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.md │ │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.ql │ │ │ ├── DoNotDestroyAMutexWhileItIsLocked.md │ │ │ └── DoNotDestroyAMutexWhileItIsLocked.ql │ │ │ ├── CON51-CPP │ │ │ ├── EnsureActivelyHeldLocksAreReleasedOnExceptionalConditions.md │ │ │ └── EnsureActivelyHeldLocksAreReleasedOnExceptionalConditions.ql │ │ │ ├── CON52-CPP │ │ │ ├── PreventBitFieldAccessFromMultipleThreads.md │ │ │ └── PreventBitFieldAccessFromMultipleThreads.ql │ │ │ ├── CON53-CPP │ │ │ ├── DeadlockByLockingInPredefinedOrder.md │ │ │ └── DeadlockByLockingInPredefinedOrder.ql │ │ │ ├── CON54-CPP │ │ │ ├── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.md │ │ │ └── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.ql │ │ │ ├── CON55-CPP │ │ │ ├── PreserveSafetyWhenUsingConditionVariables.md │ │ │ └── PreserveSafetyWhenUsingConditionVariables.ql │ │ │ ├── CON56-CPP │ │ │ ├── DoNotSpeculativelyLockALockedNonRecursiveMutex.md │ │ │ ├── DoNotSpeculativelyLockALockedNonRecursiveMutex.ql │ │ │ ├── LockedALockedNonRecursiveMutexAudit.md │ │ │ └── LockedALockedNonRecursiveMutexAudit.ql │ │ │ ├── CTR50-CPP │ │ │ ├── ContainerAccessWithoutRangeCheckCert.md │ │ │ └── ContainerAccessWithoutRangeCheckCert.ql │ │ │ ├── CTR51-CPP │ │ │ ├── UsesValidContainerElementAccess.md │ │ │ └── UsesValidContainerElementAccess.ql │ │ │ ├── CTR52-CPP │ │ │ ├── GuaranteeGenericCppLibraryFunctionsDoNotOverflow.md │ │ │ └── GuaranteeGenericCppLibraryFunctionsDoNotOverflow.ql │ │ │ ├── CTR53-CPP │ │ │ ├── UseValidIteratorRanges.md │ │ │ └── UseValidIteratorRanges.ql │ │ │ ├── CTR54-CPP │ │ │ ├── DoNotSubtractIteratorsForDifferentContainers.md │ │ │ └── DoNotSubtractIteratorsForDifferentContainers.ql │ │ │ ├── CTR55-CPP │ │ │ ├── DoNotUseAnAdditiveOperatorOnAnIterator.md │ │ │ └── DoNotUseAnAdditiveOperatorOnAnIterator.ql │ │ │ ├── CTR56-CPP │ │ │ ├── DoNotUsePointerArithmeticOnPolymorphicObjects.md │ │ │ └── DoNotUsePointerArithmeticOnPolymorphicObjects.ql │ │ │ ├── CTR57-CPP │ │ │ ├── ProvideAValidOrderingPredicate.md │ │ │ └── ProvideAValidOrderingPredicate.ql │ │ │ ├── CTR58-CPP │ │ │ ├── PredicateFunctionObjectsShouldNotBeMutable.md │ │ │ └── PredicateFunctionObjectsShouldNotBeMutable.ql │ │ │ ├── DCL50-CPP │ │ │ ├── DoNotDefineACStyleVariadicFunction.md │ │ │ └── DoNotDefineACStyleVariadicFunction.ql │ │ │ ├── DCL51-CPP │ │ │ ├── EnumeratorReusesReservedName.md │ │ │ ├── EnumeratorReusesReservedName.ql │ │ │ ├── FunctionReusesReservedName.md │ │ │ ├── FunctionReusesReservedName.ql │ │ │ ├── ObjectReusesReservedName.md │ │ │ ├── ObjectReusesReservedName.ql │ │ │ ├── RedefiningOfStandardLibraryName.md │ │ │ ├── RedefiningOfStandardLibraryName.ql │ │ │ ├── ReuseOfReservedIdentifier.md │ │ │ ├── ReuseOfReservedIdentifier.ql │ │ │ ├── UseOfDoubleUnderscoreReservedPrefix.md │ │ │ ├── UseOfDoubleUnderscoreReservedPrefix.ql │ │ │ ├── UseOfReservedLiteralSuffixIdentifier.md │ │ │ ├── UseOfReservedLiteralSuffixIdentifier.ql │ │ │ ├── UseOfSingleUnderscoreReservedPrefix.md │ │ │ └── UseOfSingleUnderscoreReservedPrefix.ql │ │ │ ├── DCL53-CPP │ │ │ ├── LocalConstructorInitializedObjectHidesIdentifier.md │ │ │ ├── LocalConstructorInitializedObjectHidesIdentifier.ql │ │ │ ├── LocalFunctionDeclaration.md │ │ │ └── LocalFunctionDeclaration.ql │ │ │ ├── DCL54-CPP │ │ │ ├── SingularOverloadOfMemoryFunction.md │ │ │ └── SingularOverloadOfMemoryFunction.ql │ │ │ ├── DCL55-CPP │ │ │ ├── InformationLeakageAcrossTrustBoundaries.md │ │ │ └── InformationLeakageAcrossTrustBoundaries.ql │ │ │ ├── DCL56-CPP │ │ │ ├── CyclesDuringStaticObjectInit.md │ │ │ └── CyclesDuringStaticObjectInit.ql │ │ │ ├── DCL57-CPP │ │ │ ├── DoNotLetExceptionsEscapeFromDestructorsOrDeallocationFunctions.md │ │ │ └── DoNotLetExceptionsEscapeFromDestructorsOrDeallocationFunctions.ql │ │ │ ├── DCL58-CPP │ │ │ ├── ModificationOfTheStandardNamespaces.md │ │ │ └── ModificationOfTheStandardNamespaces.ql │ │ │ ├── DCL59-CPP │ │ │ ├── UnnamedNamespaceInHeaderFile.md │ │ │ └── UnnamedNamespaceInHeaderFile.ql │ │ │ ├── DCL60-CPP │ │ │ ├── OneDefinitionRuleNotObeyed.md │ │ │ └── OneDefinitionRuleNotObeyed.ql │ │ │ ├── ERR50-CPP │ │ │ ├── ConditionVariablePostConditionFailedCert.md │ │ │ ├── ConditionVariablePostConditionFailedCert.ql │ │ │ ├── ExitHandlerThrowsExceptionCert.md │ │ │ ├── ExitHandlerThrowsExceptionCert.ql │ │ │ ├── ExplicitAbruptTerminationCert.md │ │ │ ├── ExplicitAbruptTerminationCert.ql │ │ │ ├── JoinableThreadCopiedOrDestroyedCert.md │ │ │ ├── JoinableThreadCopiedOrDestroyedCert.ql │ │ │ ├── RethrowNestedWithoutCaptureCert.md │ │ │ └── RethrowNestedWithoutCaptureCert.ql │ │ │ ├── ERR51-CPP │ │ │ ├── HandleAllExceptions.md │ │ │ └── HandleAllExceptions.ql │ │ │ ├── ERR52-CPP │ │ │ ├── DoNotUseSetjmpOrLongjmp.md │ │ │ └── DoNotUseSetjmpOrLongjmp.ql │ │ │ ├── ERR53-CPP │ │ │ ├── DestroyedValueReferencedInConstructorDestructorCatchBlock.md │ │ │ └── DestroyedValueReferencedInConstructorDestructorCatchBlock.ql │ │ │ ├── ERR54-CPP │ │ │ ├── CatchBlockShadowingCert.md │ │ │ └── CatchBlockShadowingCert.ql │ │ │ ├── ERR55-CPP │ │ │ ├── HonorExceptionSpecifications.md │ │ │ └── HonorExceptionSpecifications.ql │ │ │ ├── ERR56-CPP │ │ │ ├── GuaranteeExceptionSafety.md │ │ │ └── GuaranteeExceptionSafety.ql │ │ │ ├── ERR57-CPP │ │ │ ├── DoNotLeakResourcesWhenHandlingExceptions.md │ │ │ └── DoNotLeakResourcesWhenHandlingExceptions.ql │ │ │ ├── ERR58-CPP │ │ │ ├── HandleAllExceptionsThrownBeforeMainBeginsExecuting.md │ │ │ └── HandleAllExceptionsThrownBeforeMainBeginsExecuting.ql │ │ │ ├── ERR59-CPP │ │ │ ├── DoNotThrowAnExceptionAcrossExecutionBoundaries.md │ │ │ └── DoNotThrowAnExceptionAcrossExecutionBoundaries.ql │ │ │ ├── ERR60-CPP │ │ │ ├── ExceptionObjectsMustBeNothrowCopyConstructible.md │ │ │ └── ExceptionObjectsMustBeNothrowCopyConstructible.ql │ │ │ ├── ERR61-CPP │ │ │ ├── CatchExceptionsByLvalueReference.md │ │ │ └── CatchExceptionsByLvalueReference.ql │ │ │ ├── ERR62-CPP │ │ │ ├── DetectErrorsWhenConvertingAStringToANumber.md │ │ │ └── DetectErrorsWhenConvertingAStringToANumber.ql │ │ │ ├── EXP50-CPP │ │ │ ├── DoNotDependOnTheOrderOfEvaluationForSideEffectsInFunctionCallsAsFunctionArguments.md │ │ │ ├── DoNotDependOnTheOrderOfEvaluationForSideEffectsInFunctionCallsAsFunctionArguments.ql │ │ │ ├── DoNotDependOnTheOrderOfScalarObjectEvaluationForSideEffects.md │ │ │ └── DoNotDependOnTheOrderOfScalarObjectEvaluationForSideEffects.ql │ │ │ ├── EXP51-CPP │ │ │ ├── DoNotDeleteAnArrayThroughAPointerOfTheIncorrectType.md │ │ │ └── DoNotDeleteAnArrayThroughAPointerOfTheIncorrectType.ql │ │ │ ├── EXP52-CPP │ │ │ ├── DoNotRelyOnSideEffectsInDeclTypeOperand.md │ │ │ ├── DoNotRelyOnSideEffectsInDeclTypeOperand.ql │ │ │ ├── DoNotRelyOnSideEffectsInDeclValExpression.md │ │ │ ├── DoNotRelyOnSideEffectsInDeclValExpression.ql │ │ │ ├── DoNotRelyOnSideEffectsInNoExceptOperand.md │ │ │ ├── DoNotRelyOnSideEffectsInNoExceptOperand.ql │ │ │ ├── DoNotRelyOnSideEffectsInSizeOfOperand.md │ │ │ ├── DoNotRelyOnSideEffectsInSizeOfOperand.ql │ │ │ ├── DoNotRelyOnSideEffectsInTypeIdOperand.md │ │ │ └── DoNotRelyOnSideEffectsInTypeIdOperand.ql │ │ │ ├── EXP53-CPP │ │ │ ├── DoNotReadUninitializedMemory.md │ │ │ └── DoNotReadUninitializedMemory.ql │ │ │ ├── EXP54-CPP │ │ │ ├── ObjectAccessedAfterLifetimeCert.md │ │ │ ├── ObjectAccessedAfterLifetimeCert.ql │ │ │ ├── ObjectAccessedBeforeLifetimeCert.md │ │ │ └── ObjectAccessedBeforeLifetimeCert.ql │ │ │ ├── EXP55-CPP │ │ │ ├── RemoveConstOrVolatileQualificationCert.md │ │ │ └── RemoveConstOrVolatileQualificationCert.ql │ │ │ ├── EXP56-CPP │ │ │ ├── FunctionWithMismatchedLanguageLinkage.md │ │ │ └── FunctionWithMismatchedLanguageLinkage.ql │ │ │ ├── EXP57-CPP │ │ │ ├── CastOfPointerToIncompleteClass.md │ │ │ ├── CastOfPointerToIncompleteClass.ql │ │ │ ├── DeletingPointerToIncompleteClass.md │ │ │ └── DeletingPointerToIncompleteClass.ql │ │ │ ├── EXP58-CPP │ │ │ ├── PassNonTrivialObjectToVaStart.md │ │ │ ├── PassNonTrivialObjectToVaStart.ql │ │ │ ├── PassPromotablePrimitiveTypeToVaStart.md │ │ │ ├── PassPromotablePrimitiveTypeToVaStart.ql │ │ │ ├── PassReferenceTypeToVaStart.md │ │ │ └── PassReferenceTypeToVaStart.ql │ │ │ ├── EXP59-CPP │ │ │ ├── OffsetUsedOnInvalidTypeOrMember.md │ │ │ └── OffsetUsedOnInvalidTypeOrMember.ql │ │ │ ├── EXP60-CPP │ │ │ ├── DoNotPassANonstandardObjectAcrossBoundaries.md │ │ │ └── DoNotPassANonstandardObjectAcrossBoundaries.ql │ │ │ ├── EXP61-CPP │ │ │ ├── EscapingLambdaObjectWithCaptureByReference.md │ │ │ ├── EscapingLambdaObjectWithCaptureByReference.ql │ │ │ ├── ReturningLambdaObjectWithCaptureByReference.md │ │ │ └── ReturningLambdaObjectWithCaptureByReference.ql │ │ │ ├── EXP62-CPP │ │ │ ├── MemcmpUsedToAccessObjectRepresentation.md │ │ │ ├── MemcmpUsedToAccessObjectRepresentation.ql │ │ │ ├── MemcpyUsedToAccessObjectRepresentation.md │ │ │ ├── MemcpyUsedToAccessObjectRepresentation.ql │ │ │ ├── MemsetUsedToAccessObjectRepresentation.md │ │ │ ├── MemsetUsedToAccessObjectRepresentation.ql │ │ │ └── VirtualTable.qll │ │ │ ├── EXP63-CPP │ │ │ ├── DoNotRelyOnTheValueOfAMovedFromObject.md │ │ │ └── DoNotRelyOnTheValueOfAMovedFromObject.ql │ │ │ ├── FIO50-CPP │ │ │ ├── InterleavedInputOutputWithoutPosition.md │ │ │ └── InterleavedInputOutputWithoutPosition.ql │ │ │ ├── FIO51-CPP │ │ │ ├── CloseFilesWhenTheyAreNoLongerNeeded.md │ │ │ └── CloseFilesWhenTheyAreNoLongerNeeded.ql │ │ │ ├── INT50-CPP │ │ │ ├── DoNotCastToAnOutOfRangeEnumerationValue.md │ │ │ └── DoNotCastToAnOutOfRangeEnumerationValue.ql │ │ │ ├── MEM50-CPP │ │ │ ├── UseAfterFree.md │ │ │ └── UseAfterFree.ql │ │ │ ├── MEM51-CPP │ │ │ ├── ProperlyDeallocateDynamicallyAllocatedResources.md │ │ │ └── ProperlyDeallocateDynamicallyAllocatedResources.ql │ │ │ ├── MEM52-CPP │ │ │ ├── DetectAndHandleMemoryAllocationErrors.md │ │ │ └── DetectAndHandleMemoryAllocationErrors.ql │ │ │ ├── MEM53-CPP │ │ │ ├── ManuallyManagedLifetime.qll │ │ │ ├── MissingConstructorCallForManuallyManagedObject.md │ │ │ ├── MissingConstructorCallForManuallyManagedObject.ql │ │ │ ├── MissingDestructorCallForManuallyManagedObject.md │ │ │ └── MissingDestructorCallForManuallyManagedObject.ql │ │ │ ├── MEM54-CPP │ │ │ ├── PlacementNewInsufficientStorageCert.md │ │ │ ├── PlacementNewInsufficientStorageCert.ql │ │ │ ├── PlacementNewNotProperlyAlignedCert.md │ │ │ └── PlacementNewNotProperlyAlignedCert.ql │ │ │ ├── MEM55-CPP │ │ │ ├── OperatorDeleteMissingPartnerCert.md │ │ │ ├── OperatorDeleteMissingPartnerCert.ql │ │ │ ├── ThrowingNoThrowOperatorNewDeleteCert.md │ │ │ ├── ThrowingNoThrowOperatorNewDeleteCert.ql │ │ │ ├── ThrowingOperatorNewReturnsNullCert.md │ │ │ ├── ThrowingOperatorNewReturnsNullCert.ql │ │ │ ├── ThrowingOperatorNewThrowsInvalidExceptionCert.md │ │ │ └── ThrowingOperatorNewThrowsInvalidExceptionCert.ql │ │ │ ├── MEM56-CPP │ │ │ ├── OwnedPointerValueStoredInUnrelatedSmartPointerCert.md │ │ │ └── OwnedPointerValueStoredInUnrelatedSmartPointerCert.ql │ │ │ ├── MEM57-CPP │ │ │ ├── UsingDefaultOperatorNewForOverAlignedTypes.md │ │ │ └── UsingDefaultOperatorNewForOverAlignedTypes.ql │ │ │ ├── MSC50-CPP │ │ │ ├── DoNotUseRandForGeneratingPseudorandomNumbers.md │ │ │ └── DoNotUseRandForGeneratingPseudorandomNumbers.ql │ │ │ ├── MSC51-CPP │ │ │ ├── BadlySeededRandomNumberGenerator.md │ │ │ └── BadlySeededRandomNumberGenerator.ql │ │ │ ├── MSC52-CPP │ │ │ ├── NonVoidFunctionDoesNotReturnCert.md │ │ │ └── NonVoidFunctionDoesNotReturnCert.ql │ │ │ ├── MSC53-CPP │ │ │ ├── FunctionNoReturnAttributeConditionCert.md │ │ │ └── FunctionNoReturnAttributeConditionCert.ql │ │ │ ├── MSC54-CPP │ │ │ ├── SignalHandlerMustBeAPlainOldFunction.md │ │ │ └── SignalHandlerMustBeAPlainOldFunction.ql │ │ │ ├── OOP50-CPP │ │ │ ├── DoNotInvokeVirtualFunctionsFromConstructorsOrDestructors.md │ │ │ └── DoNotInvokeVirtualFunctionsFromConstructorsOrDestructors.ql │ │ │ ├── OOP51-CPP │ │ │ ├── DoNotSliceDerivedObjects.md │ │ │ └── DoNotSliceDerivedObjects.ql │ │ │ ├── OOP52-CPP │ │ │ ├── DoNotDeleteAPolymorphicObjectWithoutAVirtualDestructor.md │ │ │ └── DoNotDeleteAPolymorphicObjectWithoutAVirtualDestructor.ql │ │ │ ├── OOP53-CPP │ │ │ ├── UseCanonicalOrderForMemberInit.md │ │ │ └── UseCanonicalOrderForMemberInit.ql │ │ │ ├── OOP54-CPP │ │ │ ├── GracefullyHandleSelfCopyAssignment.md │ │ │ └── GracefullyHandleSelfCopyAssignment.ql │ │ │ ├── OOP55-CPP │ │ │ ├── MemberAccessWithUninitializedStaticPointerToMember.md │ │ │ ├── MemberAccessWithUninitializedStaticPointerToMember.ql │ │ │ ├── UseOfPointerToMemberToAccessNonexistentMember.md │ │ │ ├── UseOfPointerToMemberToAccessNonexistentMember.ql │ │ │ ├── UseOfPointerToMemberToAccessUndefinedMember.md │ │ │ └── UseOfPointerToMemberToAccessUndefinedMember.ql │ │ │ ├── OOP56-CPP │ │ │ ├── HonorNewReplacementHandlerRequirements.md │ │ │ ├── HonorNewReplacementHandlerRequirements.ql │ │ │ ├── HonorTerminationReplacementHandlerRequirements.md │ │ │ └── HonorTerminationReplacementHandlerRequirements.ql │ │ │ ├── OOP57-CPP │ │ │ ├── PreferSpecialMemberFunctionsAndOverloadedOperatorsToCStandardLibraryFunctions.md │ │ │ └── PreferSpecialMemberFunctionsAndOverloadedOperatorsToCStandardLibraryFunctions.ql │ │ │ ├── OOP58-CPP │ │ │ ├── CopyOperationsMustNotMutateTheSourceObject.md │ │ │ └── CopyOperationsMustNotMutateTheSourceObject.ql │ │ │ ├── STR50-CPP │ │ │ ├── BasicStringMayNotBeNullTerminatedCert.md │ │ │ ├── BasicStringMayNotBeNullTerminatedCert.ql │ │ │ ├── OperationMayNotNullTerminateCStyleStringCert.md │ │ │ └── OperationMayNotNullTerminateCStyleStringCert.ql │ │ │ ├── STR51-CPP │ │ │ ├── DoNotAttemptToCreateAStringFromANullPointer.md │ │ │ └── DoNotAttemptToCreateAStringFromANullPointer.ql │ │ │ ├── STR52-CPP │ │ │ ├── UseValidReferencesForElementsOfString.md │ │ │ └── UseValidReferencesForElementsOfString.ql │ │ │ └── STR53-CPP │ │ │ ├── RangeCheckStringElementAccess.md │ │ │ └── RangeCheckStringElementAccess.ql │ └── test │ │ ├── codeql-pack.lock.yml │ │ ├── qlpack.yml │ │ └── rules │ │ ├── CON50-CPP │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.testref │ │ └── DoNotDestroyAMutexWhileItIsLocked.testref │ │ ├── CON51-CPP │ │ ├── EnsureActivelyHeldLocksAreReleasedOnExceptionalConditions.expected │ │ ├── EnsureActivelyHeldLocksAreReleasedOnExceptionalConditions.qlref │ │ └── test.cpp │ │ ├── CON52-CPP │ │ └── PreventBitFieldAccessFromMultipleThreads.testref │ │ ├── CON53-CPP │ │ └── DeadlockByLockingInPredefinedOrder.testref │ │ ├── CON54-CPP │ │ ├── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.expected │ │ ├── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.qlref │ │ ├── WrapFunctionsThatCanSpuriouslyWakeUpInLoop.testref │ │ └── test.cpp │ │ ├── CON55-CPP │ │ └── PreserveSafetyWhenUsingConditionVariables.testref │ │ ├── CON56-CPP │ │ ├── DoNotSpeculativelyLockALockedNonRecursiveMutex.expected │ │ ├── DoNotSpeculativelyLockALockedNonRecursiveMutex.qlref │ │ ├── LockedALockedNonRecursiveMutexAudit.expected │ │ ├── LockedALockedNonRecursiveMutexAudit.qlref │ │ └── test.cpp │ │ ├── CTR50-CPP │ │ └── ContainerAccessWithoutRangeCheckCert.testref │ │ ├── CTR51-CPP │ │ └── UsesValidContainerElementAccess.testref │ │ ├── CTR52-CPP │ │ ├── GuaranteeGenericCppLibraryFunctionsDoNotOverflow.expected │ │ ├── GuaranteeGenericCppLibraryFunctionsDoNotOverflow.qlref │ │ └── test.cpp │ │ ├── CTR53-CPP │ │ ├── UseValidIteratorRanges.expected │ │ ├── UseValidIteratorRanges.qlref │ │ └── test.cpp │ │ ├── CTR54-CPP │ │ ├── DoNotSubtractIteratorsForDifferentContainers.expected │ │ ├── DoNotSubtractIteratorsForDifferentContainers.qlref │ │ └── test.cpp │ │ ├── CTR55-CPP │ │ ├── DoNotUseAnAdditiveOperatorOnAnIterator.expected │ │ ├── DoNotUseAnAdditiveOperatorOnAnIterator.qlref │ │ └── test.cpp │ │ ├── CTR56-CPP │ │ ├── DoNotUsePointerArithmeticOnPolymorphicObjects.expected │ │ ├── DoNotUsePointerArithmeticOnPolymorphicObjects.qlref │ │ └── test.cpp │ │ ├── CTR57-CPP │ │ └── ProvideAValidOrderingPredicate.testref │ │ ├── CTR58-CPP │ │ └── PredicateFunctionObjectsShouldNotBeMutable.testref │ │ ├── DCL50-CPP │ │ ├── DoNotDefineACStyleVariadicFunction.expected │ │ ├── DoNotDefineACStyleVariadicFunction.qlref │ │ └── test.cpp │ │ ├── DCL51-CPP │ │ ├── EnumeratorReusesReservedName.expected │ │ ├── EnumeratorReusesReservedName.qlref │ │ ├── FunctionReusesReservedName.expected │ │ ├── FunctionReusesReservedName.qlref │ │ ├── ObjectReusesReservedName.expected │ │ ├── ObjectReusesReservedName.qlref │ │ ├── RedefiningOfStandardLibraryName.expected │ │ ├── RedefiningOfStandardLibraryName.qlref │ │ ├── ReuseOfReservedIdentifier.expected │ │ ├── ReuseOfReservedIdentifier.qlref │ │ ├── UseOfDoubleUnderscoreReservedPrefix.expected │ │ ├── UseOfDoubleUnderscoreReservedPrefix.qlref │ │ ├── UseOfReservedLiteralSuffixIdentifier.expected │ │ ├── UseOfReservedLiteralSuffixIdentifier.qlref │ │ ├── UseOfSingleUnderscoreReservedPrefix.expected │ │ ├── UseOfSingleUnderscoreReservedPrefix.qlref │ │ ├── test.cpp │ │ └── test.h │ │ ├── DCL53-CPP │ │ ├── LocalConstructorInitializedObjectHidesIdentifier.expected │ │ ├── LocalConstructorInitializedObjectHidesIdentifier.qlref │ │ ├── LocalFunctionDeclaration.expected │ │ ├── LocalFunctionDeclaration.qlref │ │ └── test.cpp │ │ ├── DCL54-CPP │ │ ├── SingularOverloadOfMemoryFunction.expected │ │ ├── SingularOverloadOfMemoryFunction.qlref │ │ └── test.cpp │ │ ├── DCL55-CPP │ │ └── InformationLeakageAcrossTrustBoundaries.testref │ │ ├── DCL56-CPP │ │ ├── CyclesDuringStaticObjectInit.expected │ │ ├── CyclesDuringStaticObjectInit.qlref │ │ └── test.cpp │ │ ├── DCL57-CPP │ │ ├── DoNotLetExceptionsEscapeFromDestructorsOrDeallocationFunctions.expected │ │ ├── DoNotLetExceptionsEscapeFromDestructorsOrDeallocationFunctions.qlref │ │ └── test.cpp │ │ ├── DCL58-CPP │ │ └── ModificationOfTheStandardNamespaces.testref │ │ ├── DCL59-CPP │ │ ├── UnnamedNamespaceInHeaderFile.expected │ │ ├── UnnamedNamespaceInHeaderFile.qlref │ │ ├── test.cpp │ │ └── test.h │ │ ├── DCL60-CPP │ │ └── OneDefinitionRuleNotObeyed.testref │ │ ├── ERR50-CPP │ │ ├── ConditionVariablePostConditionFailedCert.testref │ │ ├── ExitHandlerThrowsExceptionCert.testref │ │ ├── ExplicitAbruptTerminationCert.testref │ │ ├── JoinableThreadCopiedOrDestroyedCert.testref │ │ └── RethrowNestedWithoutCaptureCert.testref │ │ ├── ERR51-CPP │ │ ├── HandleAllExceptions.expected │ │ ├── HandleAllExceptions.qlref │ │ └── test.cpp │ │ ├── ERR52-CPP │ │ └── DoNotUseSetjmpOrLongjmp.testref │ │ ├── ERR53-CPP │ │ └── DestroyedValueReferencedInConstructorDestructorCatchBlock.testref │ │ ├── ERR54-CPP │ │ ├── CatchBlockShadowing.testref │ │ └── CatchBlockShadowingCert.testref │ │ ├── ERR55-CPP │ │ ├── HonorExceptionSpecifications.expected │ │ ├── HonorExceptionSpecifications.qlref │ │ ├── test.cpp │ │ ├── test_dynamic_specification.cpp │ │ └── test_no_except.cpp │ │ ├── ERR56-CPP │ │ └── GuaranteeExceptionSafety.testref │ │ ├── ERR57-CPP │ │ └── DoNotLeakResourcesWhenHandlingExceptions.testref │ │ ├── ERR58-CPP │ │ └── HandleAllExceptionsThrownBeforeMainBeginsExecuting.testref │ │ ├── ERR59-CPP │ │ ├── DoNotThrowAnExceptionAcrossExecutionBoundaries.expected │ │ ├── DoNotThrowAnExceptionAcrossExecutionBoundaries.expected.clang │ │ ├── DoNotThrowAnExceptionAcrossExecutionBoundaries.expected.gcc │ │ ├── DoNotThrowAnExceptionAcrossExecutionBoundaries.expected.qcc │ │ ├── DoNotThrowAnExceptionAcrossExecutionBoundaries.qlref │ │ ├── test-diff.cpp │ │ ├── test-diff.h │ │ └── test.cpp │ │ ├── ERR60-CPP │ │ ├── ExceptionObjectsMustBeNothrowCopyConstructible.expected │ │ ├── ExceptionObjectsMustBeNothrowCopyConstructible.qlref │ │ └── test.cpp │ │ ├── ERR61-CPP │ │ └── CatchExceptionsByLvalueReference.testref │ │ ├── ERR62-CPP │ │ └── DetectErrorsWhenConvertingAStringToANumber.testref │ │ ├── EXP50-CPP │ │ ├── DoNotDependOnTheOrderOfEvaluationForSideEffectsInFunctionCallsAsFunctionArguments.expected │ │ ├── DoNotDependOnTheOrderOfEvaluationForSideEffectsInFunctionCallsAsFunctionArguments.qlref │ │ ├── DoNotDependOnTheOrderOfScalarObjectEvaluationForSideEffects.expected │ │ ├── DoNotDependOnTheOrderOfScalarObjectEvaluationForSideEffects.qlref │ │ └── test.cpp │ │ ├── EXP51-CPP │ │ ├── DoNotDeleteAnArrayThroughAPointerOfTheIncorrectType.expected │ │ ├── DoNotDeleteAnArrayThroughAPointerOfTheIncorrectType.qlref │ │ └── test.cpp │ │ ├── EXP52-CPP │ │ ├── DoNotRelyOnSideEffectsInDeclTypeOperand.cpp │ │ ├── DoNotRelyOnSideEffectsInDeclTypeOperand.expected │ │ ├── DoNotRelyOnSideEffectsInDeclTypeOperand.qlref │ │ ├── DoNotRelyOnSideEffectsInDeclValExpression.cpp │ │ ├── DoNotRelyOnSideEffectsInDeclValExpression.expected │ │ ├── DoNotRelyOnSideEffectsInDeclValExpression.qlref │ │ ├── DoNotRelyOnSideEffectsInNoExceptOperand.cpp │ │ ├── DoNotRelyOnSideEffectsInNoExceptOperand.expected │ │ ├── DoNotRelyOnSideEffectsInNoExceptOperand.qlref │ │ ├── DoNotRelyOnSideEffectsInSizeOfOperand.cpp │ │ ├── DoNotRelyOnSideEffectsInSizeOfOperand.expected │ │ ├── DoNotRelyOnSideEffectsInSizeOfOperand.qlref │ │ ├── DoNotRelyOnSideEffectsInTypeIdOperand.cpp │ │ ├── DoNotRelyOnSideEffectsInTypeIdOperand.expected │ │ ├── DoNotRelyOnSideEffectsInTypeIdOperand.qlref │ │ └── test.cpp │ │ ├── EXP53-CPP │ │ └── DoNotReadUninitializedMemory.testref │ │ ├── EXP54-CPP │ │ ├── ObjectAccessedAfterLifetimeCert.testref │ │ └── ObjectAccessedBeforeLifetimeCert.testref │ │ ├── EXP55-CPP │ │ ├── RemoveConstOrVolatileQualificationAutosarCert.testref │ │ └── RemoveConstOrVolatileQualificationCert.testref │ │ ├── EXP56-CPP │ │ ├── FunctionWithMismatchedLanguageLinkage.expected │ │ ├── FunctionWithMismatchedLanguageLinkage.qlref │ │ └── test.cpp │ │ ├── EXP57-CPP │ │ ├── CastOfPointerToIncompleteClass.expected │ │ ├── CastOfPointerToIncompleteClass.qlref │ │ ├── DeletingPointerToIncompleteClass.testref │ │ └── test.cpp │ │ ├── EXP58-CPP │ │ ├── PassNonTrivialObjectToVaStart.cpp │ │ ├── PassNonTrivialObjectToVaStart.expected │ │ ├── PassNonTrivialObjectToVaStart.qlref │ │ ├── PassPromotablePrimitiveTypeToVaStart.cpp │ │ ├── PassPromotablePrimitiveTypeToVaStart.expected │ │ ├── PassPromotablePrimitiveTypeToVaStart.qlref │ │ ├── PassReferenceTypeToVaStart.cpp │ │ ├── PassReferenceTypeToVaStart.expected │ │ ├── PassReferenceTypeToVaStart.qlref │ │ └── test.cpp │ │ ├── EXP59-CPP │ │ ├── OffsetUsedOnInvalidTypeOrMember.expected │ │ ├── OffsetUsedOnInvalidTypeOrMember.qlref │ │ └── test.cpp │ │ ├── EXP60-CPP │ │ ├── DoNotPassANonstandardObjectAcrossBoundaries.expected │ │ ├── DoNotPassANonstandardObjectAcrossBoundaries.expected.clang │ │ ├── DoNotPassANonstandardObjectAcrossBoundaries.expected.gcc │ │ ├── DoNotPassANonstandardObjectAcrossBoundaries.expected.qcc │ │ ├── DoNotPassANonstandardObjectAcrossBoundaries.qlref │ │ ├── test-diff.cpp │ │ ├── test-diff.h │ │ ├── test.cpp │ │ └── test.h │ │ ├── EXP61-CPP │ │ ├── EscapingLambdaObjectWithCaptureByReference.testref │ │ └── ReturningLambdaObjectWithCaptureByReference.testref │ │ ├── EXP62-CPP │ │ ├── MemcmpUsedToAccessObjectRepresentation.testref │ │ ├── MemcpyUsedToAccessObjectRepresentation.expected │ │ ├── MemcpyUsedToAccessObjectRepresentation.qlref │ │ ├── MemsetUsedToAccessObjectRepresentation.expected │ │ ├── MemsetUsedToAccessObjectRepresentation.qlref │ │ └── test.cpp │ │ ├── EXP63-CPP │ │ └── DoNotRelyOnTheValueOfAMovedFromObject.testref │ │ ├── FIO50-CPP │ │ └── InterleavedInputOutputWithoutPosition.testref │ │ ├── FIO51-CPP │ │ ├── CloseFilesWhenTheyAreNoLongerNeeded.expected │ │ ├── CloseFilesWhenTheyAreNoLongerNeeded.qlref │ │ └── test.cpp │ │ ├── INT50-CPP │ │ ├── DoNotCastToAnOutOfRangeEnumerationValue.expected │ │ ├── DoNotCastToAnOutOfRangeEnumerationValue.qlref │ │ └── test.cpp │ │ ├── MEM50-CPP │ │ └── UseAfterFree.testref │ │ ├── MEM51-CPP │ │ ├── ProperlyDeallocateDynamicallyAllocatedResources.expected │ │ ├── ProperlyDeallocateDynamicallyAllocatedResources.qlref │ │ └── test.cpp │ │ ├── MEM52-CPP │ │ ├── DetectAndHandleMemoryAllocationErrors.expected │ │ ├── DetectAndHandleMemoryAllocationErrors.qlref │ │ └── test.cpp │ │ ├── MEM53-CPP │ │ ├── MissingConstructorCallForManuallyManagedObject.expected │ │ ├── MissingConstructorCallForManuallyManagedObject.qlref │ │ ├── MissingDestructorCallForManuallyManagedObject.expected │ │ ├── MissingDestructorCallForManuallyManagedObject.qlref │ │ └── test.cpp │ │ ├── MEM54-CPP │ │ ├── PlacementNewInsufficientStorageCert.testref │ │ └── PlacementNewNotProperlyAlignedCert.testref │ │ ├── MEM55-CPP │ │ ├── OperatorDeleteMissingPartnerCert.testref │ │ ├── ThrowingNoThrowOperatorNewDeleteCert.testref │ │ ├── ThrowingOperatorNewReturnsNullCert.testref │ │ └── ThrowingOperatorNewThrowsInvalidExceptionCert.testref │ │ ├── MEM56-CPP │ │ └── OwnedPointerValueStoredInUnrelatedSmartPointerCert.testref │ │ ├── MEM57-CPP │ │ ├── UsingDefaultOperatorNewForOverAlignedTypes.expected │ │ ├── UsingDefaultOperatorNewForOverAlignedTypes.qlref │ │ └── test.cpp │ │ ├── MSC50-CPP │ │ └── DoNotUseRandForGeneratingPseudorandomNumbers.testref │ │ ├── MSC51-CPP │ │ ├── BadlySeededRandomNumberGenerator.expected │ │ ├── BadlySeededRandomNumberGenerator.expected.gcc │ │ ├── BadlySeededRandomNumberGenerator.qlref │ │ └── test.cpp │ │ ├── MSC52-CPP │ │ ├── NonVoidFunctionDoesNotReturn.testref │ │ └── NonVoidFunctionDoesNotReturnCert.testref │ │ ├── MSC53-CPP │ │ ├── FunctionNoReturnAttributeConditionCert.testref │ │ └── test.cpp │ │ ├── MSC54-CPP │ │ ├── SignalHandlerMustBeAPlainOldFunction.expected │ │ ├── SignalHandlerMustBeAPlainOldFunction.qlref │ │ └── test.cpp │ │ ├── OOP50-CPP │ │ ├── DoNotInvokeVirtualFunctionsFromConstructorsOrDestructors.expected │ │ ├── DoNotInvokeVirtualFunctionsFromConstructorsOrDestructors.qlref │ │ └── test.cpp │ │ ├── OOP51-CPP │ │ ├── DoNotSliceDerivedObjects.expected │ │ ├── DoNotSliceDerivedObjects.qlref │ │ └── test.cpp │ │ ├── OOP52-CPP │ │ ├── DoNotDeleteAPolymorphicObjectWithoutAVirtualDestructor.expected │ │ ├── DoNotDeleteAPolymorphicObjectWithoutAVirtualDestructor.qlref │ │ └── test.cpp │ │ ├── OOP53-CPP │ │ └── UseCanonicalOrderForMemberInit.testref │ │ ├── OOP54-CPP │ │ ├── GracefullyHandleSelfCopyAssignment.expected │ │ ├── GracefullyHandleSelfCopyAssignment.qlref │ │ └── test.cpp │ │ ├── OOP55-CPP │ │ ├── MemberAccessWithUninitializedStaticPointerToMember.testref │ │ ├── UseOfPointerToMemberToAccessNonexistentMember.testref │ │ └── UseOfPointerToMemberToAccessUndefinedMember.testref │ │ ├── OOP56-CPP │ │ ├── HonorNewReplacementHandlerRequirements.expected │ │ ├── HonorNewReplacementHandlerRequirements.qlref │ │ ├── HonorTerminationReplacementHandlerRequirements.expected │ │ ├── HonorTerminationReplacementHandlerRequirements.qlref │ │ └── test.cpp │ │ ├── OOP57-CPP │ │ ├── PreferSpecialMemberFunctionsAndOverloadedOperatorsToCStandardLibraryFunctions.expected │ │ ├── PreferSpecialMemberFunctionsAndOverloadedOperatorsToCStandardLibraryFunctions.qlref │ │ └── test.cpp │ │ ├── OOP58-CPP │ │ ├── CopyOperationsMustNotMutateTheSourceObject.expected │ │ ├── CopyOperationsMustNotMutateTheSourceObject.qlref │ │ └── test.cpp │ │ ├── STR50-CPP │ │ ├── BasicStringMayNotBeNullTerminated.testref │ │ ├── BasicStringMayNotBeNullTerminatedCert.testref │ │ ├── OperationMayNotNullTerminateCStyleString.testref │ │ └── OperationMayNotNullTerminateCStyleStringCert.testref │ │ ├── STR51-CPP │ │ ├── DoNotAttemptToCreateAStringFromANullPointer.expected │ │ ├── DoNotAttemptToCreateAStringFromANullPointer.qlref │ │ └── test.cpp │ │ ├── STR52-CPP │ │ └── UseValidReferencesForElementsOfString.testref │ │ └── STR53-CPP │ │ ├── RangeCheckStringElementAccess.expected │ │ ├── RangeCheckStringElementAccess.qlref │ │ └── test.cpp ├── common │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codingstandards │ │ │ └── cpp │ │ │ │ ├── AcceptableHeader.qll │ │ │ │ ├── AccessPath.qll │ │ │ │ ├── AlertReporting.qll │ │ │ │ ├── Alignment.qll │ │ │ │ ├── Allocations.qll │ │ │ │ ├── BuiltInNumericTypes.qll │ │ │ │ ├── CKeywords.qll │ │ │ │ ├── CharFunctions.qll │ │ │ │ ├── Class.qll │ │ │ │ ├── Clvalues.qll │ │ │ │ ├── CodingStandards.qll │ │ │ │ ├── CommentedOutCode.qll │ │ │ │ ├── Compiler.qll │ │ │ │ ├── Concurrency.qll │ │ │ │ ├── Config.qll │ │ │ │ ├── ConstHelpers.qll │ │ │ │ ├── Constructor.qll │ │ │ │ ├── Conversion.qll │ │ │ │ ├── Cpp14Literal.qll │ │ │ │ ├── Customizations.qll │ │ │ │ ├── Dereferenced.qll │ │ │ │ ├── DynamicCallGraph.qll │ │ │ │ ├── Emergent.qll │ │ │ │ ├── EncapsulatingFunctions.qll │ │ │ │ ├── Enums.qll │ │ │ │ ├── ExceptionSafety.qll │ │ │ │ ├── Exclusions.qll │ │ │ │ ├── Expr.qll │ │ │ │ ├── Extensions.qll │ │ │ │ ├── FgetsErrorManagement.qll │ │ │ │ ├── FloatingPoint.qll │ │ │ │ ├── Function.qll │ │ │ │ ├── FunctionEquivalence.qll │ │ │ │ ├── FunctionLikeMacro.qll │ │ │ │ ├── FunctionParameter.qll │ │ │ │ ├── Handlers.qll │ │ │ │ ├── Header.qll │ │ │ │ ├── Identifiers.qll │ │ │ │ ├── Includes.qll │ │ │ │ ├── Inheritance.qll │ │ │ │ ├── IntegerConstantMacro.qll │ │ │ │ ├── IrreplaceableFunctionLikeMacro.qll │ │ │ │ ├── Iterators.qll │ │ │ │ ├── Lex.qll │ │ │ │ ├── Linkage.qll │ │ │ │ ├── Literals.qll │ │ │ │ ├── Locations.qll │ │ │ │ ├── LoggingOperation.qll │ │ │ │ ├── Loops.qll │ │ │ │ ├── Macro.qll │ │ │ │ ├── MatchingParenthesis.qll │ │ │ │ ├── MistypedFunctionArguments.qll │ │ │ │ ├── NameInDependentBase.qll │ │ │ │ ├── Naming.qll │ │ │ │ ├── Noreturn.qll │ │ │ │ ├── Nullness.qll │ │ │ │ ├── Operator.qll │ │ │ │ ├── OperatorDelete.qll │ │ │ │ ├── Ordering.qll │ │ │ │ ├── Overflow.qll │ │ │ │ ├── PossiblyUnsafeStringOperation.qll │ │ │ │ ├── PreprocessorDirective.qll │ │ │ │ ├── ReadErrorsAndEOF.qll │ │ │ │ ├── Realloc.qll │ │ │ │ ├── RestrictedRangeAnalysis.qll │ │ │ │ ├── Scope.qll │ │ │ │ ├── Sfinae.qll │ │ │ │ ├── SideEffect.qll │ │ │ │ ├── SimpleRangeAnalysisCustomizations.qll │ │ │ │ ├── SmartPointers.qll │ │ │ │ ├── StaticInitialization.qll │ │ │ │ ├── StdFunctionOrMacro.qll │ │ │ │ ├── StdNamespace.qll │ │ │ │ ├── StructuralEquivalence.qll │ │ │ │ ├── Swap.qll │ │ │ │ ├── SwitchStatement.qll │ │ │ │ ├── Type.qll │ │ │ │ ├── UndefinedBehavior.qll │ │ │ │ ├── UserDefinedLiteral.qll │ │ │ │ ├── Variable.qll │ │ │ │ ├── alertreporting │ │ │ │ ├── DeduplicateMacroResults.qll │ │ │ │ └── HoldsForAllCopies.qll │ │ │ │ ├── allocations │ │ │ │ ├── CustomOperatorNewDelete.qll │ │ │ │ ├── PlacementNew.qll │ │ │ │ └── UserDefinedMemoryAllocator.qll │ │ │ │ ├── concurrency │ │ │ │ ├── Atomic.qll │ │ │ │ ├── CConditionOperation.qll │ │ │ │ ├── ConditionalWait.qll │ │ │ │ ├── ControlFlow.qll │ │ │ │ ├── LockProtectedControlFlow.qll │ │ │ │ ├── LockingOperation.qll │ │ │ │ ├── MutexDestroyer.qll │ │ │ │ ├── ThreadCreation.qll │ │ │ │ ├── ThreadDependentMutex.qll │ │ │ │ ├── ThreadSpecificStorage.qll │ │ │ │ ├── ThreadWaitDetach.qll │ │ │ │ ├── ThreadedFunction.qll │ │ │ │ └── Types.qll │ │ │ │ ├── deadcode │ │ │ │ ├── UnreachableCode.qll │ │ │ │ ├── UnusedFunctions.qll │ │ │ │ ├── UnusedObjects.qll │ │ │ │ ├── UnusedParameters.qll │ │ │ │ ├── UnusedVariables.qll │ │ │ │ └── UselessAssignments.qll │ │ │ │ ├── deviations │ │ │ │ ├── CodeIdentifierDeviation.qll │ │ │ │ ├── Deviations.qll │ │ │ │ ├── DeviationsSuppression.qhelp │ │ │ │ ├── DeviationsSuppression.ql │ │ │ │ ├── InvalidDeviationCodeIdentifier.md │ │ │ │ ├── InvalidDeviationCodeIdentifier.ql │ │ │ │ ├── InvalidDeviationPermits.qhelp │ │ │ │ ├── InvalidDeviationPermits.ql │ │ │ │ ├── InvalidDeviationRecords.qhelp │ │ │ │ ├── InvalidDeviationRecords.ql │ │ │ │ ├── ListDeviationPermits.qhelp │ │ │ │ ├── ListDeviationPermits.ql │ │ │ │ ├── ListDeviationRecords.qhelp │ │ │ │ └── ListDeviationRecords.ql │ │ │ │ ├── dominance │ │ │ │ └── BehavioralSet.qll │ │ │ │ ├── enhancements │ │ │ │ ├── AggregateLiteralEnhancements.qll │ │ │ │ ├── ControlFlowGraphEnhancements.qll │ │ │ │ └── MacroEnhacements.qll │ │ │ │ ├── exceptions │ │ │ │ ├── ExceptionFlow.qll │ │ │ │ ├── ExceptionFlowCustomizations.qll │ │ │ │ ├── ExceptionSpecifications.qll │ │ │ │ ├── SpecialFunctionExceptions.qll │ │ │ │ ├── ThirdPartyExceptions.qll │ │ │ │ └── UnhandledExceptions.qll │ │ │ │ ├── exclusions │ │ │ │ ├── RuleMetadata.qll │ │ │ │ ├── c │ │ │ │ │ ├── Alignment.qll │ │ │ │ │ ├── Banned.qll │ │ │ │ │ ├── Banned2.qll │ │ │ │ │ ├── BitfieldTypes.qll │ │ │ │ │ ├── BitfieldTypes2.qll │ │ │ │ │ ├── Concurrency1.qll │ │ │ │ │ ├── Concurrency2.qll │ │ │ │ │ ├── Concurrency3.qll │ │ │ │ │ ├── Concurrency4.qll │ │ │ │ │ ├── Concurrency5.qll │ │ │ │ │ ├── Concurrency6.qll │ │ │ │ │ ├── Concurrency7.qll │ │ │ │ │ ├── Concurrency8.qll │ │ │ │ │ ├── Concurrency9.qll │ │ │ │ │ ├── Contracts.qll │ │ │ │ │ ├── Contracts1.qll │ │ │ │ │ ├── Contracts2.qll │ │ │ │ │ ├── Contracts3.qll │ │ │ │ │ ├── Contracts4.qll │ │ │ │ │ ├── Contracts5.qll │ │ │ │ │ ├── Contracts6.qll │ │ │ │ │ ├── Contracts7.qll │ │ │ │ │ ├── DeadCode.qll │ │ │ │ │ ├── DeadCode2.qll │ │ │ │ │ ├── Declarations1.qll │ │ │ │ │ ├── Declarations2.qll │ │ │ │ │ ├── Declarations3.qll │ │ │ │ │ ├── Declarations4.qll │ │ │ │ │ ├── Declarations5.qll │ │ │ │ │ ├── Declarations6.qll │ │ │ │ │ ├── Declarations7.qll │ │ │ │ │ ├── Declarations8.qll │ │ │ │ │ ├── Declarations9.qll │ │ │ │ │ ├── EssentialTypes.qll │ │ │ │ │ ├── EssentialTypes2.qll │ │ │ │ │ ├── Expressions.qll │ │ │ │ │ ├── FloatingTypes.qll │ │ │ │ │ ├── FloatingTypes2.qll │ │ │ │ │ ├── FunctionTypes.qll │ │ │ │ │ ├── Generics.qll │ │ │ │ │ ├── IO1.qll │ │ │ │ │ ├── IO2.qll │ │ │ │ │ ├── IO3.qll │ │ │ │ │ ├── IO4.qll │ │ │ │ │ ├── IntegerOverflow.qll │ │ │ │ │ ├── InvalidMemory1.qll │ │ │ │ │ ├── InvalidMemory2.qll │ │ │ │ │ ├── InvalidMemory3.qll │ │ │ │ │ ├── Language1.qll │ │ │ │ │ ├── Language2.qll │ │ │ │ │ ├── Language3.qll │ │ │ │ │ ├── Language4.qll │ │ │ │ │ ├── Memory1.qll │ │ │ │ │ ├── Memory2.qll │ │ │ │ │ ├── Memory3.qll │ │ │ │ │ ├── Misc.qll │ │ │ │ │ ├── NoReturn.qll │ │ │ │ │ ├── OutOfBounds.qll │ │ │ │ │ ├── Pointers1.qll │ │ │ │ │ ├── Pointers2.qll │ │ │ │ │ ├── Pointers3.qll │ │ │ │ │ ├── Preprocessor1.qll │ │ │ │ │ ├── Preprocessor2.qll │ │ │ │ │ ├── Preprocessor3.qll │ │ │ │ │ ├── Preprocessor4.qll │ │ │ │ │ ├── Preprocessor5.qll │ │ │ │ │ ├── Preprocessor6.qll │ │ │ │ │ ├── RuleMetadata.qll │ │ │ │ │ ├── SideEffects1.qll │ │ │ │ │ ├── SideEffects2.qll │ │ │ │ │ ├── SideEffects3.qll │ │ │ │ │ ├── SideEffects4.qll │ │ │ │ │ ├── SignalHandlers.qll │ │ │ │ │ ├── StandardLibraryFunctionTypes.qll │ │ │ │ │ ├── Statements1.qll │ │ │ │ │ ├── Statements2.qll │ │ │ │ │ ├── Statements3.qll │ │ │ │ │ ├── Statements4.qll │ │ │ │ │ ├── Statements5.qll │ │ │ │ │ ├── Statements6.qll │ │ │ │ │ ├── Static.qll │ │ │ │ │ ├── Strings1.qll │ │ │ │ │ ├── Strings2.qll │ │ │ │ │ ├── Strings3.qll │ │ │ │ │ ├── Syntax.qll │ │ │ │ │ ├── Types1.qll │ │ │ │ │ └── Types2.qll │ │ │ │ └── cpp │ │ │ │ │ ├── Allocations.qll │ │ │ │ │ ├── BannedFunctions.qll │ │ │ │ │ ├── BannedLibraries.qll │ │ │ │ │ ├── BannedSyntax.qll │ │ │ │ │ ├── BannedTypes.qll │ │ │ │ │ ├── Classes.qll │ │ │ │ │ ├── Comments.qll │ │ │ │ │ ├── Concurrency.qll │ │ │ │ │ ├── Conditionals.qll │ │ │ │ │ ├── Const.qll │ │ │ │ │ ├── DeadCode.qll │ │ │ │ │ ├── Declarations.qll │ │ │ │ │ ├── ExceptionSafety.qll │ │ │ │ │ ├── Exceptions1.qll │ │ │ │ │ ├── Exceptions2.qll │ │ │ │ │ ├── Expressions.qll │ │ │ │ │ ├── FloatingPoint.qll │ │ │ │ │ ├── Freed.qll │ │ │ │ │ ├── Functions.qll │ │ │ │ │ ├── IO.qll │ │ │ │ │ ├── ImportMisra23.qll │ │ │ │ │ ├── Includes.qll │ │ │ │ │ ├── Inheritance.qll │ │ │ │ │ ├── Initialization.qll │ │ │ │ │ ├── IntegerConversion.qll │ │ │ │ │ ├── Invariants.qll │ │ │ │ │ ├── Iterators.qll │ │ │ │ │ ├── Lambdas.qll │ │ │ │ │ ├── Literals.qll │ │ │ │ │ ├── Loops.qll │ │ │ │ │ ├── Macros.qll │ │ │ │ │ ├── MoveForward.qll │ │ │ │ │ ├── Naming.qll │ │ │ │ │ ├── Null.qll │ │ │ │ │ ├── OperatorInvariants.qll │ │ │ │ │ ├── Operators.qll │ │ │ │ │ ├── OrderOfEvaluation.qll │ │ │ │ │ ├── OutOfBounds.qll │ │ │ │ │ ├── Pointers.qll │ │ │ │ │ ├── Representation.qll │ │ │ │ │ ├── RuleMetadata.qll │ │ │ │ │ ├── Scope.qll │ │ │ │ │ ├── SideEffects1.qll │ │ │ │ │ ├── SideEffects2.qll │ │ │ │ │ ├── SmartPointers1.qll │ │ │ │ │ ├── SmartPointers2.qll │ │ │ │ │ ├── Strings.qll │ │ │ │ │ ├── Templates.qll │ │ │ │ │ ├── Toolchain.qll │ │ │ │ │ ├── TrustBoundaries.qll │ │ │ │ │ ├── TypeRanges.qll │ │ │ │ │ ├── Uninitialized.qll │ │ │ │ │ └── VirtualFunctions.qll │ │ │ │ ├── guideline_recategorizations │ │ │ │ ├── GuidelineRecategorizations.qll │ │ │ │ ├── InvalidGuidelineRecategorizations.ql │ │ │ │ └── ListGuidelineRecategorizations.ql │ │ │ │ ├── lifetimes │ │ │ │ └── lifetimeprofile │ │ │ │ │ ├── LifetimeProfile.qll │ │ │ │ │ └── TypeCategories.qll │ │ │ │ ├── orderofevaluation │ │ │ │ └── VariableAccessOrdering.qll │ │ │ │ ├── resources │ │ │ │ ├── ResourceLeakAnalysis.qll │ │ │ │ └── ResourceManagement.qll │ │ │ │ ├── rules │ │ │ │ ├── accessofnonexistingmemberthroughpointertomember │ │ │ │ │ └── AccessOfNonExistingMemberThroughPointerToMember.qll │ │ │ │ ├── accessofundefinedmemberthroughnullpointer │ │ │ │ │ └── AccessOfUndefinedMemberThroughNullPointer.qll │ │ │ │ ├── accessofundefinedmemberthroughuninitializedstaticpointer │ │ │ │ │ └── AccessOfUndefinedMemberThroughUninitializedStaticPointer.qll │ │ │ │ ├── addressofoperatoroverloaded │ │ │ │ │ └── AddressOfOperatorOverloaded.qll │ │ │ │ ├── amixedusemacroargumentsubjecttoexpansion │ │ │ │ │ └── AMixedUseMacroArgumentSubjectToExpansion.qll │ │ │ │ ├── arraypassedasfunctionargumentdecaytoapointer │ │ │ │ │ └── ArrayPassedAsFunctionArgumentDecayToAPointer.qll │ │ │ │ ├── asmdeclarationused │ │ │ │ │ └── AsmDeclarationUsed.qll │ │ │ │ ├── atofatoiatolandatollused │ │ │ │ │ └── AtofAtoiAtolAndAtollUsed.qll │ │ │ │ ├── backslashcharactermisuse │ │ │ │ │ └── BackslashCharacterMisuse.qll │ │ │ │ ├── basicstringmaynotbenullterminated │ │ │ │ │ └── BasicStringMayNotBeNullTerminated.qll │ │ │ │ ├── bitfieldshallhaveanappropriatetype │ │ │ │ │ └── BitFieldShallHaveAnAppropriateType.qll │ │ │ │ ├── builtinunaryoperatorappliedtounsignedexpression │ │ │ │ │ └── BuiltInUnaryOperatorAppliedToUnsignedExpression.qll │ │ │ │ ├── castcharbeforeconvertingtolargersizes │ │ │ │ │ └── CastCharBeforeConvertingToLargerSizes.qll │ │ │ │ ├── castsbetweenapointertofunctionandanyothertype │ │ │ │ │ └── CastsBetweenAPointerToFunctionAndAnyOtherType.qll │ │ │ │ ├── catchblockshadowing │ │ │ │ │ └── CatchBlockShadowing.qll │ │ │ │ ├── catchexceptionsbylvaluereference │ │ │ │ │ └── CatchExceptionsByLvalueReference.qll │ │ │ │ ├── charactersequenceusedwithinacstylecomment │ │ │ │ │ └── CharacterSequenceUsedWithinACStyleComment.qll │ │ │ │ ├── closefilehandlewhennolongerneededshared │ │ │ │ │ └── CloseFileHandleWhenNoLongerNeededShared.qll │ │ │ │ ├── commaoperatorused │ │ │ │ │ └── CommaOperatorUsed.qll │ │ │ │ ├── conditionvariablepostconditionfailed │ │ │ │ │ └── ConditionVariablePostConditionFailed.qll │ │ │ │ ├── constantunsignedintegerexpressionswraparound │ │ │ │ │ └── ConstantUnsignedIntegerExpressionsWrapAround.qll │ │ │ │ ├── constlikereturnvalue │ │ │ │ │ └── ConstLikeReturnValue.qll │ │ │ │ ├── containeraccesswithoutrangecheck │ │ │ │ │ └── ContainerAccessWithoutRangeCheck.qll │ │ │ │ ├── copyandmoveassignmentsshallhandleselfassignment │ │ │ │ │ └── CopyAndMoveAssignmentsShallHandleSelfAssignment.qll │ │ │ │ ├── csignalfunctionsused │ │ │ │ │ └── CsignalFunctionsUsed.qll │ │ │ │ ├── csignaltypesused │ │ │ │ │ └── CsignalTypesUsed.qll │ │ │ │ ├── cstdiofunctionsused │ │ │ │ │ └── CstdioFunctionsUsed.qll │ │ │ │ ├── cstdiomacrosused │ │ │ │ │ └── CstdioMacrosUsed.qll │ │ │ │ ├── cstdiotypesused │ │ │ │ │ └── CstdioTypesUsed.qll │ │ │ │ ├── danglingcapturewhenmovinglambdaobject │ │ │ │ │ └── DanglingCaptureWhenMovingLambdaObject.qll │ │ │ │ ├── danglingcapturewhenreturninglambdaobject │ │ │ │ │ └── DanglingCaptureWhenReturningLambdaObject.qll │ │ │ │ ├── deadcode │ │ │ │ │ └── DeadCode.qll │ │ │ │ ├── declaredareservedidentifier │ │ │ │ │ └── DeclaredAReservedIdentifier.qll │ │ │ │ ├── definitionnotconsideredforunqualifiedlookup │ │ │ │ │ └── DefinitionNotConsideredForUnqualifiedLookup.qll │ │ │ │ ├── deleteofpointertoincompleteclass │ │ │ │ │ └── DeleteOfPointerToIncompleteClass.qll │ │ │ │ ├── dereferenceofnullpointer │ │ │ │ │ └── DereferenceOfNullPointer.qll │ │ │ │ ├── destroyedvaluereferencedindestructorcatchblock │ │ │ │ │ └── DestroyedValueReferencedInDestructorCatchBlock.qll │ │ │ │ ├── differentidentifiersnottypographicallyunambiguous │ │ │ │ │ └── DifferentIdentifiersNotTypographicallyUnambiguous.qll │ │ │ │ ├── donotaccessaclosedfile │ │ │ │ │ └── DoNotAccessAClosedFile.qll │ │ │ │ ├── donotallowamutextogooutofscopewhilelocked │ │ │ │ │ └── DoNotAllowAMutexToGoOutOfScopeWhileLocked.qll │ │ │ │ ├── donotcopyaddressofautostorageobjecttootherobject │ │ │ │ │ └── DoNotCopyAddressOfAutoStorageObjectToOtherObject.qll │ │ │ │ ├── donotdestroyamutexwhileitislocked │ │ │ │ │ └── DoNotDestroyAMutexWhileItIsLocked.qll │ │ │ │ ├── donotpassaliasedpointertorestrictqualifiedparamshared │ │ │ │ │ └── DoNotPassAliasedPointerToRestrictQualifiedParamShared.qll │ │ │ │ ├── donotsubtractpointersaddressingdifferentarrays │ │ │ │ │ └── DoNotSubtractPointersAddressingDifferentArrays.qll │ │ │ │ ├── donotusemorethantwolevelsofpointerindirection │ │ │ │ │ └── DoNotUseMoreThanTwoLevelsOfPointerIndirection.qll │ │ │ │ ├── donotusepointerarithmetictoaddressdifferentarrays │ │ │ │ │ └── DoNotUsePointerArithmeticToAddressDifferentArrays.qll │ │ │ │ ├── donotuserandforgeneratingpseudorandomnumbers │ │ │ │ │ └── DoNotUseRandForGeneratingPseudorandomNumbers.qll │ │ │ │ ├── donotuserelationaloperatorswithdifferingarrays │ │ │ │ │ └── DoNotUseRelationalOperatorsWithDifferingArrays.qll │ │ │ │ ├── donotusesetjmporlongjmpshared │ │ │ │ │ └── DoNotUseSetjmpOrLongjmpShared.qll │ │ │ │ ├── emptythrowonlywithinacatchhandler │ │ │ │ │ └── EmptyThrowOnlyWithinACatchHandler.qll │ │ │ │ ├── enumerationnotdefinedwithanexplicitunderlyingtype │ │ │ │ │ └── EnumerationNotDefinedWithAnExplicitUnderlyingType.qll │ │ │ │ ├── exceptionobjecthavepointertype │ │ │ │ │ └── ExceptionObjectHavePointerType.qll │ │ │ │ ├── exceptionsafetyguarantees │ │ │ │ │ └── ExceptionSafetyGuarantees.qll │ │ │ │ ├── exceptionsafetyvalidstate │ │ │ │ │ └── ExceptionSafetyValidState.qll │ │ │ │ ├── exithandlerthrowsexception │ │ │ │ │ └── ExitHandlerThrowsException.qll │ │ │ │ ├── explicitabrupttermination │ │ │ │ │ └── ExplicitAbruptTermination.qll │ │ │ │ ├── forwardingreferencesandforwardnotusedtogether │ │ │ │ │ └── ForwardingReferencesAndForwardNotUsedTogether.qll │ │ │ │ ├── freememorywhennolongerneededshared │ │ │ │ │ └── FreeMemoryWhenNoLongerNeededShared.qll │ │ │ │ ├── functionerroneousreturnvaluenottested │ │ │ │ │ └── FunctionErroneousReturnValueNotTested.qll │ │ │ │ ├── functionlikemacrosdefined │ │ │ │ │ └── FunctionLikeMacrosDefined.qll │ │ │ │ ├── functionnoreturnattributecondition │ │ │ │ │ └── FunctionNoReturnAttributeCondition.qll │ │ │ │ ├── functionscallthemselveseitherdirectlyorindirectly │ │ │ │ │ └── FunctionsCallThemselvesEitherDirectlyOrIndirectly.qll │ │ │ │ ├── functiontemplatesexplicitlyspecialized │ │ │ │ │ └── FunctionTemplatesExplicitlySpecialized.qll │ │ │ │ ├── functiontypesnotinprototypeformshared │ │ │ │ │ └── FunctionTypesNotInPrototypeFormShared.qll │ │ │ │ ├── globalnamespacedeclarations │ │ │ │ │ └── GlobalNamespaceDeclarations.qll │ │ │ │ ├── globalsizedoperatordeletenotdefined │ │ │ │ │ └── GlobalSizedOperatorDeleteNotDefined.qll │ │ │ │ ├── globalunsizedoperatordeletenotdefined │ │ │ │ │ └── GlobalUnsizedOperatorDeleteNotDefined.qll │ │ │ │ ├── gotoreferencealabelinsurroundingblock │ │ │ │ │ └── GotoReferenceALabelInSurroundingBlock.qll │ │ │ │ ├── gotostatementcondition │ │ │ │ │ └── GotoStatementCondition.qll │ │ │ │ ├── gotostatementshouldnotbeused │ │ │ │ │ └── GotoStatementShouldNotBeUsed.qll │ │ │ │ ├── guardaccesstobitfields │ │ │ │ │ └── GuardAccessToBitFields.qll │ │ │ │ ├── handleallexceptionsduringstartup │ │ │ │ │ └── HandleAllExceptionsDuringStartup.qll │ │ │ │ ├── hashoperatorsused │ │ │ │ │ └── HashOperatorsUsed.qll │ │ │ │ ├── hiddeninheritednonoverridablememberfunction │ │ │ │ │ └── HiddenInheritedNonOverridableMemberFunction.qll │ │ │ │ ├── hiddeninheritedoverridablememberfunction │ │ │ │ │ └── HiddenInheritedOverridableMemberFunction.qll │ │ │ │ ├── identifierhidden │ │ │ │ │ └── IdentifierHidden.qll │ │ │ │ ├── identifierwithexternallinkageonedefinitionshared │ │ │ │ │ └── IdentifierWithExternalLinkageOneDefinitionShared.qll │ │ │ │ ├── ifelseterminationconstruct │ │ │ │ │ └── IfElseTerminationConstruct.qll │ │ │ │ ├── includeguardsnotused │ │ │ │ │ └── IncludeGuardsNotUsed.qll │ │ │ │ ├── informationleakageacrossboundaries │ │ │ │ │ └── InformationLeakageAcrossBoundaries.qll │ │ │ │ ├── initializeallvirtualbaseclasses │ │ │ │ │ └── InitializeAllVirtualBaseClasses.qll │ │ │ │ ├── initializerlistconstructoristheonlyconstructor │ │ │ │ │ └── InitializerListConstructorIsTheOnlyConstructor.qll │ │ │ │ ├── invalidatedenvstringpointers │ │ │ │ │ └── InvalidatedEnvStringPointers.qll │ │ │ │ ├── invalidatedenvstringpointerswarn │ │ │ │ │ └── InvalidatedEnvStringPointersWarn.qll │ │ │ │ ├── iofstreammissingpositioning │ │ │ │ │ └── IOFstreamMissingPositioning.qll │ │ │ │ ├── joinablethreadcopiedordestroyed │ │ │ │ │ └── JoinableThreadCopiedOrDestroyed.qll │ │ │ │ ├── joinordetachthreadonlyonce │ │ │ │ │ └── JoinOrDetachThreadOnlyOnce.qll │ │ │ │ ├── linesplicingusedincomments │ │ │ │ │ └── LineSplicingUsedInComments.qll │ │ │ │ ├── loopcompoundcondition │ │ │ │ │ └── LoopCompoundCondition.qll │ │ │ │ ├── lowercaselstartsinliteralsuffix │ │ │ │ │ └── LowercaseLStartsInLiteralSuffix.qll │ │ │ │ ├── macrooffsetofused │ │ │ │ │ └── MacroOffsetofUsed.qll │ │ │ │ ├── macroparameterfollowinghash │ │ │ │ │ └── MacroParameterFollowingHash.qll │ │ │ │ ├── macroparameternotenclosedinparentheses │ │ │ │ │ └── MacroParameterNotEnclosedInParentheses.qll │ │ │ │ ├── memcmpusedtocomparepaddingdata │ │ │ │ │ └── MemcmpUsedToComparePaddingData.qll │ │ │ │ ├── missingstaticspecifierfunctionredeclarationshared │ │ │ │ │ └── MissingStaticSpecifierFunctionRedeclarationShared.qll │ │ │ │ ├── missingstaticspecifierobjectredeclarationshared │ │ │ │ │ └── MissingStaticSpecifierObjectRedeclarationShared.qll │ │ │ │ ├── misuseofinfinitefloatingpointvalue │ │ │ │ │ └── MisuseOfInfiniteFloatingPointValue.qll │ │ │ │ ├── misuseofnanfloatingpointvalue │ │ │ │ │ └── MisuseOfNaNFloatingPointValue.qll │ │ │ │ ├── movedfromobjectsunspecifiedstate │ │ │ │ │ └── MovedFromObjectsUnspecifiedState.qll │ │ │ │ ├── multipleglobalormemberdeclarators │ │ │ │ │ └── MultipleGlobalOrMemberDeclarators.qll │ │ │ │ ├── multiplelocaldeclarators │ │ │ │ │ └── MultipleLocalDeclarators.qll │ │ │ │ ├── namedbitfieldswithsignedintegertype │ │ │ │ │ └── NamedBitFieldsWithSignedIntegerType.qll │ │ │ │ ├── namenotreferredusingaqualifiedidorthis │ │ │ │ │ └── NameNotReferredUsingAQualifiedIdOrThis.qll │ │ │ │ ├── namenotreferredusingaqualifiedidorthisaudit │ │ │ │ │ └── NameNotReferredUsingAQualifiedIdOrThisAudit.qll │ │ │ │ ├── nestedlabelinswitch │ │ │ │ │ └── NestedLabelInSwitch.qll │ │ │ │ ├── noexceptfunctionshouldnotpropagatetothecaller │ │ │ │ │ └── NoexceptFunctionShouldNotPropagateToTheCaller.qll │ │ │ │ ├── nonbooleanifstmt │ │ │ │ │ └── NonBooleanIfStmt.qll │ │ │ │ ├── nonbooleaniterationstmt │ │ │ │ │ └── NonBooleanIterationStmt.qll │ │ │ │ ├── nonconstantformat │ │ │ │ │ └── NonConstantFormat.qll │ │ │ │ ├── nonglobalfunctionmain │ │ │ │ │ └── NonGlobalFunctionMain.qll │ │ │ │ ├── nonstandardentitiesinstandardnamespaces │ │ │ │ │ └── NonStandardEntitiesInStandardNamespaces.qll │ │ │ │ ├── nonterminatedescapesequences │ │ │ │ │ └── NonTerminatedEscapeSequences.qll │ │ │ │ ├── nonuniqueenumerationconstant │ │ │ │ │ └── NonUniqueEnumerationConstant.qll │ │ │ │ ├── nonvoidfunctiondoesnotreturn │ │ │ │ │ └── NonVoidFunctionDoesNotReturn.qll │ │ │ │ ├── notdistinctidentifier │ │ │ │ │ └── NotDistinctIdentifier.qll │ │ │ │ ├── nullptrnottheonlyformofthenullpointerconstant │ │ │ │ │ └── NullptrNotTheOnlyFormOfTheNullPointerConstant.qll │ │ │ │ ├── objectaccessedafterlifetime │ │ │ │ │ └── ObjectAccessedAfterLifetime.qll │ │ │ │ ├── objectaccessedbeforelifetime │ │ │ │ │ └── ObjectAccessedBeforeLifetime.qll │ │ │ │ ├── objectsdynamictypeusedfromconstructorordestructor │ │ │ │ │ └── ObjectsDynamicTypeUsedFromConstructorOrDestructor.qll │ │ │ │ ├── onedefinitionruleviolation │ │ │ │ │ └── OneDefinitionRuleViolation.qll │ │ │ │ ├── onlyfreememoryallocateddynamicallyshared │ │ │ │ │ └── OnlyFreeMemoryAllocatedDynamicallyShared.qll │ │ │ │ ├── operationmaynotnullterminatecstylestring │ │ │ │ │ └── OperationMayNotNullTerminateCStyleString.qll │ │ │ │ ├── operatordeletemissingpartner │ │ │ │ │ └── OperatorDeleteMissingPartner.qll │ │ │ │ ├── orderingpredicatemustbestrictlyweak │ │ │ │ │ └── OrderingPredicateMustBeStrictlyWeak.qll │ │ │ │ ├── overridingshallspecifydifferentdefaultarguments │ │ │ │ │ └── OverridingShallSpecifyDifferentDefaultArguments.qll │ │ │ │ ├── ownedpointervaluestoredinunrelatedsmartpointer │ │ │ │ │ └── OwnedPointerValueStoredInUnrelatedSmartPointer.qll │ │ │ │ ├── placementnewinsufficientstorage │ │ │ │ │ └── PlacementNewInsufficientStorage.qll │ │ │ │ ├── placementnewnotproperlyaligned │ │ │ │ │ └── PlacementNewNotProperlyAligned.qll │ │ │ │ ├── potentiallyvirtualpointeronlycomparestonullptr │ │ │ │ │ └── PotentiallyVirtualPointerOnlyComparesToNullptr.qll │ │ │ │ ├── predicatefunctionobjectsshouldnotbemutable │ │ │ │ │ └── PredicateFunctionObjectsShouldNotBeMutable.qll │ │ │ │ ├── preprocessingdirectivewithinmacroargument │ │ │ │ │ └── PreprocessingDirectiveWithinMacroArgument.qll │ │ │ │ ├── preprocessorincludesforbiddenheadernames │ │ │ │ │ └── PreprocessorIncludesForbiddenHeaderNames.qll │ │ │ │ ├── preprocessorincludespreceded │ │ │ │ │ └── PreprocessorIncludesPreceded.qll │ │ │ │ ├── preservesafetywhenusingconditionvariables │ │ │ │ │ └── PreserveSafetyWhenUsingConditionVariables.qll │ │ │ │ ├── preventdeadlockbylockinginpredefinedorder │ │ │ │ │ └── PreventDeadlockByLockingInPredefinedOrder.qll │ │ │ │ ├── readofuninitializedmemory │ │ │ │ │ └── ReadOfUninitializedMemory.qll │ │ │ │ ├── reinterpretcastused │ │ │ │ │ └── ReinterpretCastUsed.qll │ │ │ │ ├── removeconstorvolatilequalification │ │ │ │ │ └── RemoveConstOrVolatileQualification.qll │ │ │ │ ├── resultofanassignmentoperatorshouldnotbeused │ │ │ │ │ └── ResultOfAnAssignmentOperatorShouldNotBeUsed.qll │ │ │ │ ├── rethrownestedwithoutcapture │ │ │ │ │ └── RethrowNestedWithoutCapture.qll │ │ │ │ ├── returnreferenceorpointertoautomaticlocalvariable │ │ │ │ │ └── ReturnReferenceOrPointerToAutomaticLocalVariable.qll │ │ │ │ ├── sectionsofcodeshallnotbecommentedout │ │ │ │ │ └── SectionsOfCodeShallNotBeCommentedOut.qll │ │ │ │ ├── stringnumberconversionmissingerrorcheck │ │ │ │ │ └── StringNumberConversionMissingErrorCheck.qll │ │ │ │ ├── switchcasepositioncondition │ │ │ │ │ └── SwitchCasePositionCondition.qll │ │ │ │ ├── switchcompoundcondition │ │ │ │ │ └── SwitchCompoundCondition.qll │ │ │ │ ├── switchnotwellformed │ │ │ │ │ └── SwitchNotWellFormed.qll │ │ │ │ ├── throwingnothrowoperatornewdelete │ │ │ │ │ └── ThrowingNoThrowOperatorNewDelete.qll │ │ │ │ ├── throwingoperatornewreturnsnull │ │ │ │ │ └── ThrowingOperatorNewReturnsNull.qll │ │ │ │ ├── throwingoperatornewthrowsinvalidexception │ │ │ │ │ └── ThrowingOperatorNewThrowsInvalidException.qll │ │ │ │ ├── typeomitted │ │ │ │ │ └── TypeOmitted.qll │ │ │ │ ├── uncheckedrangedomainpoleerrors │ │ │ │ │ └── UncheckedRangeDomainPoleErrors.qll │ │ │ │ ├── undefinedmacroidentifiers │ │ │ │ │ └── UndefinedMacroIdentifiers.qll │ │ │ │ ├── unnecessaryexposedidentifierdeclarationshared │ │ │ │ │ └── UnnecessaryExposedIdentifierDeclarationShared.qll │ │ │ │ ├── unreachablecode │ │ │ │ │ └── UnreachableCode.qll │ │ │ │ ├── unsignedintegerliteralsnotappropriatelysuffixed │ │ │ │ │ └── UnsignedIntegerLiteralsNotAppropriatelySuffixed.qll │ │ │ │ ├── unsignedoperationwithconstantoperandswraps │ │ │ │ │ └── UnsignedOperationWithConstantOperandsWraps.qll │ │ │ │ ├── unusedparameter │ │ │ │ │ └── UnusedParameter.qll │ │ │ │ ├── unusedtypedeclarations │ │ │ │ │ └── UnusedTypeDeclarations.qll │ │ │ │ ├── usageofassemblernotdocumented │ │ │ │ │ └── UsageOfAssemblerNotDocumented.qll │ │ │ │ ├── usecanonicalorderformemberinit │ │ │ │ │ └── UseCanonicalOrderForMemberInit.qll │ │ │ │ ├── useinitializerbracestomatchaggregatetypestructure │ │ │ │ │ └── UseInitializerBracesToMatchAggregateTypeStructure.qll │ │ │ │ ├── useofnonzerooctalliteral │ │ │ │ │ └── UseOfNonZeroOctalLiteral.qll │ │ │ │ ├── useonlyarrayindexingforpointerarithmetic │ │ │ │ │ └── UseOnlyArrayIndexingForPointerArithmetic.qll │ │ │ │ ├── validcontainerelementaccess │ │ │ │ │ └── ValidContainerElementAccess.qll │ │ │ │ ├── vectorshouldnotbespecializedwithbool │ │ │ │ │ └── VectorShouldNotBeSpecializedWithBool.qll │ │ │ │ ├── virtualandnonvirtualclassinthehierarchy │ │ │ │ │ └── VirtualAndNonVirtualClassInTheHierarchy.qll │ │ │ │ └── wrapspuriousfunctioninloop │ │ │ │ │ └── WrapSpuriousFunctionInLoop.qll │ │ │ │ ├── sideeffect │ │ │ │ ├── Customizations.qll │ │ │ │ └── DefaultEffects.qll │ │ │ │ ├── standardlibrary │ │ │ │ ├── CStdLib.qll │ │ │ │ ├── CharStreams.qll │ │ │ │ ├── Exceptions.qll │ │ │ │ ├── FileAccess.qll │ │ │ │ ├── FileStreams.qll │ │ │ │ ├── Random.qll │ │ │ │ ├── String.qll │ │ │ │ ├── Threads.qll │ │ │ │ └── Utility.qll │ │ │ │ ├── trustboundary │ │ │ │ ├── TrustBoundary.qll │ │ │ │ └── UninitializedField.qll │ │ │ │ └── types │ │ │ │ ├── Compatible.qll │ │ │ │ ├── Graph.qll │ │ │ │ ├── LvalueConversion.qll │ │ │ │ ├── Pointers.qll │ │ │ │ ├── SimpleAssignment.qll │ │ │ │ ├── TrivialType.qll │ │ │ │ ├── Type.qll │ │ │ │ ├── Uses.qll │ │ │ │ └── VariablyModifiedTypes.qll │ │ ├── ext │ │ │ └── stdc++.model.yml │ │ └── qlpack.yml │ └── test │ │ ├── Linkage │ │ ├── ExternalLinkage.expected │ │ ├── ExternalLinkage.ql │ │ ├── InternalLinkage.expected │ │ ├── InternalLinkage.ql │ │ ├── MutualExclusiveLinkage.expected │ │ ├── MutualExclusiveLinkage.ql │ │ └── test.cpp │ │ ├── codeql-pack.lock.yml │ │ ├── deviations │ │ ├── deviation_permits_basic_test │ │ │ ├── TypeLongDoubleUsed.expected │ │ │ ├── TypeLongDoubleUsed.ql │ │ │ ├── UnusedReturnValue.expected │ │ │ ├── UnusedReturnValue.ql │ │ │ ├── UselessAssignment.expected │ │ │ ├── UselessAssignment.ql │ │ │ ├── coding-standards.xml │ │ │ ├── coding-standards.yml │ │ │ ├── main.cpp │ │ │ └── permits │ │ │ │ ├── coding-standards.xml │ │ │ │ └── coding-standards.yml │ │ ├── deviations_basic_test │ │ │ ├── ListDeviationRecords.expected │ │ │ ├── ListDeviationRecords.qlref │ │ │ ├── TypeLongDoubleUsed.expected │ │ │ ├── TypeLongDoubleUsed.ql │ │ │ ├── UnusedReturnValue.expected │ │ │ ├── UnusedReturnValue.ql │ │ │ ├── UselessAssignment.expected │ │ │ ├── UselessAssignment.ql │ │ │ ├── attribute_syntax.cpp │ │ │ ├── coding-standards.xml │ │ │ ├── coding-standards.yml │ │ │ ├── main.cpp │ │ │ └── nested │ │ │ │ ├── coding-standards.xml │ │ │ │ ├── coding-standards.yml │ │ │ │ ├── nested1 │ │ │ │ └── test1.h │ │ │ │ ├── nested2 │ │ │ │ └── test2.h │ │ │ │ ├── nested3 │ │ │ │ └── test3.h │ │ │ │ └── test.h │ │ ├── deviations_report_deviated │ │ │ ├── DeviationsSuppression.expected │ │ │ ├── DeviationsSuppression.qlref │ │ │ ├── TypeLongDoubleUsed.expected │ │ │ ├── TypeLongDoubleUsed.ql │ │ │ ├── UnusedReturnValue.expected │ │ │ ├── UnusedReturnValue.ql │ │ │ ├── UselessAssignment.expected │ │ │ ├── UselessAssignment.ql │ │ │ ├── coding-standards.xml │ │ │ ├── coding-standards.yml │ │ │ ├── main.cpp │ │ │ └── nested │ │ │ │ ├── coding-standards.xml │ │ │ │ ├── coding-standards.yml │ │ │ │ ├── nested2 │ │ │ │ └── test2.h │ │ │ │ └── test.h │ │ └── invalid_deviations │ │ │ ├── InvalidDeviationCodeIdentifier.expected │ │ │ ├── InvalidDeviationCodeIdentifier.qlref │ │ │ ├── InvalidDeviationPermits.expected │ │ │ ├── InvalidDeviationPermits.qlref │ │ │ ├── InvalidDeviationRecords.expected │ │ │ ├── InvalidDeviationRecords.qlref │ │ │ ├── coding-standards.xml │ │ │ ├── coding-standards.yml │ │ │ └── invalidcodeidentifiers.cpp │ │ ├── guideline_recategorizations │ │ ├── DisappliedQuery.expected │ │ ├── DisappliedQuery.ql │ │ ├── InvalidGuidelineRecategorizations.expected │ │ ├── InvalidGuidelineRecategorizations.qlref │ │ ├── ListGuidelineRecategorizations.expected │ │ ├── ListGuidelineRecategorizations.qlref │ │ ├── a0-1-6.cpp │ │ ├── dummy.xml │ │ ├── invalid │ │ │ ├── coding-standards.xml │ │ │ └── coding-standards.yml │ │ ├── test.cpp │ │ └── valid │ │ │ ├── coding-standards.xml │ │ │ └── coding-standards.yml │ │ ├── includes │ │ ├── custom-library │ │ │ ├── gtest │ │ │ │ ├── gtest-internal.h │ │ │ │ └── gtest.h │ │ │ └── macro_c_style_casts.h │ │ └── standard-library │ │ │ ├── algorithm │ │ │ ├── array │ │ │ ├── assert.h │ │ │ ├── bits │ │ │ ├── stl_algobase.h │ │ │ └── stl_function.h │ │ │ ├── cassert │ │ │ ├── cctype │ │ │ ├── cerrno │ │ │ ├── cfenv │ │ │ ├── cfloat │ │ │ ├── chrono │ │ │ ├── chrono.h │ │ │ ├── cinttypes │ │ │ ├── climits │ │ │ ├── clocale │ │ │ ├── cmath │ │ │ ├── complex.h │ │ │ ├── condition_variable │ │ │ ├── condition_variable.h │ │ │ ├── csetjmp │ │ │ ├── csignal │ │ │ ├── cstdarg │ │ │ ├── cstddef │ │ │ ├── cstdint │ │ │ ├── cstdint.h │ │ │ ├── cstdio │ │ │ ├── cstdlib │ │ │ ├── cstdlib.h │ │ │ ├── cstring │ │ │ ├── cstring.h │ │ │ ├── ctime │ │ │ ├── ctype.h │ │ │ ├── cuchar │ │ │ ├── cwchar │ │ │ ├── cwctype │ │ │ ├── deque │ │ │ ├── deque.h │ │ │ ├── errno.h │ │ │ ├── exception │ │ │ ├── exception.h │ │ │ ├── fenv.h │ │ │ ├── float.h │ │ │ ├── fstream │ │ │ ├── fstream.h │ │ │ ├── functional │ │ │ ├── functional.h │ │ │ ├── initializer_list │ │ │ ├── inttypes.h │ │ │ ├── iomanip │ │ │ ├── ios │ │ │ ├── ios.h │ │ │ ├── iosfwd │ │ │ ├── iosfwd.h │ │ │ ├── iostream │ │ │ ├── iostream.h │ │ │ ├── iso646.h │ │ │ ├── istream │ │ │ ├── istream.h │ │ │ ├── iterator │ │ │ ├── iterator.h │ │ │ ├── limits │ │ │ ├── limits.h │ │ │ ├── locale.h │ │ │ ├── map │ │ │ ├── math.h │ │ │ ├── memory │ │ │ ├── memory.h │ │ │ ├── mutex │ │ │ ├── mutex.h │ │ │ ├── new │ │ │ ├── ostream │ │ │ ├── ostream.h │ │ │ ├── random │ │ │ ├── random.h │ │ │ ├── set │ │ │ ├── setjmp.h │ │ │ ├── signal.h │ │ │ ├── sstream │ │ │ ├── sstream.h │ │ │ ├── stdalign.h │ │ │ ├── stdarg.h │ │ │ ├── stdatomic.h │ │ │ ├── stdbool.h │ │ │ ├── stddef.h │ │ │ ├── stdexcept │ │ │ ├── stdexcept.h │ │ │ ├── stdint.h │ │ │ ├── stdio.h │ │ │ ├── stdlib.h │ │ │ ├── stdnoreturn.h │ │ │ ├── streambuf │ │ │ ├── streambuf.h │ │ │ ├── string │ │ │ ├── string.h │ │ │ ├── strstream │ │ │ ├── strstream.h │ │ │ ├── tgmath.h │ │ │ ├── thread │ │ │ ├── thread.h │ │ │ ├── threads.h │ │ │ ├── time.h │ │ │ ├── tuple │ │ │ ├── tuple.h │ │ │ ├── type_traits │ │ │ ├── type_traits.h │ │ │ ├── typeinfo │ │ │ ├── typeinfo.h │ │ │ ├── uchar.h │ │ │ ├── utility │ │ │ ├── utility.h │ │ │ ├── vector │ │ │ ├── vector.h │ │ │ ├── wchar.h │ │ │ └── wctype.h │ │ ├── library │ │ └── codingstandards │ │ │ └── cpp │ │ │ ├── alertreporting │ │ │ ├── DeduplicateMacroResults.expected │ │ │ ├── DeduplicateMacroResults.ql │ │ │ └── deduplicatemacroresults.cpp │ │ │ ├── exceptions │ │ │ └── catchblockcandidates │ │ │ │ ├── CatchBlockCandidates.expected │ │ │ │ ├── CatchBlockCandidates.ql │ │ │ │ └── catchblockcandidates.cpp │ │ │ ├── mainlikefunctions │ │ │ └── typedefint │ │ │ │ ├── MainLikeFunction.expected │ │ │ │ ├── MainLikeFunction.ql │ │ │ │ └── test.cpp │ │ │ ├── scope │ │ │ ├── ParentScope.expected │ │ │ ├── ParentScope.ql │ │ │ └── test.cpp │ │ │ ├── structuralequivalence │ │ │ ├── StructuralEquivalence.expected │ │ │ ├── StructuralEquivalence.ql │ │ │ └── test.cpp │ │ │ └── trivialtypes │ │ │ ├── LiteralType.expected │ │ │ ├── LiteralType.ql │ │ │ ├── TrivialType.expected │ │ │ ├── TrivialType.ql │ │ │ ├── TriviallyCopyableType.expected │ │ │ ├── TriviallyCopyableType.ql │ │ │ └── trivialtypes.cpp │ │ ├── options │ │ ├── qlpack.yml │ │ └── rules │ │ ├── accessofnonexistingmemberthroughpointertomember │ │ ├── AccessOfNonExistingMemberThroughPointerToMember.expected │ │ ├── AccessOfNonExistingMemberThroughPointerToMember.ql │ │ └── test.cpp │ │ ├── accessofundefinedmemberthroughnullpointer │ │ ├── AccessOfUndefinedMemberThroughNullPointer.expected │ │ ├── AccessOfUndefinedMemberThroughNullPointer.ql │ │ └── test.cpp │ │ ├── accessofundefinedmemberthroughuninitializedstaticpointer │ │ ├── AccessOfUndefinedMemberThroughUninitializedStaticPointer.expected │ │ ├── AccessOfUndefinedMemberThroughUninitializedStaticPointer.ql │ │ └── test.cpp │ │ ├── addressofoperatoroverloaded │ │ ├── AddressOfOperatorOverloaded.expected │ │ ├── AddressOfOperatorOverloaded.ql │ │ └── test.cpp │ │ ├── amixedusemacroargumentsubjecttoexpansion │ │ ├── AMixedUseMacroArgumentSubjectToExpansion.expected │ │ ├── AMixedUseMacroArgumentSubjectToExpansion.ql │ │ └── test.cpp │ │ ├── arraypassedasfunctionargumentdecaytoapointer │ │ ├── ArrayPassedAsFunctionArgumentDecayToAPointer.expected │ │ ├── ArrayPassedAsFunctionArgumentDecayToAPointer.ql │ │ └── test.cpp │ │ ├── asmdeclarationused │ │ ├── AsmDeclarationUsed.expected │ │ ├── AsmDeclarationUsed.ql │ │ └── test.cpp │ │ ├── atofatoiatolandatollused │ │ ├── AtofAtoiAtolAndAtollUsed.expected │ │ ├── AtofAtoiAtolAndAtollUsed.ql │ │ └── test.cpp │ │ ├── backslashcharactermisuse │ │ ├── BackslashCharacterMisuse.expected │ │ ├── BackslashCharacterMisuse.ql │ │ └── test.cpp │ │ ├── basicstringmaynotbenullterminated │ │ ├── BasicStringMayNotBeNullTerminated.expected │ │ ├── BasicStringMayNotBeNullTerminated.ql │ │ └── test.cpp │ │ ├── bitfieldshallhaveanappropriatetype │ │ ├── BitFieldShallHaveAnAppropriateType.expected │ │ ├── BitFieldShallHaveAnAppropriateType.ql │ │ └── test.cpp │ │ ├── builtinunaryoperatorappliedtounsignedexpression │ │ ├── BuiltInUnaryOperatorAppliedToUnsignedExpression.expected │ │ ├── BuiltInUnaryOperatorAppliedToUnsignedExpression.ql │ │ └── test.cpp │ │ ├── castcharbeforeconvertingtolargersizes │ │ ├── CastCharBeforeConvertingToLargerSizes.expected │ │ ├── CastCharBeforeConvertingToLargerSizes.ql │ │ └── test.cpp │ │ ├── castsbetweenapointertofunctionandanyothertype │ │ ├── CastsBetweenAPointerToFunctionAndAnyOtherType.expected │ │ ├── CastsBetweenAPointerToFunctionAndAnyOtherType.ql │ │ └── test.cpp │ │ ├── catchblockshadowing │ │ ├── CatchBlockShadowing.expected │ │ ├── CatchBlockShadowing.ql │ │ └── test.cpp │ │ ├── catchexceptionsbylvaluereference │ │ ├── CatchExceptionsByLvalueReference.expected │ │ ├── CatchExceptionsByLvalueReference.ql │ │ └── test.cpp │ │ ├── charactersequenceusedwithinacstylecomment │ │ ├── CharacterSequenceUsedWithinACStyleComment.expected │ │ ├── CharacterSequenceUsedWithinACStyleComment.ql │ │ └── test.cpp │ │ ├── commaoperatorused │ │ ├── CommaOperatorUsed.expected │ │ ├── CommaOperatorUsed.ql │ │ └── test.cpp │ │ ├── conditionvariablepostconditionfailed │ │ ├── ConditionVariablePostConditionFailed.expected │ │ ├── ConditionVariablePostConditionFailed.ql │ │ ├── test.cpp │ │ ├── test_condition_variable.cpp │ │ └── test_condition_variable_any.cpp │ │ ├── constantunsignedintegerexpressionswraparound │ │ ├── ConstantUnsignedIntegerExpressionsWrapAround.expected │ │ ├── ConstantUnsignedIntegerExpressionsWrapAround.ql │ │ └── test.cpp │ │ ├── constlikereturnvalue │ │ ├── ConstLikeReturnValue.expected │ │ ├── ConstLikeReturnValue.ql │ │ └── test.cpp │ │ ├── containeraccesswithoutrangecheck │ │ ├── ContainerAccessWithoutRangeCheck.expected │ │ ├── ContainerAccessWithoutRangeCheck.ql │ │ └── test.cpp │ │ ├── copyandmoveassignmentsshallhandleselfassignment │ │ ├── CopyAndMoveAssignmentsShallHandleSelfAssignment.expected │ │ ├── CopyAndMoveAssignmentsShallHandleSelfAssignment.ql │ │ └── test.cpp │ │ ├── csignalfunctionsused │ │ ├── CsignalFunctionsUsed.expected │ │ ├── CsignalFunctionsUsed.ql │ │ └── test.cpp │ │ ├── csignaltypesused │ │ ├── CsignalTypesUsed.expected │ │ ├── CsignalTypesUsed.ql │ │ └── test.cpp │ │ ├── cstdiofunctionsused │ │ ├── CstdioFunctionsUsed.expected │ │ ├── CstdioFunctionsUsed.ql │ │ └── test.cpp │ │ ├── cstdiomacrosused │ │ ├── CstdioMacrosUsed.expected │ │ ├── CstdioMacrosUsed.ql │ │ └── test.cpp │ │ ├── cstdiotypesused │ │ ├── CstdioTypesUsed.expected │ │ ├── CstdioTypesUsed.ql │ │ └── test.cpp │ │ ├── danglingcapturewhenmovinglambdaobject │ │ ├── DanglingCaptureWhenMovingLambdaObject.expected │ │ ├── DanglingCaptureWhenMovingLambdaObject.ql │ │ └── test.cpp │ │ ├── danglingcapturewhenreturninglambdaobject │ │ ├── DanglingCaptureWhenReturningLambdaObject.expected │ │ ├── DanglingCaptureWhenReturningLambdaObject.ql │ │ └── test.cpp │ │ ├── deadcode │ │ ├── DeadCode.expected │ │ ├── DeadCode.ql │ │ └── test.cpp │ │ ├── definitionnotconsideredforunqualifiedlookup │ │ ├── DefinitionNotConsideredForUnqualifiedLookup.expected │ │ ├── DefinitionNotConsideredForUnqualifiedLookup.ql │ │ └── test.cpp │ │ ├── deleteofpointertoincompleteclass │ │ ├── DeleteOfPointerToIncompleteClass.expected │ │ ├── DeleteOfPointerToIncompleteClass.ql │ │ └── test.cpp │ │ ├── dereferenceofnullpointer │ │ ├── DereferenceOfNullPointer.expected │ │ ├── DereferenceOfNullPointer.ql │ │ └── test.cpp │ │ ├── destroyedvaluereferencedindestructorcatchblock │ │ ├── DestroyedValueReferencedInDestructorCatchBlock.expected │ │ ├── DestroyedValueReferencedInDestructorCatchBlock.ql │ │ └── test.cpp │ │ ├── differentidentifiersnottypographicallyunambiguous │ │ ├── DifferentIdentifiersNotTypographicallyUnambiguous.expected │ │ ├── DifferentIdentifiersNotTypographicallyUnambiguous.ql │ │ └── test.cpp │ │ ├── donotallowamutextogooutofscopewhilelocked │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.expected │ │ ├── DoNotAllowAMutexToGoOutOfScopeWhileLocked.ql │ │ └── test.cpp │ │ ├── donotcopyaddressofautostorageobjecttootherobject │ │ ├── DoNotCopyAddressOfAutoStorageObjectToOtherObject.expected │ │ ├── DoNotCopyAddressOfAutoStorageObjectToOtherObject.ql │ │ ├── manager.cpp │ │ ├── stack_escapes_test.cpp │ │ └── test.cpp │ │ ├── donotdestroyamutexwhileitislocked │ │ ├── DoNotDestroyAMutexWhileItIsLocked.expected │ │ ├── DoNotDestroyAMutexWhileItIsLocked.ql │ │ └── test.cpp │ │ ├── donotpassaliasedpointertorestrictqualifiedparamshared │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParamShared.expected │ │ ├── DoNotPassAliasedPointerToRestrictQualifiedParamShared.ql │ │ └── test.cpp │ │ ├── donotsubtractpointersaddressingdifferentarrays │ │ ├── DoNotSubtractPointersAddressingDifferentArrays.expected │ │ ├── DoNotSubtractPointersAddressingDifferentArrays.ql │ │ └── test.cpp │ │ ├── donotusemorethantwolevelsofpointerindirection │ │ ├── DoNotUseMoreThanTwoLevelsOfPointerIndirection.expected │ │ ├── DoNotUseMoreThanTwoLevelsOfPointerIndirection.ql │ │ └── test.cpp │ │ ├── donotusepointerarithmetictoaddressdifferentarrays │ │ ├── DoNotUsePointerArithmeticToAddressDifferentArrays.expected │ │ ├── DoNotUsePointerArithmeticToAddressDifferentArrays.ql │ │ └── test.cpp │ │ ├── donotuserandforgeneratingpseudorandomnumbers │ │ ├── DoNotUseRandForGeneratingPseudorandomNumbers.expected │ │ ├── DoNotUseRandForGeneratingPseudorandomNumbers.ql │ │ └── test.cpp │ │ ├── donotuserelationaloperatorswithdifferingarrays │ │ ├── DoNotUseRelationalOperatorsWithDifferingArrays.expected │ │ ├── DoNotUseRelationalOperatorsWithDifferingArrays.ql │ │ └── test.cpp │ │ ├── donotusesetjmporlongjmpshared │ │ ├── DoNotUseSetjmpOrLongjmpShared.expected │ │ ├── DoNotUseSetjmpOrLongjmpShared.expected.qcc │ │ ├── DoNotUseSetjmpOrLongjmpShared.ql │ │ └── test.cpp │ │ ├── emptythrowonlywithinacatchhandler │ │ ├── EmptyThrowOnlyWithinACatchHandler.expected │ │ ├── EmptyThrowOnlyWithinACatchHandler.ql │ │ └── test.cpp │ │ ├── enumerationnotdefinedwithanexplicitunderlyingtype │ │ ├── EnumerationNotDefinedWithAnExplicitUnderlyingType.expected │ │ ├── EnumerationNotDefinedWithAnExplicitUnderlyingType.ql │ │ └── test.cpp │ │ ├── exceptionobjecthavepointertype │ │ ├── ExceptionObjectHavePointerType.expected │ │ ├── ExceptionObjectHavePointerType.ql │ │ └── test.cpp │ │ ├── exceptionsafetyguarantees │ │ ├── ExceptionSafetyGuarantees.expected │ │ ├── ExceptionSafetyGuarantees.ql │ │ └── test.cpp │ │ ├── exceptionsafetyvalidstate │ │ ├── ExceptionSafetyValidState.expected │ │ ├── ExceptionSafetyValidState.ql │ │ └── test.cpp │ │ ├── exithandlerthrowsexception │ │ ├── ExitHandlerThrowsException.expected │ │ ├── ExitHandlerThrowsException.ql │ │ ├── test.cpp │ │ └── test_exit_handler.cpp │ │ ├── explicitabrupttermination │ │ ├── ExplicitAbruptTermination.expected │ │ ├── ExplicitAbruptTermination.ql │ │ ├── test.cpp │ │ └── test_explicit_abrupt_termination.cpp │ │ ├── forwardingreferencesandforwardnotusedtogether │ │ ├── ForwardingReferencesAndForwardNotUsedTogether.expected │ │ ├── ForwardingReferencesAndForwardNotUsedTogether.ql │ │ └── test.cpp │ │ ├── functionerroneousreturnvaluenottested │ │ ├── FunctionErroneousReturnValueNotTested.expected │ │ ├── FunctionErroneousReturnValueNotTested.ql │ │ └── test.cpp │ │ ├── functionlikemacrosdefined │ │ ├── FunctionLikeMacrosDefined.expected │ │ ├── FunctionLikeMacrosDefined.ql │ │ └── test.cpp │ │ ├── functionnoreturnattributecondition │ │ ├── FunctionNoReturnAttributeCondition.expected │ │ ├── FunctionNoReturnAttributeCondition.ql │ │ └── test.cpp │ │ ├── functionscallthemselveseitherdirectlyorindirectly │ │ ├── FunctionsCallThemselvesEitherDirectlyOrIndirectly.expected │ │ ├── FunctionsCallThemselvesEitherDirectlyOrIndirectly.ql │ │ └── test.cpp │ │ ├── functiontemplatesexplicitlyspecialized │ │ ├── FunctionTemplatesExplicitlySpecialized.expected │ │ ├── FunctionTemplatesExplicitlySpecialized.ql │ │ └── test.cpp │ │ ├── globalnamespacedeclarations │ │ ├── GlobalNamespaceDeclarations.expected │ │ ├── GlobalNamespaceDeclarations.ql │ │ └── test.cpp │ │ ├── globalsizedoperatordeletenotdefined │ │ ├── GlobalSizedOperatorDeleteNotDefined.expected │ │ ├── GlobalSizedOperatorDeleteNotDefined.ql │ │ └── test.cpp │ │ ├── globalunsizedoperatordeletenotdefined │ │ ├── GlobalUnsizedOperatorDeleteNotDefined.expected │ │ ├── GlobalUnsizedOperatorDeleteNotDefined.ql │ │ └── test.cpp │ │ ├── gotoreferencealabelinsurroundingblock │ │ ├── GotoReferenceALabelInSurroundingBlock.expected │ │ ├── GotoReferenceALabelInSurroundingBlock.ql │ │ └── test.cpp │ │ ├── gotostatementcondition │ │ ├── GotoStatementCondition.expected │ │ ├── GotoStatementCondition.ql │ │ └── test.cpp │ │ ├── gotostatementshouldnotbeused │ │ ├── GotoStatementShouldNotBeUsed.expected │ │ ├── GotoStatementShouldNotBeUsed.ql │ │ └── test.cpp │ │ ├── guardaccesstobitfields │ │ ├── GuardAccessToBitFields.expected │ │ ├── GuardAccessToBitFields.ql │ │ └── test.cpp │ │ ├── handleallexceptionsduringstartup │ │ ├── HandleAllExceptionsDuringStartup.expected │ │ ├── HandleAllExceptionsDuringStartup.ql │ │ └── test.cpp │ │ ├── hashoperatorsused │ │ ├── HashOperatorsUsed.expected │ │ ├── HashOperatorsUsed.ql │ │ └── test.cpp │ │ ├── hiddeninheritednonoverridablememberfunction │ │ ├── HiddenInheritedNonOverridableMemberFunction.expected │ │ ├── HiddenInheritedNonOverridableMemberFunction.ql │ │ └── test.cpp │ │ ├── hiddeninheritedoverridablememberfunction │ │ ├── HiddenInheritedOverridableMemberFunction.expected │ │ ├── HiddenInheritedOverridableMemberFunction.ql │ │ └── test.cpp │ │ ├── identifierhidden │ │ ├── IdentifierHidden.expected │ │ ├── IdentifierHidden.ql │ │ └── test.cpp │ │ ├── identifierwithexternallinkageonedefinitionshared │ │ ├── IdentifierWithExternalLinkageOneDefinitionShared.expected │ │ ├── IdentifierWithExternalLinkageOneDefinitionShared.ql │ │ ├── test.cpp │ │ ├── test1.cpp │ │ └── test2.cpp │ │ ├── ifelseterminationconstruct │ │ ├── IfElseTerminationConstruct.expected │ │ ├── IfElseTerminationConstruct.ql │ │ └── test.cpp │ │ ├── includeguardsnotused │ │ ├── IncludeGuardsNotUsed.expected │ │ ├── IncludeGuardsNotUsed.ql │ │ ├── headers │ │ │ ├── test1.hpp │ │ │ ├── test2.hpp │ │ │ ├── test3.hpp │ │ │ ├── test4.hpp │ │ │ ├── test5.hpp │ │ │ └── test6.hpp │ │ └── test.cpp │ │ ├── informationleakageacrossboundaries │ │ ├── InformationLeakageAcrossBoundaries.expected │ │ ├── InformationLeakageAcrossBoundaries.ql │ │ ├── arrays.cpp │ │ ├── inheritance.cpp │ │ ├── interprocedural.cpp │ │ ├── multilayer.cpp │ │ └── test.cpp │ │ ├── initializeallvirtualbaseclasses │ │ ├── InitializeAllVirtualBaseClasses.expected │ │ ├── InitializeAllVirtualBaseClasses.ql │ │ └── test.cpp │ │ ├── initializerlistconstructoristheonlyconstructor │ │ ├── InitializerListConstructorIsTheOnlyConstructor.expected │ │ ├── InitializerListConstructorIsTheOnlyConstructor.ql │ │ └── test.cpp │ │ ├── invalidatedenvstringpointers │ │ ├── InvalidatedEnvStringPointers.expected │ │ ├── InvalidatedEnvStringPointers.ql │ │ └── test.cpp │ │ ├── invalidatedenvstringpointerswarn │ │ ├── InvalidatedEnvStringPointersWarn.expected │ │ ├── InvalidatedEnvStringPointersWarn.ql │ │ └── test.cpp │ │ ├── iofstreammissingpositioning │ │ ├── IOFstreamMissingPositioning.expected │ │ ├── IOFstreamMissingPositioning.ql │ │ └── test.cpp │ │ ├── joinablethreadcopiedordestroyed │ │ ├── JoinableThreadCopiedOrDestroyed.expected │ │ ├── JoinableThreadCopiedOrDestroyed.ql │ │ ├── test.cpp │ │ └── test_joinable_thread.cpp │ │ ├── linesplicingusedincomments │ │ ├── LineSplicingUsedInComments.expected │ │ ├── LineSplicingUsedInComments.ql │ │ └── test.cpp │ │ ├── loopcompoundcondition │ │ ├── LoopCompoundCondition.expected │ │ ├── LoopCompoundCondition.ql │ │ └── test.cpp │ │ ├── lowercaselstartsinliteralsuffix │ │ ├── LowercaseLStartsInLiteralSuffix.expected │ │ ├── LowercaseLStartsInLiteralSuffix.ql │ │ ├── README.md │ │ └── test.cpp │ │ ├── macrooffsetofused │ │ ├── MacroOffsetofUsed.expected │ │ ├── MacroOffsetofUsed.expected.gcc │ │ ├── MacroOffsetofUsed.expected.qcc │ │ ├── MacroOffsetofUsed.ql │ │ └── test.cpp │ │ ├── macroparameterfollowinghash │ │ ├── MacroParameterFollowingHash.expected │ │ ├── MacroParameterFollowingHash.ql │ │ └── test.cpp │ │ ├── macroparameternotenclosedinparentheses │ │ ├── MacroParameterNotEnclosedInParentheses.expected │ │ ├── MacroParameterNotEnclosedInParentheses.ql │ │ └── test.cpp │ │ ├── memcmpusedtocomparepaddingdata │ │ ├── MemcmpUsedToComparePaddingData.expected │ │ ├── MemcmpUsedToComparePaddingData.ql │ │ └── test.cpp │ │ ├── missingstaticspecifierfunctionredeclarationshared │ │ ├── MissingStaticSpecifierFunctionRedeclarationShared.expected │ │ ├── MissingStaticSpecifierFunctionRedeclarationShared.ql │ │ └── test.cpp │ │ ├── misuseofinfinitefloatingpointvalue │ │ ├── MisuseOfInfiniteFloatingPointValue.expected │ │ ├── MisuseOfInfiniteFloatingPointValue.ql │ │ └── test.cpp │ │ ├── misuseofnanfloatingpointvalue │ │ ├── MisuseOfNaNFloatingPointValue.expected │ │ ├── MisuseOfNaNFloatingPointValue.ql │ │ └── test.cpp │ │ ├── movedfromobjectsunspecifiedstate │ │ ├── MovedFromObjectsUnspecifiedState.expected │ │ ├── MovedFromObjectsUnspecifiedState.ql │ │ └── test.cpp │ │ ├── multipleglobalormemberdeclarators │ │ ├── MultipleGlobalOrMemberDeclarators.expected │ │ ├── MultipleGlobalOrMemberDeclarators.ql │ │ └── test.cpp │ │ ├── multiplelocaldeclarators │ │ ├── MultipleLocalDeclarators.expected │ │ ├── MultipleLocalDeclarators.ql │ │ └── test.cpp │ │ ├── namedbitfieldswithsignedintegertype │ │ ├── NamedBitFieldsWithSignedIntegerType.expected │ │ ├── NamedBitFieldsWithSignedIntegerType.ql │ │ └── test.cpp │ │ ├── namenotreferredusingaqualifiedidorthis │ │ ├── NameNotReferredUsingAQualifiedIdOrThis.expected │ │ ├── NameNotReferredUsingAQualifiedIdOrThis.ql │ │ └── test.cpp │ │ ├── namenotreferredusingaqualifiedidorthisaudit │ │ ├── NameNotReferredUsingAQualifiedIdOrThisAudit.expected │ │ ├── NameNotReferredUsingAQualifiedIdOrThisAudit.ql │ │ └── test.cpp │ │ ├── nestedlabelinswitch │ │ ├── NestedLabelInSwitch.expected │ │ ├── NestedLabelInSwitch.ql │ │ └── test.cpp │ │ ├── noexceptfunctionshouldnotpropagatetothecaller │ │ ├── NoexceptFunctionShouldNotPropagateToTheCaller.expected │ │ ├── NoexceptFunctionShouldNotPropagateToTheCaller.ql │ │ └── test.cpp │ │ ├── nonbooleanifstmt │ │ ├── NonBooleanIfStmt.expected │ │ ├── NonBooleanIfStmt.ql │ │ └── test.cpp │ │ ├── nonbooleaniterationstmt │ │ ├── NonBooleanIterationStmt.expected │ │ ├── NonBooleanIterationStmt.ql │ │ └── test.cpp │ │ ├── nonconstantformat │ │ ├── NonConstantFormat.expected │ │ ├── NonConstantFormat.ql │ │ └── test.cpp │ │ ├── nonglobalfunctionmain │ │ ├── NonGlobalFunctionMain.expected │ │ ├── NonGlobalFunctionMain.ql │ │ └── test.cpp │ │ ├── nonstandardentitiesinstandardnamespaces │ │ ├── NonStandardEntitiesInStandardNamespaces.expected │ │ ├── NonStandardEntitiesInStandardNamespaces.ql │ │ └── test.cpp │ │ ├── nonterminatedescapesequences │ │ ├── NonTerminatedEscapeSequences.expected │ │ ├── NonTerminatedEscapeSequences.ql │ │ └── test.cpp │ │ ├── nonuniqueenumerationconstant │ │ ├── NonUniqueEnumerationConstant.expected │ │ ├── NonUniqueEnumerationConstant.ql │ │ └── test.cpp │ │ ├── nonvoidfunctiondoesnotreturn │ │ ├── NonVoidFunctionDoesNotReturn.expected │ │ ├── NonVoidFunctionDoesNotReturn.ql │ │ └── test.cpp │ │ ├── nullptrnottheonlyformofthenullpointerconstant │ │ ├── NullptrNotTheOnlyFormOfTheNullPointerConstant.expected │ │ ├── NullptrNotTheOnlyFormOfTheNullPointerConstant.expected.clang │ │ ├── NullptrNotTheOnlyFormOfTheNullPointerConstant.expected.gcc │ │ ├── NullptrNotTheOnlyFormOfTheNullPointerConstant.expected.qcc │ │ ├── NullptrNotTheOnlyFormOfTheNullPointerConstant.ql │ │ ├── test.cpp │ │ ├── test.cpp.clang │ │ ├── test.cpp.gcc │ │ └── test.cpp.qcc │ │ ├── objectaccessedafterlifetime │ │ ├── ObjectAccessedAfterLifetime.expected │ │ ├── ObjectAccessedAfterLifetime.ql │ │ └── test.cpp │ │ ├── objectaccessedbeforelifetime │ │ ├── ObjectAccessedBeforeLifetime.expected │ │ ├── ObjectAccessedBeforeLifetime.ql │ │ └── test.cpp │ │ ├── objectsdynamictypeusedfromconstructorordestructor │ │ ├── ObjectsDynamicTypeUsedFromConstructorOrDestructor.expected │ │ ├── ObjectsDynamicTypeUsedFromConstructorOrDestructor.ql │ │ └── test.cpp │ │ ├── onedefinitionruleviolation │ │ ├── OneDefinitionRuleViolation.expected │ │ ├── OneDefinitionRuleViolation.ql │ │ ├── test.cpp │ │ ├── test.h │ │ ├── test1.cpp │ │ └── test2.cpp │ │ ├── operationmaynotnullterminatecstylestring │ │ ├── OperationMayNotNullTerminateCStyleString.expected │ │ ├── OperationMayNotNullTerminateCStyleString.ql │ │ └── test.cpp │ │ ├── operatordeletemissingpartner │ │ ├── OperatorDeleteMissingPartner.expected │ │ ├── OperatorDeleteMissingPartner.ql │ │ └── test.cpp │ │ ├── orderingpredicatemustbestrictlyweak │ │ ├── OrderingPredicateMustBeStrictlyWeak.expected │ │ ├── OrderingPredicateMustBeStrictlyWeak.ql │ │ └── test.cpp │ │ ├── overridingshallspecifydifferentdefaultarguments │ │ ├── OverridingShallSpecifyDifferentDefaultArguments.expected │ │ ├── OverridingShallSpecifyDifferentDefaultArguments.ql │ │ └── test.cpp │ │ ├── ownedpointervaluestoredinunrelatedsmartpointer │ │ ├── OwnedPointerValueStoredInUnrelatedSmartPointer.expected │ │ ├── OwnedPointerValueStoredInUnrelatedSmartPointer.expected.qcc │ │ ├── OwnedPointerValueStoredInUnrelatedSmartPointer.ql │ │ └── test.cpp │ │ ├── placementnewinsufficientstorage │ │ ├── PlacementNewInsufficientStorage.expected │ │ ├── PlacementNewInsufficientStorage.ql │ │ └── test.cpp │ │ ├── placementnewnotproperlyaligned │ │ ├── PlacementNewNotProperlyAligned.expected │ │ ├── PlacementNewNotProperlyAligned.ql │ │ └── test.cpp │ │ ├── potentiallyvirtualpointeronlycomparestonullptr │ │ ├── PotentiallyVirtualPointerOnlyComparesToNullptr.expected │ │ ├── PotentiallyVirtualPointerOnlyComparesToNullptr.ql │ │ └── test.cpp │ │ ├── predicatefunctionobjectsshouldnotbemutable │ │ ├── PredicateFunctionObjectsShouldNotBeMutable.expected │ │ ├── PredicateFunctionObjectsShouldNotBeMutable.ql │ │ └── test.cpp │ │ ├── preprocessingdirectivewithinmacroargument │ │ ├── PreprocessingDirectiveWithinMacroArgument.expected │ │ ├── PreprocessingDirectiveWithinMacroArgument.ql │ │ └── test.cpp │ │ ├── preprocessorincludesforbiddenheadernames │ │ ├── 'badheader.h │ │ ├── PreprocessorIncludesForbiddenHeaderNames.expected │ │ ├── PreprocessorIncludesForbiddenHeaderNames.ql │ │ ├── badheade'r.h │ │ └── test.cpp │ │ ├── preprocessorincludespreceded │ │ ├── PreprocessorIncludesPreceded.expected │ │ ├── PreprocessorIncludesPreceded.ql │ │ └── test.cpp │ │ ├── preservesafetywhenusingconditionvariables │ │ ├── PreserveSafetyWhenUsingConditionVariables.expected │ │ ├── PreserveSafetyWhenUsingConditionVariables.ql │ │ └── test.cpp │ │ ├── preventdeadlockbylockinginpredefinedorder │ │ ├── PreventDeadlockByLockingInPredefinedOrder.expected │ │ ├── PreventDeadlockByLockingInPredefinedOrder.ql │ │ └── test.cpp │ │ ├── readofuninitializedmemory │ │ ├── ReadOfUninitializedMemory.expected │ │ ├── ReadOfUninitializedMemory.ql │ │ └── test.cpp │ │ ├── reinterpretcastused │ │ ├── ReinterpretCastUsed.expected │ │ ├── ReinterpretCastUsed.ql │ │ └── test.cpp │ │ ├── removeconstorvolatilequalification │ │ ├── RemoveConstOrVolatileQualification.expected │ │ ├── RemoveConstOrVolatileQualification.ql │ │ └── test.cpp │ │ ├── resultofanassignmentoperatorshouldnotbeused │ │ ├── ResultOfAnAssignmentOperatorShouldNotBeUsed.expected │ │ ├── ResultOfAnAssignmentOperatorShouldNotBeUsed.ql │ │ └── test.cpp │ │ ├── rethrownestedwithoutcapture │ │ ├── RethrowNestedWithoutCapture.expected │ │ ├── RethrowNestedWithoutCapture.ql │ │ ├── test.cpp │ │ └── test_rethrow.cpp │ │ ├── returnreferenceorpointertoautomaticlocalvariable │ │ ├── ReturnReferenceOrPointerToAutomaticLocalVariable.expected │ │ ├── ReturnReferenceOrPointerToAutomaticLocalVariable.ql │ │ └── test.cpp │ │ ├── sectionsofcodeshallnotbecommentedout │ │ ├── SectionsOfCodeShallNotBeCommentedOut.expected │ │ ├── SectionsOfCodeShallNotBeCommentedOut.ql │ │ ├── config.h │ │ └── test.cpp │ │ ├── stringnumberconversionmissingerrorcheck │ │ ├── StringNumberConversionMissingErrorCheck.expected │ │ ├── StringNumberConversionMissingErrorCheck.ql │ │ └── test.cpp │ │ ├── switchcasepositioncondition │ │ ├── SwitchCasePositionCondition.expected │ │ ├── SwitchCasePositionCondition.ql │ │ └── test.cpp │ │ ├── switchcompoundcondition │ │ ├── SwitchCompoundCondition.expected │ │ ├── SwitchCompoundCondition.ql │ │ └── test.cpp │ │ ├── switchnotwellformed │ │ ├── SwitchNotWellFormed.expected │ │ ├── SwitchNotWellFormed.ql │ │ └── test.cpp │ │ ├── throwingnothrowoperatornewdelete │ │ ├── ThrowingNoThrowOperatorNewDelete.expected │ │ ├── ThrowingNoThrowOperatorNewDelete.ql │ │ └── test.cpp │ │ ├── throwingoperatornewreturnsnull │ │ ├── ThrowingOperatorNewReturnsNull.expected │ │ ├── ThrowingOperatorNewReturnsNull.ql │ │ └── test.cpp │ │ ├── throwingoperatornewthrowsinvalidexception │ │ ├── ThrowingOperatorNewThrowsInvalidException.expected │ │ ├── ThrowingOperatorNewThrowsInvalidException.ql │ │ └── test.cpp │ │ ├── uncheckedrangedomainpoleerrors │ │ ├── UncheckedRangeDomainPoleErrors.expected │ │ ├── UncheckedRangeDomainPoleErrors.ql │ │ └── test.cpp │ │ ├── undefinedmacroidentifiers │ │ ├── UndefinedMacroIdentifiers.expected │ │ ├── UndefinedMacroIdentifiers.ql │ │ └── test.cpp │ │ ├── unnecessaryexposedidentifierdeclarationshared │ │ ├── UnnecessaryExposedIdentifierDeclarationShared.expected │ │ ├── UnnecessaryExposedIdentifierDeclarationShared.ql │ │ └── test.cpp │ │ ├── unreachablecode │ │ ├── UnreachableCode.expected │ │ ├── UnreachableCode.ql │ │ └── test.cpp │ │ ├── unsignedintegerliteralsnotappropriatelysuffixed │ │ ├── UnsignedIntegerLiteralsNotAppropriatelySuffixed.expected │ │ ├── UnsignedIntegerLiteralsNotAppropriatelySuffixed.ql │ │ └── test.cpp │ │ ├── unsignedoperationwithconstantoperandswraps │ │ ├── UnsignedOperationWithConstantOperandsWraps.expected │ │ ├── UnsignedOperationWithConstantOperandsWraps.ql │ │ └── test.cpp │ │ ├── unusedparameter │ │ ├── UnusedParameter.expected │ │ ├── UnusedParameter.ql │ │ └── test.cpp │ │ ├── unusedtypedeclarations │ │ ├── UnusedTypeDeclarations.expected │ │ ├── UnusedTypeDeclarations.ql │ │ └── test.cpp │ │ ├── usageofassemblernotdocumented │ │ ├── UsageOfAssemblerNotDocumented.expected │ │ ├── UsageOfAssemblerNotDocumented.ql │ │ └── test.cpp │ │ ├── usecanonicalorderformemberinit │ │ ├── UseCanonicalOrderForMemberInit.expected │ │ ├── UseCanonicalOrderForMemberInit.ql │ │ └── test.cpp │ │ ├── useinitializerbracestomatchaggregatetypestructure │ │ ├── UseInitializerBracesToMatchAggregateTypeStructure.expected │ │ ├── UseInitializerBracesToMatchAggregateTypeStructure.ql │ │ └── test.cpp │ │ ├── useofnonzerooctalliteral │ │ ├── UseOfNonZeroOctalLiteral.expected │ │ ├── UseOfNonZeroOctalLiteral.ql │ │ └── test.cpp │ │ ├── useonlyarrayindexingforpointerarithmetic │ │ ├── UseOnlyArrayIndexingForPointerArithmetic.expected │ │ ├── UseOnlyArrayIndexingForPointerArithmetic.ql │ │ └── test.cpp │ │ ├── validcontainerelementaccess │ │ ├── ValidContainerElementAccess.expected │ │ ├── ValidContainerElementAccess.ql │ │ └── test.cpp │ │ ├── vectorshouldnotbespecializedwithbool │ │ ├── VectorShouldNotBeSpecializedWithBool.expected │ │ ├── VectorShouldNotBeSpecializedWithBool.expected.qcc │ │ ├── VectorShouldNotBeSpecializedWithBool.ql │ │ └── test.cpp │ │ ├── virtualandnonvirtualclassinthehierarchy │ │ ├── VirtualAndNonVirtualClassInTheHierarchy.expected │ │ ├── VirtualAndNonVirtualClassInTheHierarchy.ql │ │ └── test.cpp │ │ └── wrapspuriousfunctioninloop │ │ ├── WrapSpuriousFunctionInLoop.expected │ │ ├── WrapSpuriousFunctionInLoop.ql │ │ └── test.cpp ├── misra │ ├── src │ │ ├── codeql-pack.lock.yml │ │ ├── codeql-suites │ │ │ ├── misra-cpp-advisory.qls │ │ │ ├── misra-cpp-default.qls │ │ │ ├── misra-cpp-mandatory.qls │ │ │ ├── misra-cpp-required.qls │ │ │ ├── misra-cpp-single-translation-unit.qls │ │ │ ├── misra-default.qls │ │ │ └── misra-single-translation-unit.qls │ │ ├── codingstandards │ │ │ └── cpp │ │ │ │ ├── misra.qll │ │ │ │ └── misra │ │ │ │ └── Customizations.qll │ │ ├── qlpack.yml │ │ └── rules │ │ │ ├── DIR-0-3-1 │ │ │ ├── PossibleMisuseOfInfiniteFloatingPointValue.ql │ │ │ └── PossibleMisuseOfNaNFloatingPointValue.ql │ │ │ ├── DIR-15-8-1 │ │ │ └── CopyAndMoveAssignmentsShallHandleSelfAssignment.ql │ │ │ ├── DIR-5-7-2 │ │ │ └── SectionsOfCodeShouldNotBeCommentedOut.ql │ │ │ ├── RULE-10-0-1 │ │ │ ├── UseSingleGlobalOrMemberDeclarators.ql │ │ │ └── UseSingleLocalDeclarators.ql │ │ │ ├── RULE-10-2-1 │ │ │ └── EnumerationNotDefinedWithAnExplicitUnderlyingType.ql │ │ │ ├── RULE-10-4-1 │ │ │ └── AsmDeclarationShallNotBeUsed.ql │ │ │ ├── RULE-11-3-2 │ │ │ └── DeclarationOfAnObjectIndirectionsLevel.ql │ │ │ ├── RULE-11-6-3 │ │ │ └── NonUniqueEnumerationConstant.ql │ │ │ ├── RULE-12-2-2 │ │ │ └── BitFieldShallHaveAnAppropriateType.ql │ │ │ ├── RULE-12-2-3 │ │ │ └── SignedIntegerNamedBitFieldHaveALengthOfOneBit.ql │ │ │ ├── RULE-13-1-2 │ │ │ └── VirtualAndNonVirtualClassInTheHierarchy.ql │ │ │ ├── RULE-13-3-2 │ │ │ └── OverridingShallSpecifyDifferentDefaultArguments.ql │ │ │ ├── RULE-13-3-4 │ │ │ └── PotentiallyVirtualPointerOnlyComparesToNullptr.ql │ │ │ ├── RULE-15-1-1 │ │ │ └── ObjectsDynamicTypeUsedFromConstructorOrDestructor.ql │ │ │ ├── RULE-15-1-2 │ │ │ └── InitializeAllVirtualBaseClasses.ql │ │ │ ├── RULE-15-1-5 │ │ │ └── InitializerListConstructorIsTheOnlyConstructor.ql │ │ │ ├── RULE-16-5-2 │ │ │ └── AddressOfOperatorOverloaded.ql │ │ │ ├── RULE-17-8-1 │ │ │ └── FunctionTemplatesExplicitlySpecialized.ql │ │ │ ├── RULE-18-1-1 │ │ │ └── ExceptionObjectHavePointerType.ql │ │ │ ├── RULE-18-1-2 │ │ │ └── EmptyThrowOnlyWithinACatchHandler.ql │ │ │ ├── RULE-18-3-3 │ │ │ └── HandlersReferToNonStaticMembersFromTheirClass.ql │ │ │ ├── RULE-18-5-1 │ │ │ └── NoexceptFunctionShouldNotPropagateToTheCaller.ql │ │ │ ├── RULE-19-0-2 │ │ │ └── FunctionLikeMacrosDefined.ql │ │ │ ├── RULE-19-0-3 │ │ │ └── IncludeDirectivesPrecededByPreprocessorDirectives.ql │ │ │ ├── RULE-19-1-3 │ │ │ └── IdentifiersUsedInTheControllingExpressionOf.ql │ │ │ ├── RULE-19-2-3 │ │ │ └── CharsThatShouldNotOccurInHeaderFileName.ql │ │ │ ├── RULE-19-3-1 │ │ │ └── AndPreprocessorOperatorsShouldNotBeUsed.ql │ │ │ ├── RULE-19-3-2 │ │ │ └── MacroParameterFollowingHash.ql │ │ │ ├── RULE-19-3-3 │ │ │ └── AMixedUseMacroArgumentSubjectToExpansion.ql │ │ │ ├── RULE-19-3-5 │ │ │ └── TokensThatLookLikeDirectivesInAMacroArgument.ql │ │ │ ├── RULE-21-10-3 │ │ │ ├── CsignalFacilitiesUsed.ql │ │ │ └── CsignalTypesShallNotBeUsed.ql │ │ │ ├── RULE-21-2-1 │ │ │ └── AtofAtoiAtolAndAtollUsed.ql │ │ │ ├── RULE-21-2-4 │ │ │ └── MacroOffsetofShallNotBeUsed.ql │ │ │ ├── RULE-21-6-4 │ │ │ ├── GlobalSizedOperatorDeleteShallBeDefined.ql │ │ │ └── GlobalUnsizedOperatorDeleteShallBeDefined.ql │ │ │ ├── RULE-21-6-5 │ │ │ └── PointerToAnIncompleteClassTypeDeleted.ql │ │ │ ├── RULE-25-5-2 │ │ │ └── PointersReturnedByLocaleFunctionsMustBeUsedAsConst.ql │ │ │ ├── RULE-25-5-3 │ │ │ ├── CallToSetlocaleInvalidatesOldPointersMisra.ql │ │ │ └── CallToSetlocaleInvalidatesOldPointersWarnMisra.ql │ │ │ ├── RULE-26-3-1 │ │ │ └── VectorShouldNotBeSpecializedWithBool.ql │ │ │ ├── RULE-28-6-2 │ │ │ └── ForwardingReferencesAndForwardNotUsedTogether.ql │ │ │ ├── RULE-28-6-3 │ │ │ └── ObjectUsedWhileInPotentiallyMovedFromState.ql │ │ │ ├── RULE-30-0-1 │ │ │ ├── CstdioFunctionsShallNotBeUsed.ql │ │ │ ├── CstdioMacrosShallNotBeUsed.ql │ │ │ └── CstdioTypesShallNotBeUsed.ql │ │ │ ├── RULE-30-0-2 │ │ │ └── ReadsAndWritesOnStreamNotSeparatedByPositioning.ql │ │ │ ├── RULE-5-13-1 │ │ │ └── BackslashCharacterMisuse.ql │ │ │ ├── RULE-5-13-2 │ │ │ └── NonTerminatedEscapeSequences.ql │ │ │ ├── RULE-5-13-3 │ │ │ └── OctalConstantsUsed.ql │ │ │ ├── RULE-5-13-4 │ │ │ └── UnsignedIntegerLiteralsNotAppropriatelySuffixed.ql │ │ │ ├── RULE-5-13-5 │ │ │ └── LowercaseLStartsInLiteralSuffix.ql │ │ │ ├── RULE-5-7-1 │ │ │ └── CharacterSequenceUsedWithinACStyleComment.ql │ │ │ ├── RULE-5-7-3 │ │ │ └── LineSplicingUsedInComments.ql │ │ │ ├── RULE-6-0-3 │ │ │ └── GlobalNamespaceDeclarations.ql │ │ │ ├── RULE-6-0-4 │ │ │ └── NonGlobalFunctionMain.ql │ │ │ ├── RULE-6-2-1 │ │ │ └── OneDefinitionRuleViolated.ql │ │ │ ├── RULE-6-4-1 │ │ │ └── VariableDeclaredInInnerScopeHidesOuterScope.ql │ │ │ ├── RULE-6-4-2 │ │ │ ├── DefinitionShallBeConsideredForUnqualifiedLookup.ql │ │ │ ├── InheritedNonOverridableMemberFunction.ql │ │ │ └── InheritedOverridableMemberFunction.ql │ │ │ ├── RULE-6-4-3 │ │ │ ├── NameShallBeReferredUsingAQualifiedIdOrThis.ql │ │ │ └── NameShallBeReferredUsingAQualifiedIdOrThisAudit.ql │ │ │ ├── RULE-6-8-1 │ │ │ ├── ObjectAccessedAfterLifetimeMisra.ql │ │ │ └── ObjectAccessedBeforeLifetimeMisra.ql │ │ │ ├── RULE-6-8-2 │ │ │ └── ReturnReferenceOrPointerToAutomaticLocalVariable.ql │ │ │ ├── RULE-7-11-1 │ │ │ └── NullptrNotTheOnlyFormOfTheNullPointerConstant.ql │ │ │ ├── RULE-7-11-2 │ │ │ └── ArrayPassedAsFunctionArgumentDecayToAPointer.ql │ │ │ ├── RULE-8-18-2 │ │ │ └── ResultOfAnAssignmentOperatorShouldNotBeUsed.ql │ │ │ ├── RULE-8-19-1 │ │ │ └── CommaOperatorShouldNotBeUsed.ql │ │ │ ├── RULE-8-2-10 │ │ │ └── FunctionsCallThemselvesEitherDirectlyOrIndirectly.ql │ │ │ ├── RULE-8-2-3 │ │ │ └── CastRemovesConstOrVolatileFromPointerOrReference.ql │ │ │ ├── RULE-8-2-4 │ │ │ └── CastsBetweenAPointerToFunctionAndAnyOtherType.ql │ │ │ ├── RULE-8-2-5 │ │ │ └── ReinterpretCastShallNotBeUsed.ql │ │ │ ├── RULE-8-20-1 │ │ │ └── UnsignedOperationWithConstantOperandsWraps.ql │ │ │ ├── RULE-8-3-1 │ │ │ └── BuiltInUnaryOperatorAppliedToUnsignedExpression.ql │ │ │ ├── RULE-9-3-1 │ │ │ ├── LoopBodyCompoundCondition.ql │ │ │ └── SwitchBodyCompoundCondition.ql │ │ │ ├── RULE-9-4-1 │ │ │ └── IfElseIfEndCondition.ql │ │ │ ├── RULE-9-6-1 │ │ │ └── GotoStatementShouldNotBeUsed.ql │ │ │ ├── RULE-9-6-2 │ │ │ └── GotoReferenceALabelInSurroundingBlock.ql │ │ │ ├── RULE-9-6-3 │ │ │ └── GotoShallJumpToLabelDeclaredLaterInTheFunction.ql │ │ │ ├── RULE-9-6-4 │ │ │ └── FunctionDeclaredWithTheNoreturnAttributeReturn.ql │ │ │ └── RULE-9-6-5 │ │ │ └── NonVoidFunctionShallReturnAValueOnAllPaths.ql │ └── test │ │ ├── codeql-pack.lock.yml │ │ ├── options │ │ ├── qlpack.yml │ │ └── rules │ │ ├── DIR-0-3-1 │ │ ├── PossibleMisuseOfInfiniteFloatingPointValue.testref │ │ └── PossibleMisuseOfNaNFloatingPointValue.testref │ │ ├── DIR-15-8-1 │ │ └── CopyAndMoveAssignmentsShallHandleSelfAssignment.testref │ │ ├── DIR-5-7-2 │ │ └── SectionsOfCodeShouldNotBeCommentedOut.testref │ │ ├── RULE-10-0-1 │ │ ├── UseSingleGlobalOrMemberDeclarators.testref │ │ └── UseSingleLocalDeclarators.testref │ │ ├── RULE-10-2-1 │ │ └── EnumerationNotDefinedWithAnExplicitUnderlyingType.testref │ │ ├── RULE-10-4-1 │ │ └── AsmDeclarationShallNotBeUsed.testref │ │ ├── RULE-11-3-2 │ │ └── DeclarationOfAnObjectIndirectionsLevel.testref │ │ ├── RULE-11-6-3 │ │ └── NonUniqueEnumerationConstant.testref │ │ ├── RULE-12-2-2 │ │ └── BitFieldShallHaveAnAppropriateType.testref │ │ ├── RULE-12-2-3 │ │ └── SignedIntegerNamedBitFieldHaveALengthOfOneBit.testref │ │ ├── RULE-13-1-2 │ │ └── VirtualAndNonVirtualClassInTheHierarchy.testref │ │ ├── RULE-13-3-2 │ │ └── OverridingShallSpecifyDifferentDefaultArguments.testref │ │ ├── RULE-13-3-4 │ │ └── PotentiallyVirtualPointerOnlyComparesToNullptr.testref │ │ ├── RULE-15-1-1 │ │ └── ObjectsDynamicTypeUsedFromConstructorOrDestructor.testref │ │ ├── RULE-15-1-2 │ │ └── InitializeAllVirtualBaseClasses.testref │ │ ├── RULE-15-1-5 │ │ └── InitializerListConstructorIsTheOnlyConstructor.testref │ │ ├── RULE-16-5-2 │ │ └── AddressOfOperatorOverloaded.testref │ │ ├── RULE-17-8-1 │ │ └── FunctionTemplatesExplicitlySpecialized.testref │ │ ├── RULE-18-1-1 │ │ └── ExceptionObjectHavePointerType.testref │ │ ├── RULE-18-1-2 │ │ └── EmptyThrowOnlyWithinACatchHandler.testref │ │ ├── RULE-18-3-3 │ │ └── HandlersReferToNonStaticMembersFromTheirClass.testref │ │ ├── RULE-18-5-1 │ │ └── NoexceptFunctionShouldNotPropagateToTheCaller.testref │ │ ├── RULE-19-0-2 │ │ └── FunctionLikeMacrosDefined.testref │ │ ├── RULE-19-0-3 │ │ └── IncludeDirectivesPrecededByPreprocessorDirectives.testref │ │ ├── RULE-19-1-3 │ │ └── IdentifiersUsedInTheControllingExpressionOf.testref │ │ ├── RULE-19-2-3 │ │ └── CharsThatShouldNotOccurInHeaderFileName.testref │ │ ├── RULE-19-3-1 │ │ └── AndPreprocessorOperatorsShouldNotBeUsed.testref │ │ ├── RULE-19-3-2 │ │ └── MacroParameterFollowingHash.testref │ │ ├── RULE-19-3-3 │ │ └── AMixedUseMacroArgumentSubjectToExpansion.testref │ │ ├── RULE-19-3-5 │ │ └── TokensThatLookLikeDirectivesInAMacroArgument.testref │ │ ├── RULE-21-10-3 │ │ ├── CsignalFacilitiesUsed.testref │ │ ├── CsignalTypesShallNotBeUsed.testref │ │ └── CsignalTypesUsed.testref │ │ ├── RULE-21-2-1 │ │ └── AtofAtoiAtolAndAtollUsed.testref │ │ ├── RULE-21-2-4 │ │ └── MacroOffsetofShallNotBeUsed.testref │ │ ├── RULE-21-6-4 │ │ ├── GlobalSizedOperatorDeleteShallBeDefined.testref │ │ └── GlobalUnsizedOperatorDeleteShallBeDefined.testref │ │ ├── RULE-21-6-5 │ │ └── PointerToAnIncompleteClassTypeDeleted.testref │ │ ├── RULE-25-5-2 │ │ └── PointersReturnedByLocaleFunctionsMustBeUsedAsConst.testref │ │ ├── RULE-25-5-3 │ │ ├── CallToSetlocaleInvalidatesOldPointersMisra.testref │ │ └── CallToSetlocaleInvalidatesOldPointersWarnMisra.testref │ │ ├── RULE-26-3-1 │ │ └── VectorShouldNotBeSpecializedWithBool.testref │ │ ├── RULE-28-6-2 │ │ └── ForwardingReferencesAndForwardNotUsedTogether.testref │ │ ├── RULE-28-6-3 │ │ └── ObjectUsedWhileInPotentiallyMovedFromState.testref │ │ ├── RULE-30-0-1 │ │ ├── CstdioFunctionsShallNotBeUsed.testref │ │ ├── CstdioMacrosShallNotBeUsed.testref │ │ └── CstdioTypesShallNotBeUsed.testref │ │ ├── RULE-30-0-2 │ │ └── ReadsAndWritesOnStreamNotSeparatedByPositioning.testref │ │ ├── RULE-5-13-1 │ │ └── BackslashCharacterMisuse.testref │ │ ├── RULE-5-13-2 │ │ └── NonTerminatedEscapeSequences.testref │ │ ├── RULE-5-13-3 │ │ └── OctalConstantsUsed.testref │ │ ├── RULE-5-13-4 │ │ └── UnsignedIntegerLiteralsNotAppropriatelySuffixed.testref │ │ ├── RULE-5-13-5 │ │ └── LowercaseLStartsInLiteralSuffix.testref │ │ ├── RULE-5-7-1 │ │ └── CharacterSequenceUsedWithinACStyleComment.testref │ │ ├── RULE-5-7-3 │ │ └── LineSplicingUsedInComments.testref │ │ ├── RULE-6-0-3 │ │ └── GlobalNamespaceDeclarations.testref │ │ ├── RULE-6-0-4 │ │ └── NonGlobalFunctionMain.testref │ │ ├── RULE-6-2-1 │ │ └── OneDefinitionRuleViolated.testref │ │ ├── RULE-6-4-1 │ │ └── VariableDeclaredInInnerScopeHidesOuterScope.testref │ │ ├── RULE-6-4-2 │ │ ├── DefinitionShallBeConsideredForUnqualifiedLookup.testref │ │ ├── InheritedNonOverridableMemberFunction.testref │ │ └── InheritedOverridableMemberFunction.testref │ │ ├── RULE-6-4-3 │ │ ├── NameShallBeReferredUsingAQualifiedIdOrThis.testref │ │ └── NameShallBeReferredUsingAQualifiedIdOrThisAudit.testref │ │ ├── RULE-6-8-1 │ │ ├── ObjectAccessedAfterLifetimeMisra.testref │ │ └── ObjectAccessedBeforeLifetimeMisra.testref │ │ ├── RULE-6-8-2 │ │ └── ReturnReferenceOrPointerToAutomaticLocalVariable.testref │ │ ├── RULE-7-11-1 │ │ └── NullptrNotTheOnlyFormOfTheNullPointerConstant.testref │ │ ├── RULE-7-11-2 │ │ └── ArrayPassedAsFunctionArgumentDecayToAPointer.testref │ │ ├── RULE-8-18-2 │ │ └── ResultOfAnAssignmentOperatorShouldNotBeUsed.testref │ │ ├── RULE-8-19-1 │ │ └── CommaOperatorShouldNotBeUsed.testref │ │ ├── RULE-8-2-10 │ │ └── FunctionsCallThemselvesEitherDirectlyOrIndirectly.testref │ │ ├── RULE-8-2-3 │ │ └── CastRemovesConstOrVolatileFromPointerOrReference.testref │ │ ├── RULE-8-2-4 │ │ └── CastsBetweenAPointerToFunctionAndAnyOtherType.testref │ │ ├── RULE-8-2-5 │ │ └── ReinterpretCastShallNotBeUsed.testref │ │ ├── RULE-8-20-1 │ │ └── UnsignedOperationWithConstantOperandsWraps.testref │ │ ├── RULE-8-3-1 │ │ └── BuiltInUnaryOperatorAppliedToUnsignedExpression.testref │ │ ├── RULE-9-3-1 │ │ ├── LoopBodyCompoundCondition.testref │ │ └── SwitchBodyCompoundCondition.testref │ │ ├── RULE-9-4-1 │ │ └── IfElseIfEndCondition.testref │ │ ├── RULE-9-6-1 │ │ └── GotoStatementShouldNotBeUsed.testref │ │ ├── RULE-9-6-2 │ │ └── GotoReferenceALabelInSurroundingBlock.testref │ │ ├── RULE-9-6-3 │ │ └── GotoShallJumpToLabelDeclaredLaterInTheFunction.testref │ │ ├── RULE-9-6-4 │ │ └── FunctionDeclaredWithTheNoreturnAttributeReturn.testref │ │ └── RULE-9-6-5 │ │ └── NonVoidFunctionShallReturnAValueOnAllPaths.testref ├── options └── report │ └── src │ ├── Diagnostics │ ├── ExtractionErrors.qhelp │ ├── ExtractionErrors.ql │ ├── ExtractionErrors.qll │ ├── FailedExtractorInvocations.qhelp │ ├── FailedExtractorInvocations.ql │ ├── SuccessfullyExtractedFiles.qhelp │ └── SuccessfullyExtractedFiles.ql │ ├── codeql-pack.lock.yml │ └── qlpack.yml ├── docs ├── design │ ├── detection_of_genenated_infinities_and_nans.md │ └── guideline_recategorization.md ├── development_handbook.md ├── iso_26262_tool_qualification.md └── user_manual.md ├── integration-tests └── deviations │ ├── build.sh │ ├── coding-standards.yaml │ ├── coding-standards.yml │ ├── main.cpp │ └── nested │ ├── coding-standards.yaml │ ├── coding-standards.yml │ ├── nested2 │ └── test2.h │ └── test.h ├── rule_packages ├── c │ ├── Alignment.json │ ├── Banned.json │ ├── Banned2.json │ ├── BitfieldTypes.json │ ├── BitfieldTypes2.json │ ├── Concurrency1.json │ ├── Concurrency2.json │ ├── Concurrency3.json │ ├── Concurrency4.json │ ├── Concurrency5.json │ ├── Concurrency6.json │ ├── Concurrency7.json │ ├── Concurrency8.json │ ├── Concurrency9.json │ ├── Contracts.json │ ├── Contracts1.json │ ├── Contracts2.json │ ├── Contracts3.json │ ├── Contracts4.json │ ├── Contracts5.json │ ├── Contracts6.json │ ├── Contracts7.json │ ├── DeadCode.json │ ├── DeadCode2.json │ ├── Declarations1.json │ ├── Declarations2.json │ ├── Declarations3.json │ ├── Declarations4.json │ ├── Declarations5.json │ ├── Declarations6.json │ ├── Declarations7.json │ ├── Declarations8.json │ ├── Declarations9.json │ ├── EssentialTypes.json │ ├── EssentialTypes2.json │ ├── Expressions.json │ ├── FloatingTypes.json │ ├── FloatingTypes2.json │ ├── FunctionTypes.json │ ├── Generics.json │ ├── IO1.json │ ├── IO2.json │ ├── IO3.json │ ├── IO4.json │ ├── IntegerOverflow.json │ ├── InvalidMemory1.json │ ├── InvalidMemory2.json │ ├── InvalidMemory3.json │ ├── Language1.json │ ├── Language2.json │ ├── Language3.json │ ├── Language4.json │ ├── Memory1.json │ ├── Memory2.json │ ├── Memory3.json │ ├── Misc.json │ ├── NoReturn.json │ ├── OutOfBounds.json │ ├── Pointers1.json │ ├── Pointers2.json │ ├── Pointers3.json │ ├── Preprocessor1.json │ ├── Preprocessor2.json │ ├── Preprocessor3.json │ ├── Preprocessor4.json │ ├── Preprocessor5.json │ ├── Preprocessor6.json │ ├── SideEffects1.json │ ├── SideEffects2.json │ ├── SideEffects3.json │ ├── SideEffects4.json │ ├── SignalHandlers.json │ ├── StandardLibraryFunctionTypes.json │ ├── Statements1.json │ ├── Statements2.json │ ├── Statements3.json │ ├── Statements4.json │ ├── Statements5.json │ ├── Statements6.json │ ├── Static.json │ ├── Strings1.json │ ├── Strings2.json │ ├── Strings3.json │ ├── Syntax.json │ ├── Types1.json │ └── Types2.json └── cpp │ ├── Allocations.json │ ├── BannedFunctions.json │ ├── BannedLibraries.json │ ├── BannedSyntax.json │ ├── BannedTypes.json │ ├── Classes.json │ ├── Comments.json │ ├── Concurrency.json │ ├── Conditionals.json │ ├── Const.json │ ├── DeadCode.json │ ├── Declarations.json │ ├── ExceptionSafety.json │ ├── Exceptions1.json │ ├── Exceptions2.json │ ├── Expressions.json │ ├── FloatingPoint.json │ ├── Freed.json │ ├── Functions.json │ ├── IO.json │ ├── ImportMisra23.json │ ├── Includes.json │ ├── Inheritance.json │ ├── Initialization.json │ ├── IntegerConversion.json │ ├── Invariants.json │ ├── Iterators.json │ ├── Lambdas.json │ ├── Literals.json │ ├── Loops.json │ ├── Macros.json │ ├── MoveForward.json │ ├── Naming.json │ ├── Null.json │ ├── OperatorInvariants.json │ ├── Operators.json │ ├── OrderOfEvaluation.json │ ├── OutOfBounds.json │ ├── Pointers.json │ ├── Representation.json │ ├── Scope.json │ ├── SideEffects1.json │ ├── SideEffects2.json │ ├── SmartPointers1.json │ ├── SmartPointers2.json │ ├── Strings.json │ ├── Templates.json │ ├── Toolchain.json │ ├── TrustBoundaries.json │ ├── TypeRanges.json │ ├── Uninitialized.json │ └── VirtualFunctions.json ├── rules.csv ├── schemas ├── coding-standards-schema-1.0.0.json ├── rule-package.schema.json └── sarif-schema-2.1.0.json ├── scripts ├── .gitignore ├── PSCodingStandards │ ├── CodingStandards.psd1 │ ├── CodingStandards.psm1 │ ├── Config.ps1 │ ├── Get-ATestDirectory.ps1 │ ├── Get-LanguageForPath.ps1 │ ├── Get-Packages.ps1 │ ├── Get-RepositoryRoot.ps1 │ ├── Get-RuleForPath.ps1 │ ├── Get-RulesFromCSV.ps1 │ ├── Get-RulesInPackageAndSuite.ps1 │ ├── Get-RulesInSuite.ps1 │ ├── Get-TestDirectory.ps1 │ ├── README.md │ ├── Test-GetRuleForPath.ps1 │ └── Test-ProgramInstalled.ps1 ├── add_risk_assessment_tags.py ├── build_test_database.py ├── configuration │ ├── process_coding_standards_config.py │ └── requirements.txt ├── create_language_matrix.py ├── documentation │ ├── generate_iso26262_docs.py │ └── templates │ │ └── rendered_markdown.html.template ├── generate_metadata │ ├── generate_metadata_for_language.py │ └── templates │ │ └── rulemetadata.qll.template ├── generate_modules │ ├── Makefile │ ├── generate_modules.py │ ├── queries │ │ ├── codeql-pack.lock.yml │ │ ├── cxx14-stdlib-functions.ql │ │ ├── cxx14-stdlib-macros.ql │ │ ├── cxx14-stdlib-objects.ql │ │ └── qlpack.yml │ ├── source │ │ ├── Makefile │ │ └── stdlibcxx14.cpp │ └── templates │ │ └── Naming.qll.template ├── generate_rules │ ├── coding_standards_utils.py │ ├── generate_package_description.py │ ├── generate_package_files.py │ └── templates │ │ ├── autosar-help.md.template │ │ ├── cert-c++-help.md.template │ │ ├── cert-c-help.md.template │ │ ├── exclusions.qll.template │ │ ├── misra-c-2012-help.md.template │ │ ├── query.metadata.template │ │ ├── query.ql.template │ │ ├── shared_library.ql.template │ │ ├── template-standard.qhelp │ │ └── template.qhelp ├── get_workspace_packs.py ├── guideline_recategorization │ ├── recategorize.py │ ├── recategorize_test.py │ ├── requirements.txt │ └── test-data │ │ ├── empty-coding-standards-config.yml │ │ ├── invalid-coding-standards-config.yml │ │ ├── invalid-json.json │ │ ├── invalid-sarif.json │ │ ├── invalid-yaml.yml │ │ ├── json-patch.expected │ │ ├── unsupported-coding-standards-schema-0.0.1.json │ │ ├── unsupported-sarif-schema-2.0.0.json │ │ ├── valid-coding-standards-config.yml │ │ ├── valid-sarif-recategorized.expected │ │ └── valid-sarif.json ├── help │ └── cert-help-extraction.py ├── install-packs.py ├── matrix_testing │ ├── CompileFixTool.ps1 │ ├── Config.ps1 │ ├── CreateMatrixTestReport.ps1 │ ├── CreateSummaryReport.ps1 │ ├── ExecuteQueryAndDecodeAsJson.ps1 │ ├── Get-CompilerArgs.ps1 │ ├── Get-CompilerExecutable.ps1 │ ├── Get-CompilerSpecificFiles.ps1 │ ├── GetNewDBName.ps1 │ ├── NewDatabaseForRule.ps1 │ ├── Pop-CompilerSpecificFiles.ps1 │ └── Push-CompilerSpecificFiles.ps1 ├── performance_testing │ ├── Config.ps1 │ ├── Convert-DurationStringToMs.ps1 │ ├── Get-DurationString.ps1 │ ├── Get-QueryString.ps1 │ ├── Get-TestTmpDirectory.ps1 │ ├── README.md │ ├── Test-ReleasePerformance.ps1 │ └── profile_predicates.py ├── release │ ├── bump-version.sh │ ├── create_supported_rules_list.py │ ├── generate_release_notes.py │ ├── is-hotfix-release.py │ ├── next-version.py │ ├── release-layout.yml │ ├── requirements.txt │ ├── test-data │ │ └── release-layout.yml │ ├── update-release-notes.py │ ├── update_release_assets.py │ ├── update_release_assets_test.py │ ├── utils.py │ ├── validate-version.py │ └── webhook-handler.js ├── reports │ ├── analysis_report.py │ ├── analysis_report_test.py │ ├── codeqlvalidation.py │ ├── deviations.py │ ├── diagnostics.py │ ├── error.py │ ├── guideline_recategorizations.py │ ├── requirements.txt │ ├── test-data │ │ ├── deviations │ │ │ ├── coding-standards.yml │ │ │ ├── deviations_report.md.expected │ │ │ ├── invalid │ │ │ │ └── coding-standards.yml │ │ │ ├── test.cpp │ │ │ └── valid │ │ │ │ └── coding-standards.yml │ │ └── guideline-recategorizations │ │ │ ├── coding-standards.yml │ │ │ ├── guideline_recategorizations_report.md.expected │ │ │ ├── invalid │ │ │ └── coding-standards.yml │ │ │ ├── test.cpp │ │ │ └── valid │ │ │ └── coding-standards.yml │ └── utils.py ├── requirements.txt ├── shared │ ├── codeql.py │ └── markdown_helpers.py ├── update_codeql_dependency.sh ├── upgrade-codeql-dependencies │ ├── requirements.txt │ └── upgrade-codeql-dependencies.py ├── util │ ├── Get-DuplicateRules.ps1 │ └── Test-SharedImplementationsHaveTestCases.ps1 ├── validate-amendments-csv.py ├── validate-rule-package.py ├── verify-standard-library-version.py ├── verify_rule_package_consistency.py └── vscode │ └── Get-TestOrQueryDirectoryForCurrentFile.ps1 ├── supported_codeql_configs.json └── thirdparty └── cert └── LICENSE /.editorconfig: -------------------------------------------------------------------------------- 1 | [*] 2 | end_of_line = lf 3 | -------------------------------------------------------------------------------- /c/cert/test/rules/ARR30-C/DoNotFormOutOfBoundsPointersOrArraySubscripts.qlref: -------------------------------------------------------------------------------- 1 | rules/ARR30-C/DoNotFormOutOfBoundsPointersOrArraySubscripts.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ARR32-C/VariableLengthArraySizeNotInValidRange.qlref: -------------------------------------------------------------------------------- 1 | rules/ARR32-C/VariableLengthArraySizeNotInValidRange.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ARR37-C/DoNotUsePointerArithmeticOnNonArrayObjectPointers.qlref: -------------------------------------------------------------------------------- 1 | rules/ARR37-C/DoNotUsePointerArithmeticOnNonArrayObjectPointers.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ARR38-C/LibraryFunctionArgumentOutOfBounds.qlref: -------------------------------------------------------------------------------- 1 | rules/ARR38-C/LibraryFunctionArgumentOutOfBounds.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ARR39-C/DoNotAddOrSubtractAScaledIntegerToAPointer.qlref: -------------------------------------------------------------------------------- 1 | rules/ARR39-C/DoNotAddOrSubtractAScaledIntegerToAPointer.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON30-C/CleanUpThreadSpecificStorage.qlref: -------------------------------------------------------------------------------- 1 | rules/CON30-C/CleanUpThreadSpecificStorage.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON32-C/PreventDataRacesWithMultipleThreads.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/guardaccesstobitfields/GuardAccessToBitFields.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON33-C/RaceConditionsWhenUsingLibraryFunctions.qlref: -------------------------------------------------------------------------------- 1 | rules/CON33-C/RaceConditionsWhenUsingLibraryFunctions.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON34-C/AppropriateThreadObjectStorageDurations.qlref: -------------------------------------------------------------------------------- 1 | rules/CON34-C/AppropriateThreadObjectStorageDurations.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON34-C/ThreadObjectStorageDurationsNotInitialized.qlref: -------------------------------------------------------------------------------- 1 | rules/CON34-C/ThreadObjectStorageDurationsNotInitialized.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON37-C/DoNotCallSignalInMultithreadedProgram.qlref: -------------------------------------------------------------------------------- 1 | rules/CON37-C/DoNotCallSignalInMultithreadedProgram.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON39-C/ThreadWasPreviouslyJoinedOrDetached.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/joinordetachthreadonlyonce/JoinOrDetachThreadOnlyOnce.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON40-C/AtomicVariableTwiceInExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/CON40-C/AtomicVariableTwiceInExpression.ql -------------------------------------------------------------------------------- /c/cert/test/rules/CON41-C/WrapFunctionsThatCanFailSpuriouslyInLoop.qlref: -------------------------------------------------------------------------------- 1 | rules/CON41-C/WrapFunctionsThatCanFailSpuriouslyInLoop.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL30-C/AppropriateStorageDurationsFunctionReturn.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL30-C/AppropriateStorageDurationsFunctionReturn.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL31-C/DeclareIdentifiersBeforeUsingThem.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/typeomitted/TypeOmitted.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL38-C/DeclaringAFlexibleArrayMember.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL38-C/DeclaringAFlexibleArrayMember.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL40-C/ExcessLengthNamesIdentifiersNotDistinct.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/notdistinctidentifier/NotDistinctIdentifier.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL40-C/IncompatibleFunctionDeclarations.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL40-C/IncompatibleFunctionDeclarations.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL40-C/IncompatibleObjectDeclarations.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL40-C/IncompatibleObjectDeclarations.ql -------------------------------------------------------------------------------- /c/cert/test/rules/DCL41-C/VariablesInsideSwitchStatement.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL41-C/VariablesInsideSwitchStatement.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ENV30-C/DoNotModifyTheReturnValueOfCertainFunctions.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/constlikereturnvalue/ConstLikeReturnValue.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ENV31-C/EnvPointerIsInvalidAfterCertainOperations.qlref: -------------------------------------------------------------------------------- 1 | rules/ENV31-C/EnvPointerIsInvalidAfterCertainOperations.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ENV32-C/ExitHandlersMustReturnNormally.qlref: -------------------------------------------------------------------------------- 1 | rules/ENV32-C/ExitHandlersMustReturnNormally.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ENV33-C/DoNotCallSystem.qlref: -------------------------------------------------------------------------------- 1 | rules/ENV33-C/DoNotCallSystem.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ENV33-C/DoNotCallSystem.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/systemused/SystemUsed.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ERR30-C/ErrnoNotSetToZero.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR30-C/ErrnoNotSetToZero.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ERR30-C/ErrnoReadBeforeReturn.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR30-C/ErrnoReadBeforeReturn.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ERR30-C/FunctionCallBeforeErrnoCheck.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR30-C/FunctionCallBeforeErrnoCheck.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ERR30-C/SetlocaleMightSetErrno.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR30-C/SetlocaleMightSetErrno.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ERR32-C/DoNotRelyOnIndeterminateValuesOfErrno.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR32-C/DoNotRelyOnIndeterminateValuesOfErrno.ql -------------------------------------------------------------------------------- /c/cert/test/rules/ERR33-C/DetectAndHandleStandardLibraryErrors.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR33-C/DetectAndHandleStandardLibraryErrors.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP30-C/DependenceOnOrderOfScalarEvaluationForSideEffects.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP30-C/DependenceOnOrderOfScalarEvaluationForSideEffects.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP32-C/DoNotAccessVolatileObjectWithNonVolatileReference.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP32-C/DoNotAccessVolatileObjectWithNonVolatileReference.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP33-C/DoNotReadUninitializedMemory.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/readofuninitializedmemory/ReadOfUninitializedMemory.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP34-C/DoNotDereferenceNullPointers.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/dereferenceofnullpointer/DereferenceOfNullPointer.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP35-C/DoNotModifyObjectsWithTemporaryLifetime.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP35-C/DoNotModifyObjectsWithTemporaryLifetime.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP36-C/DoNotCastPointerToMoreStrictlyAlignedPointerType.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP36-C/DoNotCastPointerToMoreStrictlyAlignedPointerType.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP37-C/CallPOSIXOpenWithCorrectArgumentCount.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP37-C/CallPOSIXOpenWithCorrectArgumentCount.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP37-C/DoNotCallFunctionPointerWithIncompatibleType.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP37-C/DoNotCallFunctionPointerWithIncompatibleType.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP37-C/DoNotCallFunctionsWithIncompatibleArguments.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP37-C/DoNotCallFunctionsWithIncompatibleArguments.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP37-C/test2.c: -------------------------------------------------------------------------------- 1 | void test_func1(short p1) {} 2 | 3 | void test_func2(int p1) {} 4 | 5 | void test_func3(int p1) {} -------------------------------------------------------------------------------- /c/cert/test/rules/EXP39-C/DoNotAccessVariableViaPointerOfIncompatibleType.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP39-C/DoNotAccessVariableViaPointerOfIncompatibleType.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP40-C/DoNotModifyConstantObjects.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP40-C/DoNotModifyConstantObjects.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP42-C/DoNotComparePaddingData.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/memcmpusedtocomparepaddingdata/MemcmpUsedToComparePaddingData.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP43-C/RestrictPointerReferencesOverlappingObject.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP43-C/RestrictPointerReferencesOverlappingObject.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP44-C/UnevaluatedOperandWithSideEffect.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP44-C/UnevaluatedOperandWithSideEffect.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP45-C/AssignmentsInSelectionStatements.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP45-C/AssignmentsInSelectionStatements.ql -------------------------------------------------------------------------------- /c/cert/test/rules/EXP46-C/DoNotUseABitwiseOperatorWithABooleanLikeOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP46-C/DoNotUseABitwiseOperatorWithABooleanLikeOperand.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO30-C/ExcludeUserInputFromFormatStrings.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/nonconstantformat/NonConstantFormat.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO32-C/DoNotPerformFileOperationsOnDevices.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO32-C/DoNotPerformFileOperationsOnDevices.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO34-C/DistinguishBetweenCharReadFromAFileAndEofOrWeof.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO34-C/DistinguishBetweenCharReadFromAFileAndEofOrWeof.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO34-C/EndOfFileCheckPortability.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO34-C/EndOfFileCheckPortability.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO37-C/SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO37-C/SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO38-C/DoNotCopyAFileObject.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO38-C/DoNotCopyAFileObject.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO40-C/ResetStringsOnFgetsOrFgetwsFailure.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO40-C/ResetStringsOnFgetsOrFgetwsFailure.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO41-C/DoNotCallGetcAndPutcWithSideEffects.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO41-C/DoNotCallGetcAndPutcWithSideEffects.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO44-C/OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO44-C/OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO45-C/ToctouRaceConditionsWhileAccessingFiles.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO45-C/ToctouRaceConditionsWhileAccessingFiles.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO46-C/UndefinedBehaviorAccessingAClosedFile.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/donotaccessaclosedfile/DoNotAccessAClosedFile.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO47-C/UseValidSpecifiers.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO47-C/UseValidSpecifiers.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO47-C/WrongNumberOfFormatArguments.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO47-C/WrongNumberOfFormatArguments.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FIO47-C/WrongTypeFormatArguments.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO47-C/WrongTypeFormatArguments.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FLP30-C/FloatingPointLoopCounters.qlref: -------------------------------------------------------------------------------- 1 | rules/FLP30-C/FloatingPointLoopCounters.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FLP32-C/UncheckedRangeDomainPoleErrors.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/uncheckedrangedomainpoleerrors/UncheckedRangeDomainPoleErrors.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FLP34-C/UncheckedFloatingPointConversion.qlref: -------------------------------------------------------------------------------- 1 | rules/FLP34-C/UncheckedFloatingPointConversion.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FLP36-C/IntToFloatPreservePrecision.qlref: -------------------------------------------------------------------------------- 1 | rules/FLP36-C/IntToFloatPreservePrecision.ql -------------------------------------------------------------------------------- /c/cert/test/rules/FLP37-C/MemcmpUsedToCompareFloats.qlref: -------------------------------------------------------------------------------- 1 | rules/FLP37-C/MemcmpUsedToCompareFloats.ql -------------------------------------------------------------------------------- /c/cert/test/rules/INT31-C/IntegerConversionCausesDataLoss.qlref: -------------------------------------------------------------------------------- 1 | rules/INT31-C/IntegerConversionCausesDataLoss.ql -------------------------------------------------------------------------------- /c/cert/test/rules/INT32-C/SignedIntegerOverflow.qlref: -------------------------------------------------------------------------------- 1 | rules/INT32-C/SignedIntegerOverflow.ql -------------------------------------------------------------------------------- /c/cert/test/rules/INT33-C/DivOrRemByZero.qlref: -------------------------------------------------------------------------------- 1 | rules/INT33-C/DivOrRemByZero.ql -------------------------------------------------------------------------------- /c/cert/test/rules/INT34-C/ExprShiftedbyNegativeOrGreaterPrecisionOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/INT34-C/ExprShiftedbyNegativeOrGreaterPrecisionOperand.ql -------------------------------------------------------------------------------- /c/cert/test/rules/INT35-C/UseCorrectIntegerPrecisions.qlref: -------------------------------------------------------------------------------- 1 | rules/INT35-C/UseCorrectIntegerPrecisions.ql -------------------------------------------------------------------------------- /c/cert/test/rules/INT36-C/ConvertingAPointerToIntegerOrIntegerToPointer.qlref: -------------------------------------------------------------------------------- 1 | rules/INT36-C/ConvertingAPointerToIntegerOrIntegerToPointer.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MEM30-C/DoNotAccessFreedMemory.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM30-C/DoNotAccessFreedMemory.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MEM33-C/AllocStructsWithAFlexibleArrayMemberDynamically.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM33-C/AllocStructsWithAFlexibleArrayMemberDynamically.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MEM33-C/CopyStructsWithAFlexibleArrayMemberDynamically.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM33-C/CopyStructsWithAFlexibleArrayMemberDynamically.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MEM35-C/InsufficientMemoryAllocatedForObject.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM35-C/InsufficientMemoryAllocatedForObject.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MEM36-C/DoNotModifyAlignmentOfMemoryWithRealloc.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM36-C/DoNotModifyAlignmentOfMemoryWithRealloc.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MSC32-C/ProperlySeedPseudorandomNumberGenerators.qlref: -------------------------------------------------------------------------------- 1 | rules/MSC32-C/ProperlySeedPseudorandomNumberGenerators.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MSC33-C/DoNotPassInvalidDataToTheAsctimeFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/MSC33-C/DoNotPassInvalidDataToTheAsctimeFunction.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MSC38-C/DoNotTreatAPredefinedIdentifierAsObject.qlref: -------------------------------------------------------------------------------- 1 | rules/MSC38-C/DoNotTreatAPredefinedIdentifierAsObject.ql -------------------------------------------------------------------------------- /c/cert/test/rules/MSC38-C/assert.h: -------------------------------------------------------------------------------- 1 | #undef assert 2 | void assert(int i); // NON_COMPLIANT 3 | 4 | #define assert(x) (void)0 -------------------------------------------------------------------------------- /c/cert/test/rules/MSC40-C/DoNotViolateInLineLinkageConstraints.qlref: -------------------------------------------------------------------------------- 1 | rules/MSC40-C/DoNotViolateInLineLinkageConstraints.ql -------------------------------------------------------------------------------- /c/cert/test/rules/PRE31-C/SideEffectsInArgumentsToUnsafeMacros.qlref: -------------------------------------------------------------------------------- 1 | rules/PRE31-C/SideEffectsInArgumentsToUnsafeMacros.ql -------------------------------------------------------------------------------- /c/cert/test/rules/PRE32-C/MacroOrFunctionArgsContainHashToken.qlref: -------------------------------------------------------------------------------- 1 | rules/PRE32-C/MacroOrFunctionArgsContainHashToken.ql -------------------------------------------------------------------------------- /c/cert/test/rules/SIG30-C/CallOnlyAsyncSafeFunctionsWithinSignalHandlers.qlref: -------------------------------------------------------------------------------- 1 | rules/SIG30-C/CallOnlyAsyncSafeFunctionsWithinSignalHandlers.ql -------------------------------------------------------------------------------- /c/cert/test/rules/SIG31-C/DoNotAccessSharedObjectsInSignalHandlers.qlref: -------------------------------------------------------------------------------- 1 | rules/SIG31-C/DoNotAccessSharedObjectsInSignalHandlers.ql -------------------------------------------------------------------------------- /c/cert/test/rules/SIG34-C/DoNotCallSignalFromInterruptibleSignalHandlers.qlref: -------------------------------------------------------------------------------- 1 | rules/SIG34-C/DoNotCallSignalFromInterruptibleSignalHandlers.ql -------------------------------------------------------------------------------- /c/cert/test/rules/SIG35-C/DoNotReturnFromAComputationalExceptionHandler.qlref: -------------------------------------------------------------------------------- 1 | rules/SIG35-C/DoNotReturnFromAComputationalExceptionHandler.ql -------------------------------------------------------------------------------- /c/cert/test/rules/STR30-C/DoNotAttemptToModifyStringLiterals.qlref: -------------------------------------------------------------------------------- 1 | rules/STR30-C/DoNotAttemptToModifyStringLiterals.ql -------------------------------------------------------------------------------- /c/cert/test/rules/STR31-C/StringsHasSufficientSpaceForTheNullTerminator.qlref: -------------------------------------------------------------------------------- 1 | rules/STR31-C/StringsHasSufficientSpaceForTheNullTerminator.ql -------------------------------------------------------------------------------- /c/cert/test/rules/STR32-C/NonNullTerminatedToFunctionThatExpectsAString.qlref: -------------------------------------------------------------------------------- 1 | rules/STR32-C/NonNullTerminatedToFunctionThatExpectsAString.ql -------------------------------------------------------------------------------- /c/cert/test/rules/STR37-C/ToCharacterHandlingFunctionsRepresentableAsUChar.qlref: -------------------------------------------------------------------------------- 1 | rules/STR37-C/ToCharacterHandlingFunctionsRepresentableAsUChar.ql -------------------------------------------------------------------------------- /c/cert/test/rules/STR38-C/DoNotConfuseNarrowAndWideFunctions.qlref: -------------------------------------------------------------------------------- 1 | rules/STR38-C/DoNotConfuseNarrowAndWideFunctions.ql -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/arpa/nameser_compat.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/ipcstat.h: -------------------------------------------------------------------------------- 1 | #define IPC_STAT 2 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/kd.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/limits.h: -------------------------------------------------------------------------------- 1 | #define PAGESIZE 4096 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/link.h: -------------------------------------------------------------------------------- 1 | typedef uint32_t Elf_Symndx; 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/mman.h: -------------------------------------------------------------------------------- 1 | #define MAP_32BIT 0x40 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/posix.h: -------------------------------------------------------------------------------- 1 | #define _POSIX_V6_LP64_OFF64 1 2 | #define _POSIX_V7_LP64_OFF64 1 3 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/setjmp.h: -------------------------------------------------------------------------------- 1 | typedef unsigned long __jmp_buf[8]; 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/soundcard.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/bits/vt.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/lastlog.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/dir.h: -------------------------------------------------------------------------------- 1 | #include 2 | #define direct dirent 3 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/errno.h: -------------------------------------------------------------------------------- 1 | #warning redirecting incorrect #include to 2 | #include 3 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/fcntl.h: -------------------------------------------------------------------------------- 1 | #warning redirecting incorrect #include to 2 | #include 3 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/kd.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/poll.h: -------------------------------------------------------------------------------- 1 | #warning redirecting incorrect #include to 2 | #include 3 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/soundcard.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/stropts.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/syslog.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/ucontext.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/vfs.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/sys/vt.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/syscall.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /c/common/test/includes/standard-library/wait.h: -------------------------------------------------------------------------------- 1 | #warning redirecting incorrect #include to 2 | #include 3 | -------------------------------------------------------------------------------- /c/common/test/library/expr/FullExpr.ql: -------------------------------------------------------------------------------- 1 | import cpp 2 | import codingstandards.c.Expr 3 | 4 | from FullExpr e 5 | select e 6 | -------------------------------------------------------------------------------- /c/common/test/rules/commaoperatorused/CommaOperatorUsed.expected: -------------------------------------------------------------------------------- 1 | | test.c:6:13:6:22 | ... , ... | Use of banned ',' expression. | 2 | -------------------------------------------------------------------------------- /c/common/test/rules/gotostatementshouldnotbeused/GotoStatementShouldNotBeUsed.expected: -------------------------------------------------------------------------------- 1 | | test.c:6:3:6:14 | goto ... | Use of goto. | 2 | -------------------------------------------------------------------------------- /c/common/test/rules/includeguardsnotused/headers/test1.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_ONE 2 | #define HEADER_ONE // COMPLIANT 3 | int g; 4 | #endif -------------------------------------------------------------------------------- /c/common/test/rules/includeguardsnotused/headers/test2.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_TWO 2 | #define HEADER_TWO // COMPLIANT 3 | int g1; 4 | #endif -------------------------------------------------------------------------------- /c/common/test/rules/includeguardsnotused/headers/test3.h: -------------------------------------------------------------------------------- 1 | // NON_COMPLIANT 2 | int g2; -------------------------------------------------------------------------------- /c/common/test/rules/includeguardsnotused/headers/test4.h: -------------------------------------------------------------------------------- 1 | // NON_COMPLIANT 2 | #ifndef HEADER_FOUR 3 | int g3; 4 | #endif -------------------------------------------------------------------------------- /c/common/test/rules/includeguardsnotused/headers/test6.h: -------------------------------------------------------------------------------- 1 | // NON_COMPLIANT 2 | #ifndef HEADER_SIX 3 | #define HEADER_SIX 4 | int g5; 5 | #endif -------------------------------------------------------------------------------- /c/common/test/rules/includeguardsnotused/headers/test7.h: -------------------------------------------------------------------------------- 1 | // NON_COMPLIANT 2 | #ifndef HEADER_SIX 3 | #define HEADER_SIX 4 | int g5; 5 | #endif -------------------------------------------------------------------------------- /c/common/test/rules/preprocessorincludesforbiddenheadernames/'badheader.h: -------------------------------------------------------------------------------- 1 | int j = 0; -------------------------------------------------------------------------------- /c/common/test/rules/preprocessorincludesforbiddenheadernames/badheade'r.h: -------------------------------------------------------------------------------- 1 | int i = 0; -------------------------------------------------------------------------------- /c/common/test/rules/preprocessorincludespreceded/test.c: -------------------------------------------------------------------------------- 1 | #include "test.h" //COMPLIANT 2 | 3 | int x = 0; 4 | #include "test1.h" //NON_COMPLIANT -------------------------------------------------------------------------------- /c/common/test/rules/preprocessorincludespreceded/test.h: -------------------------------------------------------------------------------- 1 | int i = 0; 2 | -------------------------------------------------------------------------------- /c/common/test/rules/preprocessorincludespreceded/test1.h: -------------------------------------------------------------------------------- 1 | int j = 0; 2 | -------------------------------------------------------------------------------- /c/misra/src/codingstandards/c/misra/Customizations.qll: -------------------------------------------------------------------------------- 1 | import cpp 2 | -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-10/PrecautionIncludeGuardsNotProvided.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/includeguardsnotused/IncludeGuardsNotUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-11/LowPrecisionPeriodicTrigonometricFunctionCall.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-4-11/LowPrecisionPeriodicTrigonometricFunctionCall.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-12/StdLibDynamicMemoryAllocationUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-4-12/StdLibDynamicMemoryAllocationUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-15/PossibleMisuseOfUndetectedNaN.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/misuseofnanfloatingpointvalue/MisuseOfNaNFloatingPointValue.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-3/LanguageNotEncapsulatedAndIsolated.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-4-3/LanguageNotEncapsulatedAndIsolated.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-6/PlainNumericalTypeUsedOverExplicitTypedef.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-4-6/PlainNumericalTypeUsedOverExplicitTypedef.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-8/ObjectWithNoPointerDereferenceShouldBeOpaque.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-4-8/ObjectWithNoPointerDereferenceShouldBeOpaque.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-9/FunctionOverFunctionLikeMacro.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-4-9/FunctionOverFunctionLikeMacro.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-4-9/FunctionOverFunctionLikeMacro.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/functionlikemacrosdefined/FunctionLikeMacrosDefined.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-5-1/PossibleDataRaceBetweenThreads.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-5-1/PossibleDataRaceBetweenThreads.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-5-3/BannedDynamicThreadCreation.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-5-3/BannedDynamicThreadCreation.ql -------------------------------------------------------------------------------- /c/misra/test/rules/DIR-5-3/ThreadCreatedByThread.qlref: -------------------------------------------------------------------------------- 1 | rules/DIR-5-3/ThreadCreatedByThread.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-2/LanguageExtensionsShouldNotBeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-2/LanguageExtensionsShouldNotBeUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-3/OccurrenceOfUndefinedBehavior.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-3/OccurrenceOfUndefinedBehavior.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-4/EmergentLanguageFeaturesUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-4/EmergentLanguageFeaturesUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/CallToObsolescentFunctionGets.expected: -------------------------------------------------------------------------------- 1 | | test.c:37:3:37:6 | call to gets | Call to obsolescent function 'gets'. | 2 | -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/CallToObsolescentFunctionGets.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-5/CallToObsolescentFunctionGets.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/InvalidDefineOrUndefOfStdBoolMacro.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-5/InvalidDefineOrUndefOfStdBoolMacro.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/SizeInReallocCallIsZero.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-5/SizeInReallocCallIsZero.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/SizeInReallocCallMayBeZero.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-5/SizeInReallocCallMayBeZero.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/UngetcCallOnStreamPositionZero.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-5/UngetcCallOnStreamPositionZero.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-1-5/UseOfObsoleteMacroAtomicVarInit.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-1-5/UseOfObsoleteMacroAtomicVarInit.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-1/OperandsOfAnInappropriateEssentialType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-1/OperandsOfAnInappropriateEssentialType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-1/PointerTypeOnLogicalOperator.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-1/PointerTypeOnLogicalOperator.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-2/AdditionSubtractionOnEssentiallyCharType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-2/AdditionSubtractionOnEssentiallyCharType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-3/AssignmentOfIncompatibleEssentialType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-3/AssignmentOfIncompatibleEssentialType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-4/OperandsWithMismatchedEssentialTypeCategory.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-4/OperandsWithMismatchedEssentialTypeCategory.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-5/InappropriateEssentialTypeCast.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-5/InappropriateEssentialTypeCast.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-6/AssignmentToWiderEssentialType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-6/AssignmentToWiderEssentialType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-7/ImplicitConversionOfCompositeExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-7/ImplicitConversionOfCompositeExpression.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-10-8/InappropriateCastOfCompositeExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-10-8/InappropriateCastOfCompositeExpression.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-1/ConversionBetweenFunctionPointerAndOtherType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-1/ConversionBetweenFunctionPointerAndOtherType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-10/AtomicQualifierAppliedToVoid.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-10/AtomicQualifierAppliedToVoid.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-3/CastBetweenObjectPointerAndDifferentObjectType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-3/CastBetweenObjectPointerAndDifferentObjectType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-4/ConversionBetweenPointerToObjectAndIntegerType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-4/ConversionBetweenPointerToObjectAndIntegerType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-5/ConversionFromPointerToVoidIntoPointerToObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-5/ConversionFromPointerToVoidIntoPointerToObject.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-6/CastBetweenPointerToVoidAndArithmeticType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-6/CastBetweenPointerToVoidAndArithmeticType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-8/CastRemovesConstOrVolatileQualification.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-8/CastRemovesConstOrVolatileQualification.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-11-9/MacroNullNotUsedAsIntegerNullPointerConstant.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-11-9/MacroNullNotUsedAsIntegerNullPointerConstant.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-12-1/ImplicitPrecedenceOfOperatorsInExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-12-1/ImplicitPrecedenceOfOperatorsInExpression.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-12-1/UnenclosedSizeofOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-12-1/UnenclosedSizeofOperand.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-12-2/RightHandOperandOfAShiftRange.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-12-2/RightHandOperandOfAShiftRange.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-12-3/CommaOperatorShouldNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/commaoperatorused/CommaOperatorUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-12-5/SizeofOperatorUsedOnArrayTypeParam.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-12-5/SizeofOperatorUsedOnArrayTypeParam.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-12-6/AtomicAggregateObjectDirectlyAccessed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-12-6/AtomicAggregateObjectDirectlyAccessed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-13-1/InitializerListsContainPersistentSideEffects.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-13-1/InitializerListsContainPersistentSideEffects.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-13-2/UnsequencedAtomicReads.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-13-2/UnsequencedAtomicReads.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-13-2/UnsequencedSideEffects.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-13-2/UnsequencedSideEffects.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-13-3/SideEffectAndCrementInFullExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-13-3/SideEffectAndCrementInFullExpression.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-13-6/SizeofOperandWithSideEffect.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-13-6/SizeofOperandWithSideEffect.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-14-1/LoopOverEssentiallyFloatType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-14-1/LoopOverEssentiallyFloatType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-14-2/ForLoopNotWellFormed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-14-2/ForLoopNotWellFormed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-14-3/ControllingExprInvariant.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-14-3/ControllingExprInvariant.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-14-4/NonBooleanIfCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-14-4/NonBooleanIfCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-14-4/NonBooleanIterationCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-14-4/NonBooleanIterationCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-1/GotoStatementUsed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/gotostatementshouldnotbeused/GotoStatementShouldNotBeUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-2/GotoLabelLocationCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-15-2/GotoLabelLocationCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-2/GotoLabelLocationCondition.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/gotostatementcondition/GotoStatementCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-4/LoopIterationCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-15-4/LoopIterationCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-5/FunctionReturnCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-15-5/FunctionReturnCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-6/LoopCompoundCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-15-6/LoopCompoundCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-6/SelectionCompoundCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-15-6/SelectionCompoundCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-6/SwitchCompoundCondition.expected: -------------------------------------------------------------------------------- 1 | | test.c:75:3:79:5 | switch (...) ... | Switch body not enclosed within braces. | 2 | -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-6/SwitchCompoundCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-15-6/SwitchCompoundCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-15-7/IfElseEndCondition.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/ifelseterminationconstruct/IfElseTerminationConstruct.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-1/SwitchCaseStartCondition.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/switchcasepositioncondition/SwitchCasePositionCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-1/SwitchStmtNotWellFormed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/switchnotwellformed/SwitchNotWellFormed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-2/NestSwitchLabelInSwitchStatement.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/nestedlabelinswitch/NestedLabelInSwitch.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-3/BreakShallTerminateSwitchClause.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-16-3/BreakShallTerminateSwitchClause.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-4/EverySwitchShallHaveDefaultLabel.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-16-4/EverySwitchShallHaveDefaultLabel.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-5/DefaultNotFirstOrLastOfSwitch.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-16-5/DefaultNotFirstOrLastOfSwitch.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-6/SwitchClauseNumberCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-16-6/SwitchClauseNumberCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-16-7/SwitchExpressionBoolCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-16-7/SwitchExpressionBoolCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-1/FeaturesOfStdarghUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-1/FeaturesOfStdarghUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-10/NonVoidReturnTypeOfNoreturnFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-10/NonVoidReturnTypeOfNoreturnFunction.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-11/FunctionWithNoReturningBranchShouldBeNoreturn.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-11/FunctionWithNoReturningBranchShouldBeNoreturn.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-12/FunctionAddressesShouldAddressOperator.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-12/FunctionAddressesShouldAddressOperator.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-2/RecursiveFunctionCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-2/RecursiveFunctionCondition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-3/FunctionDeclaredImplicitly.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-3/FunctionDeclaredImplicitly.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-4/NonVoidFunctionReturnCondition.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/nonvoidfunctiondoesnotreturn/NonVoidFunctionDoesNotReturn.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-5/ArrayFunctionArgumentNumberOfElements.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-5/ArrayFunctionArgumentNumberOfElements.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-6/UseOfArrayStatic.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-6/UseOfArrayStatic.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-7/ValueReturnedByAFunctionNotUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-7/ValueReturnedByAFunctionNotUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-17-8/ModificationOfFunctionParameter.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-17-8/ModificationOfFunctionParameter.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-18-10/PointersToVariablyModifiedArrayTypesUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-18-10/PointersToVariablyModifiedArrayTypesUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-18-6/ThreadLocalObjectAddressCopiedToGlobalObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-18-6/ThreadLocalObjectAddressCopiedToGlobalObject.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-18-7/FlexibleArrayMembersDeclared.expected: -------------------------------------------------------------------------------- 1 | | test.c:8:7:8:7 | b | Flexible array member declared. | 2 | -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-18-7/FlexibleArrayMembersDeclared.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-18-7/FlexibleArrayMembersDeclared.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-18-8/VariableLengthArrayTypesUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-18-8/VariableLengthArrayTypesUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-18-9/ArrayToPointerConversionOfTemporaryObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-18-9/ArrayToPointerConversionOfTemporaryObject.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-19-1/ObjectAssignedToAnOverlappingObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-19-1/ObjectAssignedToAnOverlappingObject.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-19-1/ObjectCopiedToAnOverlappingObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-19-1/ObjectCopiedToAnOverlappingObject.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-19-2/UnionKeywordShouldNotBeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-19-2/UnionKeywordShouldNotBeUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-1/UnreachableCode.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/unreachablecode/UnreachableCode.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-2/DeadCode.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-2-2/DeadCode.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-3/UnusedTypeDeclarations.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/unusedtypedeclarations/UnusedTypeDeclarations.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-4/UnusedTagDeclaration.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-2-4/UnusedTagDeclaration.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-5/UnusedMacroDeclaration.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-2-5/UnusedMacroDeclaration.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-6/UnusedLabelDeclaration.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-2-6/UnusedLabelDeclaration.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-7/UnusedParameter.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/unusedparameter/UnusedParameter.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-8/UnusedObjectDefinition.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-2-8/UnusedObjectDefinition.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-2-8/UnusedObjectDefinitionStrict.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-2-8/UnusedObjectDefinitionStrict.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-20-10/PreprocessorHashOperatorsShouldNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/hashoperatorsused/HashOperatorsUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-20-4/MacroDefinedWithTheSameNameAsKeyword.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-20-4/MacroDefinedWithTheSameNameAsKeyword.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-20-5/UndefShouldNotBeUsed.expected: -------------------------------------------------------------------------------- 1 | | test.c:2:1:2:11 | #undef TEST | Use of undef found. | 2 | -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-20-5/UndefShouldNotBeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-20-5/UndefShouldNotBeUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-20-5/test.c: -------------------------------------------------------------------------------- 1 | #define TEST 1 // COMPLIANT 2 | #undef TEST // NON_COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-20-8/ControllingExpressionIfDirective.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-20-8/ControllingExpressionIfDirective.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-10/StandardLibraryTimeAndDateFunctionsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-10/StandardLibraryTimeAndDateFunctionsUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-11/StandardHeaderFileTgmathhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-11/StandardHeaderFileTgmathhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-12/ExceptionHandlingFeaturesOfFenvhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-12/ExceptionHandlingFeaturesOfFenvhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-13/CtypeFunctionArgNotUnsignedCharOrEof.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-13/CtypeFunctionArgNotUnsignedCharOrEof.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-14/MemcmpUsedToCompareNullTerminatedStrings.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-14/MemcmpUsedToCompareNullTerminatedStrings.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-16/MemcmpOnInappropriateEssentialTypeArgs.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-16/MemcmpOnInappropriateEssentialTypeArgs.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-17/StringFunctionPointerArgumentOutOfBounds.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-17/StringFunctionPointerArgumentOutOfBounds.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-18/StringLibrarySizeArgumentOutOfBounds.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-18/StringLibrarySizeArgumentOutOfBounds.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-19/ValuesReturnedByLocaleSettingUsedAsPtrToConst.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/constlikereturnvalue/ConstLikeReturnValue.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-2/DoNotDeclareAReservedIdentifier.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/declaredareservedidentifier/DeclaredAReservedIdentifier.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-21/SystemOfStdlibhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-21/SystemOfStdlibhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-22/TgMathArgumentWithInvalidEssentialType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-22/TgMathArgumentWithInvalidEssentialType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-23/TgMathArgumentsWithDifferingStandardType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-23/TgMathArgumentsWithDifferingStandardType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-24/CallToBannedRandomFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-24/CallToBannedRandomFunction.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-25/InvalidMemoryOrderArgument.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-25/InvalidMemoryOrderArgument.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-26/TimedlockOnInappropriateMutexType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-26/TimedlockOnInappropriateMutexType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-3/MemoryAllocDeallocFunctionsOfStdlibhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-3/MemoryAllocDeallocFunctionsOfStdlibhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-4/StandardHeaderFileUsedSetjmph.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-4/StandardHeaderFileUsedSetjmph.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-5/StandardHeaderFileUsedSignalh.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-5/StandardHeaderFileUsedSignalh.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-6/StandardLibraryInputoutputFunctionsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-6/StandardLibraryInputoutputFunctionsUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-7/AtofAtoiAtolAndAtollOfStdlibhUsed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/atofatoiatolandatollused/AtofAtoiAtolAndAtollUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-8/TerminationFunctionsOfStdlibhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-8/TerminationFunctionsOfStdlibhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-8/TerminationMacrosOfStdlibhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-8/TerminationMacrosOfStdlibhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-21-9/BsearchAndQsortOfStdlibhUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-21-9/BsearchAndQsortOfStdlibhUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-10/OnlyTestErrnoRightAfterErrnoSettingFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-10/OnlyTestErrnoRightAfterErrnoSettingFunction.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-11/ThreadPreviouslyJoinedOrDetached.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/joinordetachthreadonlyonce/JoinOrDetachThreadOnlyOnce.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-12/NonstandardUseOfThreadingObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-12/NonstandardUseOfThreadingObject.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-13/ThreadingObjectWithInvalidStorageDuration.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-13/ThreadingObjectWithInvalidStorageDuration.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-14/MutexInitWithInvalidMutexType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-14/MutexInitWithInvalidMutexType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-14/MutexInitializedInsideThread.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-14/MutexInitializedInsideThread.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-14/MutexNotInitializedBeforeUse.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-14/MutexNotInitializedBeforeUse.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-15/ThreadResourceDisposedBeforeThreadsJoined.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-15/ThreadResourceDisposedBeforeThreadsJoined.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-16/MutexObjectsNotAlwaysUnlocked.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-16/MutexObjectsNotAlwaysUnlocked.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-17/InvalidOperationOnUnlockedMutex.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-17/InvalidOperationOnUnlockedMutex.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-18/NonRecursiveMutexRecursivelyLocked.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-18/NonRecursiveMutexRecursivelyLocked.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-18/NonRecursiveMutexRecursivelyLockedAudit.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-18/NonRecursiveMutexRecursivelyLockedAudit.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-19/ConditionVariableUsedWithMultipleMutexes.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-19/ConditionVariableUsedWithMultipleMutexes.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-20/ThreadStorageNotInitializedBeforeUse.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-20/ThreadStorageNotInitializedBeforeUse.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-20/ThreadStoragePointerInitializedInsideThread.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-20/ThreadStoragePointerInitializedInsideThread.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-3/FileOpenForReadAndWriteOnDifferentStreams.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-3/FileOpenForReadAndWriteOnDifferentStreams.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-4/AttemptToWriteToAReadOnlyStream.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-4/AttemptToWriteToAReadOnlyStream.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-5/PointerToAFileObjectDereferenced.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-5/PointerToAFileObjectDereferenced.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-6/FileUsedAfterClosed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/donotaccessaclosedfile/DoNotAccessAClosedFile.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-7/EofShallBeComparedWithUnmodifiedReturnValues.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-7/EofShallBeComparedWithUnmodifiedReturnValues.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-8/ErrnoSetToZeroPriorToCall.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-8/ErrnoSetToZeroPriorToCall.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-22-9/ErrnoSetToZeroAfterCall.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-22-9/ErrnoSetToZeroAfterCall.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-1/GenericSelectionDoesntDependOnMacroArgument.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-1/GenericSelectionDoesntDependOnMacroArgument.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-1/GenericSelectionNotExpandedFromAMacro.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-1/GenericSelectionNotExpandedFromAMacro.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-2/GenericSelectionNotFromMacroWithSideEffects.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-2/GenericSelectionNotFromMacroWithSideEffects.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-3/GenericWithoutNonDefaultAssociation.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-3/GenericWithoutNonDefaultAssociation.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-4/GenericAssociationWithUnselectableType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-4/GenericAssociationWithUnselectableType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-5/DangerousDefaultSelectionForPointerInGeneric.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-5/DangerousDefaultSelectionForPointerInGeneric.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-6/GenericExpressionWithIncorrectEssentialType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-6/GenericExpressionWithIncorrectEssentialType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-7/InvalidGenericMacroArgumentEvaluation.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-7/InvalidGenericMacroArgumentEvaluation.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-23-8/DefaultGenericSelectionNotFirstOrLast.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-23-8/DefaultGenericSelectionNotFirstOrLast.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-3-1/CharacterSequencesAndUsedWithinAComment.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-3-1/CharacterSequencesAndUsedWithinAComment.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-3-2/LineSplicingUsedInComments.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-3-2/LineSplicingUsedInComments.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-1/ExternalIdentifiersNotDistinct.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/notdistinctidentifier/NotDistinctIdentifier.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-2/IdentifiersDeclaredInTheSameScopeNotDistinct.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-2/IdentifiersDeclaredInTheSameScopeNotDistinct.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-3/IdentifierHidingC.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/identifierhidden/IdentifierHidden.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-4/MacroIdentifierNotDistinctFromParameter.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-4/MacroIdentifierNotDistinctFromParameter.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-4/MacroIdentifiersNotDistinct.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-4/MacroIdentifiersNotDistinct.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-4/header1.h: -------------------------------------------------------------------------------- 1 | #define REPEATED 11 // COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-4/header2.h: -------------------------------------------------------------------------------- 1 | #define REPEATED 1 // COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-4/root2.c: -------------------------------------------------------------------------------- 1 | #include "conditional.h" 2 | 3 | #include "header4.h" -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-5/IdentifiersNotDistinctFromMacroNames.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-5/IdentifiersNotDistinctFromMacroNames.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-6/TypedefNameNotUnique.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-6/TypedefNameNotUnique.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-6/test.h: -------------------------------------------------------------------------------- 1 | typedef int headertest; // COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-6/test1.c: -------------------------------------------------------------------------------- 1 | #include "test.h" -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-7/TagNameNotUnique.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-7/TagNameNotUnique.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-8/IdentifiersWithExternalLinkageNotUnique.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-8/IdentifiersWithExternalLinkageNotUnique.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-8/test.c: -------------------------------------------------------------------------------- 1 | int g; 2 | extern int g1; // COMPLIANT 3 | void f() { int i; } -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-9/IdentifiersWithInternalLinkageNotUnique.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-5-9/IdentifiersWithInternalLinkageNotUnique.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-5-9/test.c: -------------------------------------------------------------------------------- 1 | static int g1; // NON_COMPLIANT 2 | static void f(); // NON_COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-6-3/BitFieldDeclaredAsMemberOfAUnion.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-6-3/BitFieldDeclaredAsMemberOfAUnion.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-1/OctalConstantsUsed.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/useofnonzerooctalescape/UseOfNonZeroOctalEscape.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-2/UOrUSuffixRepresentedInUnsignedType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-2/UOrUSuffixRepresentedInUnsignedType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-4/StringLiteralAssignedToNonConstChar.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-4/StringLiteralAssignedToNonConstChar.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-5/IncorrectlySizedIntegerConstantMacroArgument.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-5/IncorrectlySizedIntegerConstantMacroArgument.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-5/IntegerConstantMacroArgumentUsesSuffix.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-5/IntegerConstantMacroArgumentUsesSuffix.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-5/InvalidIntegerConstantMacroArgument.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-5/InvalidIntegerConstantMacroArgument.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-5/InvalidLiteralForIntegerConstantMacroArgument.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-5/InvalidLiteralForIntegerConstantMacroArgument.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-7-6/UseOfBannedSmallIntegerConstantMacro.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-7-6/UseOfBannedSmallIntegerConstantMacro.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-1/ExplicitlyDeclareTypes.testref: -------------------------------------------------------------------------------- 1 | c/common/test/rules/typeomitted/TypeOmitted.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-10/InlineFunctionNotDeclaredStaticStorage.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-10/InlineFunctionNotDeclaredStaticStorage.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-11/ArrayExternalLinkageSizeExplicitlySpecified.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-11/ArrayExternalLinkageSizeExplicitlySpecified.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-13/PointerShouldPointToConstTypeWhenPossible.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-13/PointerShouldPointToConstTypeWhenPossible.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-14/RestrictTypeQualifierUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-14/RestrictTypeQualifierUsed.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-15/RedeclarationOfObjectWithUnmatchedAlignment.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-15/RedeclarationOfObjectWithUnmatchedAlignment.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-15/RedeclarationOfObjectWithoutAlignment.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-15/RedeclarationOfObjectWithoutAlignment.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-16/AlignmentWithSizeZero.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-16/AlignmentWithSizeZero.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-17/MoreThanOneAlignmentSpecifierOnDeclaration.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-17/MoreThanOneAlignmentSpecifierOnDeclaration.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-3/DeclarationsOfAFunctionSameNameAndType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-3/DeclarationsOfAFunctionSameNameAndType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-3/DeclarationsOfAnObjectSameNameAndType.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-3/DeclarationsOfAnObjectSameNameAndType.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-4/CompatibleDeclarationFunctionDefined.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-4/CompatibleDeclarationFunctionDefined.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-4/CompatibleDeclarationObjectDefined.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-4/CompatibleDeclarationObjectDefined.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-4/object2.c: -------------------------------------------------------------------------------- 1 | short i3 = 0; // NON_COMPLIANT 2 | 3 | signed int i4 = 0; // COMPLIANT 4 | -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-5/ExternalObjectOrFunctionNotDeclaredInOneFile.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-5/ExternalObjectOrFunctionNotDeclaredInOneFile.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-5/test.h: -------------------------------------------------------------------------------- 1 | extern int g; // NON_COMPLIANT 2 | 3 | int g2; // COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-5/test1.c: -------------------------------------------------------------------------------- 1 | extern int g3; // NON_COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-5/test1.h: -------------------------------------------------------------------------------- 1 | extern int g; // NON_COMPLIANT 2 | 3 | int g2; // COMPLIANT -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-7/ShouldNotBeDefinedWithExternalLinkage.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-8-7/ShouldNotBeDefinedWithExternalLinkage.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-7/test1.c: -------------------------------------------------------------------------------- 1 | #include "test2.h" 2 | void f() { 3 | i = 0; 4 | f1(); 5 | f4(); 6 | f5(); 7 | } -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-8-7/test2.h: -------------------------------------------------------------------------------- 1 | #include "test.h" 2 | extern void f6() {} // NON_COMPLIANT 3 | static void test() { f6(); } -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-9-4/RepeatedInitializationOfAggregateObjectElement.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-9-4/RepeatedInitializationOfAggregateObjectElement.ql -------------------------------------------------------------------------------- /c/misra/test/rules/RULE-9-7/UninitializedAtomicObject.qlref: -------------------------------------------------------------------------------- 1 | rules/RULE-9-7/UninitializedAtomicObject.ql -------------------------------------------------------------------------------- /change_notes/2021-09-03-update-access-path-perf.md: -------------------------------------------------------------------------------- 1 | - `A12-8-1` - `MoveConstructorShallOnlyMoveObject.ql`: 2 | - Improved evaluation performance. -------------------------------------------------------------------------------- /change_notes/2021-10-20-supported-rules.md: -------------------------------------------------------------------------------- 1 | - The supported rules list is now provided in CSV as well as Markdown format. -------------------------------------------------------------------------------- /change_notes/2021-10-23-a7-3-1-performance.md: -------------------------------------------------------------------------------- 1 | - `A7-3-1` - the evaluation time of the queries covering these rules has been reduced. -------------------------------------------------------------------------------- /change_notes/2021-11-18-recursive-functions.md: -------------------------------------------------------------------------------- 1 | - `A7-5-2` - `RecursiveFunctions.ql`: 2 | - Added test cases to clarify operator of the query. -------------------------------------------------------------------------------- /change_notes/2021-11-26-exclude-noexcept-false.md: -------------------------------------------------------------------------------- 1 | - `A15-4-4` - exclude results where noexcept(false) is explicitly specified 2 | -------------------------------------------------------------------------------- /change_notes/2021-11-26-expand-A12-8-6-output.md: -------------------------------------------------------------------------------- 1 | - `A12-8-6` - output the reason for which a class was determined to be a potential base class 2 | -------------------------------------------------------------------------------- /change_notes/2021-12-01-a12-4-1-update-syntax.md: -------------------------------------------------------------------------------- 1 | - `A12-4-1` - update query for compatibility with the new definition of `isPossibleBaseClass` -------------------------------------------------------------------------------- /change_notes/2021-12-06-M0-1-10-exlude-deleted-functions.md: -------------------------------------------------------------------------------- 1 | - `M0-1-10` - `UnusedFunction.ql` 2 | - Fix #495 by excluding deleted functions. 3 | -------------------------------------------------------------------------------- /change_notes/2021-12-10-ignore-lambdas.md: -------------------------------------------------------------------------------- 1 | - `M8-4-4` - `FunctionIdentifierCondition.ql` 2 | - Fix #471 by excluding lambda functions. -------------------------------------------------------------------------------- /change_notes/2021-12-12-revert-m7-5-2-coverage.md: -------------------------------------------------------------------------------- 1 | - `M7-5-2` - revert a change from 2021-11-26 which introduced false positives 2 | -------------------------------------------------------------------------------- /change_notes/2022-01-25-split-rule-DCL51-CPP.md: -------------------------------------------------------------------------------- 1 | - `DCL51-CPP` 2 | - Split into two queries for sub-rule deviations -------------------------------------------------------------------------------- /change_notes/2022-03-04-address-fp-m7-3-4.md: -------------------------------------------------------------------------------- 1 | - Address a false positive flagged by `cpp/autosar/using-directives-used` for anonymous namespaces. -------------------------------------------------------------------------------- /change_notes/2022-04-06-rand-refactor.md: -------------------------------------------------------------------------------- 1 | - Refactored `A26-5-1` and `MSC50-CPP` to share the same query with `MSC30-C`. -------------------------------------------------------------------------------- /change_notes/2022-07-15-M5-18-1-address-non-conforming-alert-message.md: -------------------------------------------------------------------------------- 1 | - `M5-18-1`: Update the alert message to conform with our query style-guide. -------------------------------------------------------------------------------- /change_notes/2023-03-07-20-12-perf.md: -------------------------------------------------------------------------------- 1 | * `Rule 20.12` - the performance of this rule has been improved. -------------------------------------------------------------------------------- /change_notes/2023-03-13-fp-a16-0-1.md: -------------------------------------------------------------------------------- 1 | * `A16-0-1` - reduce unneeded results related to `#pragma`, as it's already reported by A16-7-1. -------------------------------------------------------------------------------- /change_notes/2023-03-13-fp-dcl51-cpp.md: -------------------------------------------------------------------------------- 1 | * `DCL51-CPP` - reduce false positives related to use of `__func__` -------------------------------------------------------------------------------- /change_notes/2023-03-26-nested-switch-case.md: -------------------------------------------------------------------------------- 1 | * `M6-4-4` - alert message updated for clarity. -------------------------------------------------------------------------------- /change_notes/2023-04-28-dcl56-cpp-perf.md: -------------------------------------------------------------------------------- 1 | * `DCL56-CPP` - performance has been improved for databases with complex initializers. -------------------------------------------------------------------------------- /change_notes/2023-07-26-unused-local-variable.md: -------------------------------------------------------------------------------- 1 | - `M0-1-3` - Consider constexpr variables used in template instantiations as "used". 2 | -------------------------------------------------------------------------------- /change_notes/2023-07-30-update-to-2.11.6.md: -------------------------------------------------------------------------------- 1 | - Updated the supported CodeQL version to `2.11.6`. -------------------------------------------------------------------------------- /change_notes/2023-08-16-update-to-2.12.7.md: -------------------------------------------------------------------------------- 1 | - Updated the supported CodeQL version to `2.12.7`. -------------------------------------------------------------------------------- /change_notes/2023-10-10-add-certification-kit.md: -------------------------------------------------------------------------------- 1 | - The release artifacts now include a certification kit used for ISO26262 certification. -------------------------------------------------------------------------------- /change_notes/2023-10-26-a15-4-4-noexcept.md: -------------------------------------------------------------------------------- 1 | * `A15-4-4`: remove false positives reported on uninsantiated templates. -------------------------------------------------------------------------------- /change_notes/2023-12-05-a7-2-1-typo.md: -------------------------------------------------------------------------------- 1 | * `A7-2-1` - fix typo in some alert messages. -------------------------------------------------------------------------------- /change_notes/2024-01-17-a4-7-1-exclude-pointers.md: -------------------------------------------------------------------------------- 1 | * `A4-7-1` - exclude pointer increment and decrement operators from this rule. -------------------------------------------------------------------------------- /change_notes/2024-01-30-m0-3-2.md: -------------------------------------------------------------------------------- 1 | * `M0-3-2` - the alert messages now include the name of the called function. -------------------------------------------------------------------------------- /change_notes/2024-06-18-fix-fp-616-M9-3-3.md: -------------------------------------------------------------------------------- 1 | - `M9-3-3` - `MemberFunctionStaticIfPossible.ql`: 2 | - Fixes #616. Exclude uninstantiated templates. -------------------------------------------------------------------------------- /change_notes/2024-12-10-a15-4-4-deviations.md: -------------------------------------------------------------------------------- 1 | - `A15-4-4` - `MissingNoExcept.ql`: 2 | - Enable deviations on either declarations or definitions. -------------------------------------------------------------------------------- /change_notes/2024-12-10-udpate-a7-1-1.md: -------------------------------------------------------------------------------- 1 | - `A7-1-1` - `DeclarationUnmodifiedObjectMissingConstSpecifier.ql`: 2 | - Exclude rvalue references. 3 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-1-1/UselessAssignment.qlref: -------------------------------------------------------------------------------- 1 | rules/A0-1-1/UselessAssignment.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-1-2/UnusedReturnValue.qlref: -------------------------------------------------------------------------------- 1 | rules/A0-1-2/UnusedReturnValue.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-1-3/UnusedLocalFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/A0-1-3/UnusedLocalFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-1-4/UnusedParameter.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/unusedparameter/UnusedParameter.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-1-5/UnusedVirtualParameter.qlref: -------------------------------------------------------------------------------- 1 | rules/A0-1-5/UnusedVirtualParameter.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-1-6/UnusedTypeDeclarations.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/unusedtypedeclarations/UnusedTypeDeclarations.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-4-2/TypeLongDoubleUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A0-4-2/TypeLongDoubleUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-4-3/options.clang: -------------------------------------------------------------------------------- 1 | -std=gnu++14 -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-4-3/options.gcc: -------------------------------------------------------------------------------- 1 | -std=gnu++14 -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-4-3/options.qcc: -------------------------------------------------------------------------------- 1 | -std=gnu++14 -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A0-4-3/test.cpp: -------------------------------------------------------------------------------- 1 | // semmle-extractor-options:--g++ -std=gnu++14 2 | // NON_COMPLIANT -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/CStandardLibraryHeadersAreDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/CStandardLibraryHeadersAreDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/DynamicExceptionsAreDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/DynamicExceptionsAreDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/ImplicitCopyAssignmentOperatorIsDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/ImplicitCopyAssignmentOperatorIsDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/ImplicitCopyConstructorIsDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/ImplicitCopyConstructorIsDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/IncrementOperatorWithBoolOperandIsDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/IncrementOperatorWithBoolOperandIsDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/RegisterKeywordIsDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/RegisterKeywordIsDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-1/StrstreamTypesAreDeprecated.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-1/StrstreamTypesAreDeprecated.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.1/CompilerWarningLevelNotInCompliance.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-2/CompilerWarningLevelNotInCompliance.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.1/foo: -------------------------------------------------------------------------------- 1 | -Wall -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.1/options.clang: -------------------------------------------------------------------------------- 1 | @foo -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.1/options.gcc: -------------------------------------------------------------------------------- 1 | @foo -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.1/options.qcc: -------------------------------------------------------------------------------- 1 | @foo -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.1/responsefile.cpp: -------------------------------------------------------------------------------- 1 | // semmle-extractor-options: --clang -std=c++14 @foo 2 | // COMPLIANT -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.2/CompilerWarningLevelNotInCompliance.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-2/CompilerWarningLevelNotInCompliance.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.2/options.clang: -------------------------------------------------------------------------------- 1 | -Wcast-function-type -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.2/options.gcc: -------------------------------------------------------------------------------- 1 | -Wcast-function-type -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.2/options.qcc: -------------------------------------------------------------------------------- 1 | -Wcast-function-type -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.3/CompilerWarningLevelNotInCompliance.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-2/CompilerWarningLevelNotInCompliance.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.3/options.clang: -------------------------------------------------------------------------------- 1 | -w -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.3/options.gcc: -------------------------------------------------------------------------------- 1 | -w -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.3/options.qcc: -------------------------------------------------------------------------------- 1 | -w -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.3/test.cpp: -------------------------------------------------------------------------------- 1 | // semmle-extractor-options: --clang -std=c++14 2 | // NON_COMPLIANT -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.4/CompilerWarningLevelNotInCompliance.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-2/CompilerWarningLevelNotInCompliance.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.4/options.clang: -------------------------------------------------------------------------------- 1 | -Wformat=0 -Wno-format-security -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.4/options.gcc: -------------------------------------------------------------------------------- 1 | -Wformat=0 -Wno-format-security -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.4/options.qcc: -------------------------------------------------------------------------------- 1 | -Wno-format -Wno-format-security -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.5/CompilerWarningLevelNotInCompliance.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-2/CompilerWarningLevelNotInCompliance.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.5/options.clang: -------------------------------------------------------------------------------- 1 | -Wall -Wno-format -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.5/options.gcc: -------------------------------------------------------------------------------- 1 | -Wall -Wno-format -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2.5/options.qcc: -------------------------------------------------------------------------------- 1 | -Wall -Wno-format -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2/CompilerWarningLevelNotInCompliance.qlref: -------------------------------------------------------------------------------- 1 | rules/A1-1-2/CompilerWarningLevelNotInCompliance.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2/options.clang: -------------------------------------------------------------------------------- 1 | -Wall -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2/options.gcc: -------------------------------------------------------------------------------- 1 | -Wall -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2/options.qcc: -------------------------------------------------------------------------------- 1 | -Wall -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-2/test.hpp: -------------------------------------------------------------------------------- 1 | // COMPLIANT 2 | #pragma once -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-3/options.clang: -------------------------------------------------------------------------------- 1 | -Ofast -ffast-math -fgnu-keywords -fno-signed-zeros -ffinite-math-only -ffloat-store -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-3/options.gcc: -------------------------------------------------------------------------------- 1 | -Ofast -ffast-math -fgnu-keywords -fno-signed-zeros -ffinite-math-only -ffloat-store -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A1-1-3/options.qcc: -------------------------------------------------------------------------------- 1 | -Ofast -ffast-math -fgnu-keywords -fno-signed-zeros -ffinite-math-only -ffloat-store -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-0-1/PublicInheritanceNotUsedForIsARelationship.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-0-1/PublicInheritanceNotUsedForIsARelationship.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-0-2/NonPublicInheritanceNotUsedForHasARelationship.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-0-2/NonPublicInheritanceNotUsedForHasARelationship.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-2-1/NonVirtualPublicOrProtectedFunctionsRedefined.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-2-1/NonVirtualPublicOrProtectedFunctionsRedefined.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-3-1/VirtualFunctionsShallContainOneSpecifier.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-3-1/VirtualFunctionsShallContainOneSpecifier.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-3-2/OverridingFunctionNotDeclaredOverrideOrFinal.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-3-2/OverridingFunctionNotDeclaredOverrideOrFinal.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-3-3/VirtualFunctionsIntroducedInFinalClass.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-3-3/VirtualFunctionsIntroducedInFinalClass.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-3-5/UserDefinedAssignmentOperatorVirtual.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-3-5/UserDefinedAssignmentOperatorVirtual.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A10-4-1/HierarchiesShouldBeBasedOnInterfaceClasses.qlref: -------------------------------------------------------------------------------- 1 | rules/A10-4-1/HierarchiesShouldBeBasedOnInterfaceClasses.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A11-0-1/NonPodTypeShouldBeDefinedAsClass.qlref: -------------------------------------------------------------------------------- 1 | rules/A11-0-1/NonPodTypeShouldBeDefinedAsClass.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A11-0-2/TypeDefinedAsStructHasNoMethods.qlref: -------------------------------------------------------------------------------- 1 | rules/A11-0-2/TypeDefinedAsStructHasNoMethods.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A11-0-2/TypeDefinedAsStructHasOnlyPublicDataMembers.qlref: -------------------------------------------------------------------------------- 1 | rules/A11-0-2/TypeDefinedAsStructHasOnlyPublicDataMembers.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A11-3-1/FriendDeclarationsUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:4:18:4:26 | A's friend | operator+ is declared as a friend of A | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A11-3-1/FriendDeclarationsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A11-3-1/FriendDeclarationsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-0-1/MissingSpecialMemberFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-0-1/MissingSpecialMemberFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-1-2/NonStaticMemberMultipleInit.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-1-2/NonStaticMemberMultipleInit.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-1-3/MissedNSDMIOpportunity.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-1-3/MissedNSDMIOpportunity.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-1-4/ConstructorWithFundamentalArgMissingExplicit.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-1-4/ConstructorWithFundamentalArgMissingExplicit.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-1-5/AvoidDuplicationInConstructors.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-1-5/AvoidDuplicationInConstructors.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-1-6/UseInheritingConstructors.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-1-6/UseInheritingConstructors.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-4-1/DestructorOfABaseClassNotPublicVirtual.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-4-1/DestructorOfABaseClassNotPublicVirtual.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-4-2/NonVirtualPublicDestructorInNonFinalClass.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-4-2/NonVirtualPublicDestructorInNonFinalClass.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-6-1/ClassDataMembersInitializationCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-6-1/ClassDataMembersInitializationCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-8-1/CopyConstructorShallOnlyCopyObject.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-8-1/CopyConstructorShallOnlyCopyObject.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-8-1/MoveConstructorShallOnlyMoveObject.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-8-1/MoveConstructorShallOnlyMoveObject.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-8-2/UserDefinedCopyAndMoveUseNoThrowSwapFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-8-2/UserDefinedCopyAndMoveUseNoThrowSwapFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-8-4/MoveConstructorUsesCopySemantics.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-8-4/MoveConstructorUsesCopySemantics.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-8-6/CopyAndMoveNotDeclaredProtected.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-8-6/CopyAndMoveNotDeclaredProtected.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A12-8-7/OperatorsShouldBeDeclaredWithTheRefQualifier.qlref: -------------------------------------------------------------------------------- 1 | rules/A12-8-7/OperatorsShouldBeDeclaredWithTheRefQualifier.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-1-2/UserDefinedLiteralOperatorSuffixViolation.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-1-2/UserDefinedLiteralOperatorSuffixViolation.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-2-1/AssignmentOperatorReturnThis.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-2-1/AssignmentOperatorReturnThis.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-2-2/BinaryOperatorAndBitwiseOperatorReturnAPrvalue.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-2-2/BinaryOperatorAndBitwiseOperatorReturnAPrvalue.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-2-3/RelationalOperatorShallReturnABooleanValue.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-2-3/RelationalOperatorShallReturnABooleanValue.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-5-1/MissingConstOperatorSubscript.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-5-1/MissingConstOperatorSubscript.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-5-3/UserDefinedConversionOperatorsShouldNotBeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-5-3/UserDefinedConversionOperatorsShouldNotBeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-5-4/OppositeOperatorsNotDefinedInTermsOfOther.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-5-4/OppositeOperatorsNotDefinedInTermsOfOther.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A13-6-1/UseCorrectIntervalForDigitSequencesSeparators.qlref: -------------------------------------------------------------------------------- 1 | rules/A13-6-1/UseCorrectIntervalForDigitSequencesSeparators.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A14-1-1/TemplateShouldCheckArg.qlref: -------------------------------------------------------------------------------- 1 | rules/A14-1-1/TemplateShouldCheckArg.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A14-5-1/TemplateConstructorOverloadResolution.qlref: -------------------------------------------------------------------------------- 1 | rules/A14-5-1/TemplateConstructorOverloadResolution.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A14-5-2/NonTemplateMemberDefinedInTemplate.qlref: -------------------------------------------------------------------------------- 1 | rules/A14-5-2/NonTemplateMemberDefinedInTemplate.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A14-5-3/NonMemberGenericOperatorCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/A14-5-3/NonMemberGenericOperatorCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A14-7-1/TypeUsedAsTemplateArgShallProvideAllMembers.qlref: -------------------------------------------------------------------------------- 1 | rules/A14-7-1/TypeUsedAsTemplateArgShallProvideAllMembers.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A14-7-2/TemplateSpecializationNotDeclaredInTheSameFile.qlref: -------------------------------------------------------------------------------- 1 | rules/A14-7-2/TemplateSpecializationNotDeclaredInTheSameFile.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-0-1/ExceptionThrownOnCompletion.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-0-1/ExceptionThrownOnCompletion.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-0-3/ExceptionSafetyGuaranteeOfACalledFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-0-3/ExceptionSafetyGuaranteeOfACalledFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-0-4/RecoverableUncheckedExceptions.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-0-4/RecoverableUncheckedExceptions.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-0-5/UnrecoverableCheckedExceptions.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-0-5/UnrecoverableCheckedExceptions.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-1-1/OnlyThrowStdExceptionDerivedTypes.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-1-1/OnlyThrowStdExceptionDerivedTypes.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-1-2/PointerExceptionObject.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/exceptionobjecthavepointertype/ExceptionObjectHavePointerType.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-1-3/ThrownExceptionsShouldBeUnique.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-1-3/ThrownExceptionsShouldBeUnique.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-1-4/ValidResourcesStateBeforeThrow.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/exceptionsafetyvalidstate/ExceptionSafetyValidState.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-1-5/ExceptionsThrownAcrossExecutionBoundaries.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-1-5/ExceptionsThrownAcrossExecutionBoundaries.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-1-5/test-diff.h: -------------------------------------------------------------------------------- 1 | int f(int x); 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-2-2/ConstructorErrorLeavesObjectInInvalidState.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-2-2/ConstructorErrorLeavesObjectInInvalidState.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-3-3/MissingCatchHandlerInMain.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-3-3/MissingCatchHandlerInMain.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-3-4/CatchAllEllipsisUsedInNonMain.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-3-4/CatchAllEllipsisUsedInNonMain.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-1/UseOfDynamicExceptionSpecification.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-1/UseOfDynamicExceptionSpecification.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-3/IncompatibleNoexceptSpecification.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-3/IncompatibleNoexceptSpecification.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-3/IncompatibleNoexceptSpecificationForOverriders.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-3/IncompatibleNoexceptSpecificationForOverriders.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-3/InconsistentNoexceptFalseSpecification.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-3/InconsistentNoexceptFalseSpecification.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-3/InconsistentNoexceptTrueSpecification.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-3/InconsistentNoexceptTrueSpecification.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-4/MissingNoExcept.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-4/MissingNoExcept.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-5/InconsistentCheckedExceptions.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-5/InconsistentCheckedExceptions.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-4-5/MissingCheckedExceptions.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-4-5/MissingCheckedExceptions.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-5-1/SpecialFunctionExitsWithException.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-5-1/SpecialFunctionExitsWithException.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-5-1/SpecialFunctionMissingNoExceptSpecification.qlref: -------------------------------------------------------------------------------- 1 | rules/A15-5-1/SpecialFunctionMissingNoExceptSpecification.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A15-5-2/ExplicitAbruptTerminationAutosar.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/explicitabrupttermination/ExplicitAbruptTermination.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-2-2/UnusedIncludeDirectives.qlref: -------------------------------------------------------------------------------- 1 | rules/A16-2-2/UnusedIncludeDirectives.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-2-2/internal.h: -------------------------------------------------------------------------------- 1 | void f(); -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-2-2/test.hpp: -------------------------------------------------------------------------------- 1 | #include "z.h" 2 | 3 | void g() { f(); } -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-2-2/z.h: -------------------------------------------------------------------------------- 1 | #include "internal.h" -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-6-1/ErrorDirectiveUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A16-6-1/ErrorDirectiveUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-7-1/PragmaDirectiveUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:5:1:5:12 | #pragma once | Use of '#pragma once' directive. | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A16-7-1/PragmaDirectiveUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A16-7-1/PragmaDirectiveUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A17-1-1/CStandardLibraryFunctionCalls.qlref: -------------------------------------------------------------------------------- 1 | rules/A17-1-1/CStandardLibraryFunctionCalls.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-0-1/lib/example.h: -------------------------------------------------------------------------------- 1 | #ifndef LIB_EXAMPLE_H_ 2 | #define LIB_EXAMPLE_H_ 3 | 4 | #endif -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-0-2/UseOfUnsafeCStringToNumberConversion.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-0-2/UseOfUnsafeCStringToNumberConversion.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-0-3/LocaleFunctionsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-0-3/LocaleFunctionsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-0-3/LocaleMacrosUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-0-3/LocaleMacrosUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-0-3/LocaleTypeLConvUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-0-3/LocaleTypeLConvUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-1-1/CStyleArraysUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-1-1/CStyleArraysUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-1-3/AutoPtrTypeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-1-3/AutoPtrTypeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-1/FunctionsMallocCallocReallocAndFreeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-1/FunctionsMallocCallocReallocAndFreeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-11/OperatorNewAndOperatorDeleteNotDefinedGlobally.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-11/OperatorNewAndOperatorDeleteNotDefinedGlobally.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-11/OperatorNewAndOperatorDeleteNotDefinedLocally.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-11/OperatorNewAndOperatorDeleteNotDefinedLocally.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-2/DoNotUseNonPlacementDelete.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-2/DoNotUseNonPlacementDelete.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-2/DoNotUseNonPlacementNew.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-2/DoNotUseNonPlacementNew.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-3/NewArrayDeleteMismatch.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-3/NewArrayDeleteMismatch.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-3/NewDeleteArrayMismatch.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-3/NewDeleteArrayMismatch.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-5/MemoryManagementFunctionInvariants.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-5/MemoryManagementFunctionInvariants.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-6/DynamicMemoryManagementFailureMode.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-6/DynamicMemoryManagementFailureMode.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-5-8/UnnecessaryUseOfDynamicStorage.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-5-8/UnnecessaryUseOfDynamicStorage.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-9-1/BindUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-9-1/BindUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-9-3/MoveUsedOnConstObjects.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-9-3/MoveUsedOnConstObjects.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A18-9-4/ArgumentToForwardSubsequentlyUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A18-9-4/ArgumentToForwardSubsequentlyUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-10-1/IdentifierHiding.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/identifierhidden/IdentifierHidden.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-10-4/IdentifierNameOfStaticFunctionReusedInNamespace.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-10-4/IdentifierNameOfStaticFunctionReusedInNamespace.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-10-5/IdentifierNameOfAStaticFunctionIsReused.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-10-5/IdentifierNameOfAStaticFunctionIsReused.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-11-1/VolatileKeywordUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:3:16:3:16 | x | Variable x is declared with volatile specifier | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-11-1/VolatileKeywordUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-11-1/VolatileKeywordUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-13-1/EscapeSequenceOutsideISO.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/backslashcharactermisuse/BackslashCharacterMisuse.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-13-3/TypeWcharTUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-13-3/TypeWcharTUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-13-4/StringLiteralsAssignedToNonConstantPointers.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-13-4/StringLiteralsAssignedToNonConstantPointers.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-13-5/HexadecimalConstantsShouldBeUpperCase.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-13-5/HexadecimalConstantsShouldBeUpperCase.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-3-1/InvalidCharacterInComment.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-3-1/InvalidCharacterInComment.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-3-1/InvalidCharacterInStringLiteral.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-3-1/InvalidCharacterInStringLiteral.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-7-1/SingleLineCommentEndsWithSlash.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/linesplicingusedincomments/LineSplicingUsedInComments.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A2-7-3/UndocumentedUserDefinedType.qlref: -------------------------------------------------------------------------------- 1 | rules/A2-7-3/UndocumentedUserDefinedType.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A20-8-2/UniquePtrNotUsedToRepresentExclusiveOwnership.qlref: -------------------------------------------------------------------------------- 1 | rules/A20-8-2/UniquePtrNotUsedToRepresentExclusiveOwnership.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A20-8-3/SharedPtrNotUsedToRepresentSharedOwnership.qlref: -------------------------------------------------------------------------------- 1 | rules/A20-8-3/SharedPtrNotUsedToRepresentSharedOwnership.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A20-8-4/SharedPointerUsedWithNoOwnershipSharing.qlref: -------------------------------------------------------------------------------- 1 | rules/A20-8-4/SharedPointerUsedWithNoOwnershipSharing.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A21-8-1/SignedValPassedToChar.qlref: -------------------------------------------------------------------------------- 1 | rules/A21-8-1/SignedValPassedToChar.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A23-0-1/IteratorImplicitlyConvertedToConstIterator.qlref: -------------------------------------------------------------------------------- 1 | rules/A23-0-1/IteratorImplicitlyConvertedToConstIterator.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A23-0-2/ValidContainerElementAccess.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/validcontainerelementaccess/ValidContainerElementAccess.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A26-5-2/RandomNumberEnginesDefaultInitialized.qlref: -------------------------------------------------------------------------------- 1 | rules/A26-5-2/RandomNumberEnginesDefaultInitialized.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A27-0-1/InputsFromIndependentComponentsNotValidated.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/nonconstantformat/NonConstantFormat.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A27-0-4/CStyleStringsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A27-0-4/CStyleStringsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-1/ViolationsOfOneDefinitionRule.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-1-1/ViolationsOfOneDefinitionRule.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-1/test.cpp: -------------------------------------------------------------------------------- 1 | #include "test.hpp" 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-2/HeaderFileExpectedFileNameExtension.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-1-2/HeaderFileExpectedFileNameExtension.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-3/FileNameExtensionCpp.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-1-3/FileNameExtensionCpp.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-3/test.cpp: -------------------------------------------------------------------------------- 1 | // COMPLIANT 2 | #include "test.cc" 3 | void f1() {} 4 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-4/ExternalLinkageArrayWithoutExplicitSize.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-1-4/ExternalLinkageArrayWithoutExplicitSize.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-1-6/TrivialAccessorAndMutatorFunctionsNotInlined.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-1-6/TrivialAccessorAndMutatorFunctionsNotInlined.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-3-1/ExternalLinkageNotDeclaredInHeaderFile.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-3-1/ExternalLinkageNotDeclaredInHeaderFile.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-3-2/StaticOrThreadLocalObjectsNonConstantInit.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-3-2/StaticOrThreadLocalObjectsNonConstantInit.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-8-1/ObjectAccessedAfterLifetime.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/objectaccessedafterlifetime/ObjectAccessedAfterLifetime.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-8-1/ObjectAccessedBeforeLifetime.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/objectaccessedbeforelifetime/ObjectAccessedBeforeLifetime.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-9-1/VariableWidthIntegerTypesUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-9-1/VariableWidthIntegerTypesUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A3-9-1/VariableWidthPlainCharTypeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A3-9-1/VariableWidthPlainCharTypeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A4-5-1/EnumUsedInArithmeticContexts.qlref: -------------------------------------------------------------------------------- 1 | rules/A4-5-1/EnumUsedInArithmeticContexts.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A4-7-1/IntMultToLong.qlref: -------------------------------------------------------------------------------- 1 | rules/A4-7-1/IntMultToLong.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A4-7-1/IntegerExpressionLeadToDataLoss.qlref: -------------------------------------------------------------------------------- 1 | rules/A4-7-1/IntegerExpressionLeadToDataLoss.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-0-1/ExpressionShouldNotRelyOnOrderOfEvaluation.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-0-1/ExpressionShouldNotRelyOnOrderOfEvaluation.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-0-2/NonBooleanIfCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/nonbooleanifstmt/NonBooleanIfStmt.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-0-2/NonBooleanIterationCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/nonbooleaniterationstmt/NonBooleanIterationStmt.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-1/LiteralValueUsedOutsideTypeInit.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-1/LiteralValueUsedOutsideTypeInit.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-2/ImplicitLambdaCapture.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-2/ImplicitLambdaCapture.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-3/LambdaExpressionWithoutParameterList.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-3/LambdaExpressionWithoutParameterList.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-6/LambdaWithImplicitNonVoidReturnType.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-6/LambdaWithImplicitNonVoidReturnType.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-7/LambdaPassedToDecltype.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-7/LambdaPassedToDecltype.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-7/LambdaPassedToTypeid.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-7/LambdaPassedToTypeid.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-8/LambdaExpressionInLambdaExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-8/LambdaExpressionInLambdaExpression.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-1-9/IdenticalLambdaExpressions.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-1-9/IdenticalLambdaExpressions.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-1/DynamicCastShouldNotBeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-2-1/DynamicCastShouldNotBeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-2/TraditionalCStyleCastsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-2-2/TraditionalCStyleCastsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-2/options.clang: -------------------------------------------------------------------------------- 1 | -I../../../../common/test/includes/custom-library -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-2/options.gcc: -------------------------------------------------------------------------------- 1 | -I../../../../common/test/includes/custom-library -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-2/options.qcc: -------------------------------------------------------------------------------- 1 | -I../../../../common/test/includes/custom-library -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-4/ReinterpretCastUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/reinterpretcastused/ReinterpretCastUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-2-6/OperandsOfALogicalAndOrNotParenthesized.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-2-6/OperandsOfALogicalAndOrNotParenthesized.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-3-2/NullPointersDereferenced.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/dereferenceofnullpointer/DereferenceOfNullPointer.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A5-6-1/DivisorEqualToZero.qlref: -------------------------------------------------------------------------------- 1 | rules/A5-6-1/DivisorEqualToZero.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-2-1/CopyOperatorShallOnlyCopyObject.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-2-1/CopyOperatorShallOnlyCopyObject.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-2-1/MoveOperatorShallOnlyMoveObject.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-2-1/MoveOperatorShallOnlyMoveObject.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-2-2/ExplicitConstructionOfUnnamedTemporary.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-2-2/ExplicitConstructionOfUnnamedTemporary.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-4-1/SwitchLessThanTwoCases.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-4-1/SwitchLessThanTwoCases.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-1/UnusedLoopCounterForContainerIteration.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-5-1/UnusedLoopCounterForContainerIteration.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-2/FloatingPointLoopCounter.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-5-2/FloatingPointLoopCounter.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-2/MultipleLoopCounters.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-5-2/MultipleLoopCounters.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-3/DoStatementsShouldNotBeUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:2:3:3:14 | do (...) ... | Use of do while loop. | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-3/DoStatementsShouldNotBeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-5-3/DoStatementsShouldNotBeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-4/ForLoopInitializesNonLoopCounter.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-5-4/ForLoopInitializesNonLoopCounter.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-5-4/ForLoopModifiesNonLoopCounter.qlref: -------------------------------------------------------------------------------- 1 | rules/A6-5-4/ForLoopModifiesNonLoopCounter.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A6-6-1/GotoStatementUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/gotostatementshouldnotbeused/GotoStatementShouldNotBeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-2/VariableMissingConstexpr.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-1-2/VariableMissingConstexpr.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-3/CvQualifiersNotPlacedOnTheRightHandSide.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-1-3/CvQualifiersNotPlacedOnTheRightHandSide.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-4/RegisterKeywordUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:4:16:4:16 | x | Use of register specifier on variable x. | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-4/RegisterKeywordUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-1-4/RegisterKeywordUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-6/TypedefSpecifierUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:2:22:2:28 | uint_32 | Use of typedef | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-6/TypedefSpecifierUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-1-6/TypedefSpecifierUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-1-9/ClassStructEnumDeclaredInDefinition.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-1-9/ClassStructEnumDeclaredInDefinition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-2-1/NonEnumeratorEnumValue.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-2-1/NonEnumeratorEnumValue.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-2-3/EnumerationsNotDeclaredAsScopedEnumClasses.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-2-3/EnumerationsNotDeclaredAsScopedEnumClasses.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-2-4/NoneFirstOrAllEnumeratorsNotInitialized.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-2-4/NoneFirstOrAllEnumeratorsNotInitialized.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-2-5/IntegerUsedForEnum.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-2-5/IntegerUsedForEnum.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-2-5/UseOfEnumForRelatedConstants.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-2-5/UseOfEnumForRelatedConstants.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-4-1/AsmDeclarationUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/asmdeclarationused/AsmDeclarationUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A7-5-1/InvalidFunctionReturnType.qlref: -------------------------------------------------------------------------------- 1 | rules/A7-5-1/InvalidFunctionReturnType.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-1/FunctionsDefinedUsingTheEllipsisNotation.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-1/FunctionsDefinedUsingTheEllipsisNotation.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-1/test.cpp: -------------------------------------------------------------------------------- 1 | 2 | void format_ellipses(char *format, ...) {} // NON_COMPLIANT 3 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-10/ParameterNotPassedByReference.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-10/ParameterNotPassedByReference.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-4/FunctionReturnMultipleValueCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-4/FunctionReturnMultipleValueCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-5/MoveFromConsumeParametersRvalRef.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-5/MoveFromConsumeParametersRvalRef.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-6/ForwardForwardingReferences.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-6/ForwardForwardingReferences.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-8/OutputParametersUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-8/OutputParametersUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-4-9/InOutParametersDeclaredAsTNotModified.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-4-9/InOutParametersDeclaredAsTNotModified.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-5-2/UseBracedVariableInitialization.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-5-2/UseBracedVariableInitialization.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A8-5-3/AvoidAutoWithBracedInitialization.qlref: -------------------------------------------------------------------------------- 1 | rules/A8-5-3/AvoidAutoWithBracedInitialization.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/A9-5-1/UnionsUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/A9-5-1/UnionsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-1/UnreachableCode.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/unreachablecode/UnreachableCode.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-10.1/UnusedFunction.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:23:14:23:26 | uncalled_func | Function uncalled_func is never called. | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-10.1/UnusedFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-10/UnusedFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-10/UnusedFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-10/UnusedFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-10/UnusedSplMemberFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-10/UnusedSplMemberFunction.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-2/InfeasiblePath.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-2/InfeasiblePath.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-3/UnusedGlobalOrNamespaceVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-3/UnusedGlobalOrNamespaceVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-3/UnusedLocalVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-3/UnusedLocalVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-3/UnusedMemberVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-3/UnusedMemberVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-4/SingleUseGlobalOrNamespacePODVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-4/SingleUseGlobalOrNamespacePODVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-4/SingleUseLocalPODVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-4/SingleUseLocalPODVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-4/SingleUseMemberPODVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-1-4/SingleUseMemberPODVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-1-9/DeadCode.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/deadcode/DeadCode.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M0-2-1/ObjectAssignedToAnOverlappingObject.qlref: -------------------------------------------------------------------------------- 1 | rules/M0-2-1/ObjectAssignedToAnOverlappingObject.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M10-1-1/ClassesShouldNotBeDerivedFromVirtualBases.qlref: -------------------------------------------------------------------------------- 1 | rules/M10-1-1/ClassesShouldNotBeDerivedFromVirtualBases.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M10-1-2/BaseClassCanBeVirtualOnlyInDiamondHierarchy.qlref: -------------------------------------------------------------------------------- 1 | rules/M10-1-2/BaseClassCanBeVirtualOnlyInDiamondHierarchy.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M11-0-1/MemberDataInNonPodClassTypesNotPrivate.qlref: -------------------------------------------------------------------------------- 1 | rules/M11-0-1/MemberDataInNonPodClassTypesNotPrivate.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M14-5-3/CopyAssignmentOperatorNotDeclared.qlref: -------------------------------------------------------------------------------- 1 | rules/M14-5-3/CopyAssignmentOperatorNotDeclared.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-0-3/GotoToCatchBlock.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-0-3/GotoToCatchBlock.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-0-3/SwitchToCatchBlock.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-0-3/SwitchToCatchBlock.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-1-1/ExceptionThrownDuringThrow.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-1-1/ExceptionThrownDuringThrow.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-1-2/NullThrownExplicitly.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-1-2/NullThrownExplicitly.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-3-1/ExceptionRaisedDuringTermination.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-3-1/ExceptionRaisedDuringTermination.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-3-4/CatchAllExplicitlyThrownExceptions.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-3-4/CatchAllExplicitlyThrownExceptions.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-3-6/CatchBlockShadowing.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/catchblockshadowing/CatchBlockShadowing.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-3-6/CatchBlockShadowingMisra.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/catchblockshadowing/CatchBlockShadowing.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M15-3-7/CatchAllHandlerLast.qlref: -------------------------------------------------------------------------------- 1 | rules/M15-3-7/CatchAllHandlerLast.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M16-2-3/IncludeGuardsNotProvided.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/includeguardsnotused/IncludeGuardsNotUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M16-2-3/NonUniqueIncludeGuardsCpp.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/nonuniqueincludeguardsused/NonUniqueIncludeGuardsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M16-3-2/HashOperatorsShouldNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/hashoperatorsused/HashOperatorsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M17-0-2/NameOfStandardLibraryMacroOrObjectReused.qlref: -------------------------------------------------------------------------------- 1 | rules/M17-0-2/NameOfStandardLibraryMacroOrObjectReused.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M17-0-2/test.cpp: -------------------------------------------------------------------------------- 1 | #define NULL 0 // NON_COMPLIANT 2 | 3 | int tzname = 0; // NON_COMPLIANT -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M17-0-3/NameOfStandardLibraryFunctionIsOverridden.qlref: -------------------------------------------------------------------------------- 1 | rules/M17-0-3/NameOfStandardLibraryFunctionIsOverridden.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M18-0-4/TimeHandlingFunctionsOfLibraryCtimeUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/M18-0-4/TimeHandlingFunctionsOfLibraryCtimeUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M18-0-5/UnboundedFunctionsOfLibraryCstringUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/M18-0-5/UnboundedFunctionsOfLibraryCstringUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M18-2-1/MacroOffsetofUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/macrooffsetofused/MacroOffsetofUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M18-7-1/CsignalFunctionsUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/csignalfunctionsused/CsignalFunctionsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M18-7-1/CsignalTypesUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/csignaltypesused/CsignalTypesUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M19-3-1/ErrnoUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:4:11:4:15 | errno | Use of 'errno'. | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M19-3-1/ErrnoUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/M19-3-1/ErrnoUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M2-13-2/UseOfNonZeroOctalEscape.qlref: -------------------------------------------------------------------------------- 1 | rules/M2-13-2/UseOfNonZeroOctalEscape.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M2-13-2/UseOfNonZeroOctalLiteral.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/useofnonzerooctalliteral/UseOfNonZeroOctalLiteral.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M2-13-4/LiteralSuffixNotUpperCase.qlref: -------------------------------------------------------------------------------- 1 | rules/M2-13-4/LiteralSuffixNotUpperCase.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M27-0-1/CstdioFunctionsUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/cstdiofunctionsused/CstdioFunctionsUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M27-0-1/CstdioMacrosUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/cstdiomacrosused/CstdioMacrosUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M27-0-1/CstdioTypesUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/cstdiotypesused/CstdioTypesUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M3-1-2/FunctionsDeclaredAtBlockScope.qlref: -------------------------------------------------------------------------------- 1 | rules/M3-1-2/FunctionsDeclaredAtBlockScope.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M3-2-2/OneDefinitionRuleViolation.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/onedefinitionruleviolation/OneDefinitionRuleViolation.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M3-2-3/MultipleDeclarationViolation.qlref: -------------------------------------------------------------------------------- 1 | rules/M3-2-3/MultipleDeclarationViolation.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M3-2-3/test.h: -------------------------------------------------------------------------------- 1 | extern unsigned short g1; // COMPLIANT -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M3-9-1/TypesNotIdenticalInObjectDeclarations.qlref: -------------------------------------------------------------------------------- 1 | rules/M3-9-1/TypesNotIdenticalInObjectDeclarations.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M3-9-1/TypesNotIdenticalInReturnDeclarations.qlref: -------------------------------------------------------------------------------- 1 | rules/M3-9-1/TypesNotIdenticalInReturnDeclarations.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M4-10-1/NullUsedAsIntegerValue.qlref: -------------------------------------------------------------------------------- 1 | rules/M4-10-1/NullUsedAsIntegerValue.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M4-10-2/LiteralZeroUsedAsNullPointerConstant.qlref: -------------------------------------------------------------------------------- 1 | rules/M4-10-2/LiteralZeroUsedAsNullPointerConstant.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M4-5-1/BoolOperandsToDisallowedBuiltInOperators.qlref: -------------------------------------------------------------------------------- 1 | rules/M4-5-1/BoolOperandsToDisallowedBuiltInOperators.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-10/UnsignedBitwiseOperatorWithoutCast.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-10/UnsignedBitwiseOperatorWithoutCast.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-14/TernaryOperatorConditionNotTypeBool.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-14/TernaryOperatorConditionNotTypeBool.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-2/GratuitousUseOfParentheses.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-2/GratuitousUseOfParentheses.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-2/InsufficientUseOfParentheses.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-2/InsufficientUseOfParentheses.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-21/BitwiseOperatorAppliedToSignedTypes.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-21/BitwiseOperatorAppliedToSignedTypes.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-5/ImplicitConstFloatingIntegralConversion.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-5/ImplicitConstFloatingIntegralConversion.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-5/ImplicitNonConstFloatingIntegralConversion.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-5/ImplicitNonConstFloatingIntegralConversion.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-8/ExplicitWideningConversionOfACValueExpr.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-8/ExplicitWideningConversionOfACValueExpr.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-0-9/ExplicitSignednessConversionOfCValue.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-0-9/ExplicitSignednessConversionOfCValue.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-18-1/CommaOperatorUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/commaoperatorused/CommaOperatorUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-2-2/PointerToAVirtualBaseClassCastToAPointer.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-2-2/PointerToAVirtualBaseClassCastToAPointer.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-2-8/IntegerOrPointerToVoidConvertedToPointerType.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-2-8/IntegerOrPointerToVoidConvertedToPointerType.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-2-9/CastConvertAPointerTypeToAnIntegralType.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-2-9/CastConvertAPointerTypeToAnIntegralType.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-3-3/UnaryOperatorOverloaded.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/addressofoperatoroverloaded/AddressOfOperatorOverloaded.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M5-8-1/RightBitShiftOperandIsNegativeOrTooWide.qlref: -------------------------------------------------------------------------------- 1 | rules/M5-8-1/RightBitShiftOperandIsNegativeOrTooWide.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-2-1/AssignmentInSubExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-2-1/AssignmentInSubExpression.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-2-2/FloatsTestedForEquality.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-2-2/FloatsTestedForEquality.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-2-3/NullOnSharedLine.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-2-3/NullOnSharedLine.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-3-1/LoopCompoundCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/loopcompoundcondition/LoopCompoundCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-3-1/SwitchCompoundCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/switchcompoundcondition/SwitchCompoundCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-1/IfCompoundCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-4-1/IfCompoundCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-2/IfElseTerminationCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/ifelseterminationconstruct/IfElseTerminationConstruct.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-3/SwitchStatementNotWellFormed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/switchnotwellformed/SwitchNotWellFormed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-4/NestedCaseInSwitch.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/nestedlabelinswitch/NestedLabelInSwitch.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-5/NonEmptySwitchClauseDoesNotTerminate.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-4-5/NonEmptySwitchClauseDoesNotTerminate.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-6/MissingDefaultInSwitch.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-4-6/MissingDefaultInSwitch.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-6/SwitchFinalClauseNotDefault.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-4-6/SwitchFinalClauseNotDefault.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-4-7/BooleanInSwitchCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-4-7/BooleanInSwitchCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-2/NotEqualsInLoopCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-2/NotEqualsInLoopCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-3/LoopCounterModifiedWithinCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-3/LoopCounterModifiedWithinCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-3/LoopCounterModifiedWithinStatement.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-3/LoopCounterModifiedWithinStatement.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-4/IrregularLoopCounterModification.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-4/IrregularLoopCounterModification.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-5/LoopControlVariableModifiedInLoopCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-5/LoopControlVariableModifiedInLoopCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-5/LoopControlVariableModifiedInLoopExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-5/LoopControlVariableModifiedInLoopExpression.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-5-6/NonBooleanLoopControlVariable.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-5-6/NonBooleanLoopControlVariable.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-6-1/GotoBlockCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-6-1/GotoBlockCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-6-2/GotoStatementJumpCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/gotostatementcondition/GotoStatementCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M6-6-3/ContinueInForLoopCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M6-6-3/ContinueInForLoopCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-1-2/PointerOrReferenceParameterToConst.qlref: -------------------------------------------------------------------------------- 1 | rules/M7-1-2/PointerOrReferenceParameterToConst.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-3/UnnamedNamespacesInHeaderFile.qlref: -------------------------------------------------------------------------------- 1 | rules/M7-3-3/UnnamedNamespacesInHeaderFile.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-3/test.cpp: -------------------------------------------------------------------------------- 1 | #include "test.h" 2 | #include "test.hpp" 3 | 4 | namespace // COMPLIANT 5 | {} -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-3/test.h: -------------------------------------------------------------------------------- 1 | namespace // NON_COMPLIANT 2 | { 3 | } 4 | 5 | namespace n1 // COMPLIANT 6 | { 7 | } -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-3/test.hpp: -------------------------------------------------------------------------------- 1 | namespace // NON_COMPLIANT 2 | { 3 | } 4 | 5 | namespace n1 // COMPLIANT 6 | { 7 | } -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-4/UsingDirectivesUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:6:3:6:21 | using namespace std | Use of 'using' directive. | 2 | -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-4/UsingDirectivesUsed.qlref: -------------------------------------------------------------------------------- 1 | rules/M7-3-4/UsingDirectivesUsed.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-6/UsingDeclarationsUsedInHeaderFiles.qlref: -------------------------------------------------------------------------------- 1 | rules/M7-3-6/UsingDeclarationsUsedInHeaderFiles.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-3-6/test.cpp: -------------------------------------------------------------------------------- 1 | #include "test.h" 2 | 3 | int test_friends() { return 0; } -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-4-2/AssmemblerInstructionsCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M7-4-2/AssmemblerInstructionsCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M7-4-3/AssemblyLanguageCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M7-4-3/AssemblyLanguageCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M8-0-1/MultipleLocalDeclarators.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/multiplelocaldeclarators/MultipleLocalDeclarators.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M8-4-4/FunctionIdentifierCondition.qlref: -------------------------------------------------------------------------------- 1 | rules/M8-4-4/FunctionIdentifierCondition.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M8-5-2/MissingExplicitInitializers.qlref: -------------------------------------------------------------------------------- 1 | rules/M8-5-2/MissingExplicitInitializers.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M8-5-2/NestedZeroValueInitialization.qlref: -------------------------------------------------------------------------------- 1 | rules/M8-5-2/NestedZeroValueInitialization.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M9-3-1/ConstMemberFunctionReturnsNonConstPointer.qlref: -------------------------------------------------------------------------------- 1 | rules/M9-3-1/ConstMemberFunctionReturnsNonConstPointer.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M9-3-3/MemberFunctionConstIfPossible.qlref: -------------------------------------------------------------------------------- 1 | rules/M9-3-3/MemberFunctionConstIfPossible.ql -------------------------------------------------------------------------------- /cpp/autosar/test/rules/M9-3-3/MemberFunctionStaticIfPossible.qlref: -------------------------------------------------------------------------------- 1 | rules/M9-3-3/MemberFunctionStaticIfPossible.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/CON54-CPP/WrapFunctionsThatCanSpuriouslyWakeUpInLoop.qlref: -------------------------------------------------------------------------------- 1 | rules/CON54-CPP/WrapFunctionsThatCanSpuriouslyWakeUpInLoop.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/CON56-CPP/LockedALockedNonRecursiveMutexAudit.qlref: -------------------------------------------------------------------------------- 1 | rules/CON56-CPP/LockedALockedNonRecursiveMutexAudit.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/CTR53-CPP/UseValidIteratorRanges.qlref: -------------------------------------------------------------------------------- 1 | rules/CTR53-CPP/UseValidIteratorRanges.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/CTR54-CPP/DoNotSubtractIteratorsForDifferentContainers.qlref: -------------------------------------------------------------------------------- 1 | rules/CTR54-CPP/DoNotSubtractIteratorsForDifferentContainers.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/CTR55-CPP/DoNotUseAnAdditiveOperatorOnAnIterator.qlref: -------------------------------------------------------------------------------- 1 | rules/CTR55-CPP/DoNotUseAnAdditiveOperatorOnAnIterator.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL50-CPP/DoNotDefineACStyleVariadicFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL50-CPP/DoNotDefineACStyleVariadicFunction.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL50-CPP/test.cpp: -------------------------------------------------------------------------------- 1 | 2 | void format_ellipses(char *format, ...) { return; } // NON_COMPLIANT 3 | -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/EnumeratorReusesReservedName.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/EnumeratorReusesReservedName.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/FunctionReusesReservedName.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/FunctionReusesReservedName.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/ObjectReusesReservedName.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/ObjectReusesReservedName.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/RedefiningOfStandardLibraryName.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/RedefiningOfStandardLibraryName.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/ReuseOfReservedIdentifier.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/ReuseOfReservedIdentifier.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/UseOfDoubleUnderscoreReservedPrefix.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/UseOfDoubleUnderscoreReservedPrefix.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/UseOfReservedLiteralSuffixIdentifier.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/UseOfReservedLiteralSuffixIdentifier.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/UseOfSingleUnderscoreReservedPrefix.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL51-CPP/UseOfSingleUnderscoreReservedPrefix.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL51-CPP/test.h: -------------------------------------------------------------------------------- 1 | #ifndef _TEST_H 2 | #define _TEST_H 3 | #endif -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL53-CPP/LocalFunctionDeclaration.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL53-CPP/LocalFunctionDeclaration.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL54-CPP/SingularOverloadOfMemoryFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL54-CPP/SingularOverloadOfMemoryFunction.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL56-CPP/CyclesDuringStaticObjectInit.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL56-CPP/CyclesDuringStaticObjectInit.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL59-CPP/UnnamedNamespaceInHeaderFile.qlref: -------------------------------------------------------------------------------- 1 | rules/DCL59-CPP/UnnamedNamespaceInHeaderFile.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL59-CPP/test.cpp: -------------------------------------------------------------------------------- 1 | #include "test.h" -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL59-CPP/test.h: -------------------------------------------------------------------------------- 1 | namespace { // NON_COMPLIANT 2 | int l1; 3 | } -------------------------------------------------------------------------------- /cpp/cert/test/rules/DCL60-CPP/OneDefinitionRuleNotObeyed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/onedefinitionruleviolation/OneDefinitionRuleViolation.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR50-CPP/ExplicitAbruptTerminationCert.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/explicitabrupttermination/ExplicitAbruptTermination.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR51-CPP/HandleAllExceptions.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR51-CPP/HandleAllExceptions.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR54-CPP/CatchBlockShadowing.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/catchblockshadowing/CatchBlockShadowing.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR54-CPP/CatchBlockShadowingCert.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/catchblockshadowing/CatchBlockShadowing.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR55-CPP/HonorExceptionSpecifications.qlref: -------------------------------------------------------------------------------- 1 | rules/ERR55-CPP/HonorExceptionSpecifications.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR56-CPP/GuaranteeExceptionSafety.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/exceptionsafetyguarantees/ExceptionSafetyGuarantees.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/ERR59-CPP/test-diff.h: -------------------------------------------------------------------------------- 1 | int f(int x); 2 | -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP52-CPP/DoNotRelyOnSideEffectsInDeclTypeOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP52-CPP/DoNotRelyOnSideEffectsInDeclTypeOperand.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP52-CPP/DoNotRelyOnSideEffectsInDeclValExpression.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP52-CPP/DoNotRelyOnSideEffectsInDeclValExpression.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP52-CPP/DoNotRelyOnSideEffectsInNoExceptOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP52-CPP/DoNotRelyOnSideEffectsInNoExceptOperand.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP52-CPP/DoNotRelyOnSideEffectsInSizeOfOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP52-CPP/DoNotRelyOnSideEffectsInSizeOfOperand.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP52-CPP/DoNotRelyOnSideEffectsInTypeIdOperand.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP52-CPP/DoNotRelyOnSideEffectsInTypeIdOperand.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP53-CPP/DoNotReadUninitializedMemory.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/readofuninitializedmemory/ReadOfUninitializedMemory.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP56-CPP/FunctionWithMismatchedLanguageLinkage.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP56-CPP/FunctionWithMismatchedLanguageLinkage.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP57-CPP/CastOfPointerToIncompleteClass.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP57-CPP/CastOfPointerToIncompleteClass.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP58-CPP/PassNonTrivialObjectToVaStart.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP58-CPP/PassNonTrivialObjectToVaStart.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP58-CPP/PassPromotablePrimitiveTypeToVaStart.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP58-CPP/PassPromotablePrimitiveTypeToVaStart.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP58-CPP/PassReferenceTypeToVaStart.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP58-CPP/PassReferenceTypeToVaStart.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP59-CPP/OffsetUsedOnInvalidTypeOrMember.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP59-CPP/OffsetUsedOnInvalidTypeOrMember.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP60-CPP/DoNotPassANonstandardObjectAcrossBoundaries.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP60-CPP/DoNotPassANonstandardObjectAcrossBoundaries.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP62-CPP/MemcpyUsedToAccessObjectRepresentation.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP62-CPP/MemcpyUsedToAccessObjectRepresentation.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/EXP62-CPP/MemsetUsedToAccessObjectRepresentation.qlref: -------------------------------------------------------------------------------- 1 | rules/EXP62-CPP/MemsetUsedToAccessObjectRepresentation.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/FIO51-CPP/CloseFilesWhenTheyAreNoLongerNeeded.qlref: -------------------------------------------------------------------------------- 1 | rules/FIO51-CPP/CloseFilesWhenTheyAreNoLongerNeeded.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/INT50-CPP/DoNotCastToAnOutOfRangeEnumerationValue.qlref: -------------------------------------------------------------------------------- 1 | rules/INT50-CPP/DoNotCastToAnOutOfRangeEnumerationValue.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/MEM50-CPP/UseAfterFree.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/objectaccessedafterlifetime/ObjectAccessedAfterLifetime.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/MEM52-CPP/DetectAndHandleMemoryAllocationErrors.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM52-CPP/DetectAndHandleMemoryAllocationErrors.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/MEM57-CPP/UsingDefaultOperatorNewForOverAlignedTypes.qlref: -------------------------------------------------------------------------------- 1 | rules/MEM57-CPP/UsingDefaultOperatorNewForOverAlignedTypes.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/MSC51-CPP/BadlySeededRandomNumberGenerator.qlref: -------------------------------------------------------------------------------- 1 | rules/MSC51-CPP/BadlySeededRandomNumberGenerator.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/MSC54-CPP/SignalHandlerMustBeAPlainOldFunction.qlref: -------------------------------------------------------------------------------- 1 | rules/MSC54-CPP/SignalHandlerMustBeAPlainOldFunction.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/OOP51-CPP/DoNotSliceDerivedObjects.qlref: -------------------------------------------------------------------------------- 1 | rules/OOP51-CPP/DoNotSliceDerivedObjects.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/OOP54-CPP/GracefullyHandleSelfCopyAssignment.qlref: -------------------------------------------------------------------------------- 1 | rules/OOP54-CPP/GracefullyHandleSelfCopyAssignment.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/OOP56-CPP/HonorNewReplacementHandlerRequirements.qlref: -------------------------------------------------------------------------------- 1 | rules/OOP56-CPP/HonorNewReplacementHandlerRequirements.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/OOP58-CPP/CopyOperationsMustNotMutateTheSourceObject.qlref: -------------------------------------------------------------------------------- 1 | rules/OOP58-CPP/CopyOperationsMustNotMutateTheSourceObject.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/STR51-CPP/DoNotAttemptToCreateAStringFromANullPointer.qlref: -------------------------------------------------------------------------------- 1 | rules/STR51-CPP/DoNotAttemptToCreateAStringFromANullPointer.ql -------------------------------------------------------------------------------- /cpp/cert/test/rules/STR53-CPP/RangeCheckStringElementAccess.qlref: -------------------------------------------------------------------------------- 1 | rules/STR53-CPP/RangeCheckStringElementAccess.ql -------------------------------------------------------------------------------- /cpp/common/src/codingstandards/cpp/Type.qll: -------------------------------------------------------------------------------- 1 | import codingstandards.cpp.types.Type 2 | import codingstandards.cpp.types.Uses 3 | -------------------------------------------------------------------------------- /cpp/common/test/deviations/deviation_permits_basic_test/TypeLongDoubleUsed.expected: -------------------------------------------------------------------------------- 1 | | main.cpp:9:15:9:16 | d1 | Use of long double type. | 2 | -------------------------------------------------------------------------------- /cpp/common/test/deviations/deviations_basic_test/ListDeviationRecords.qlref: -------------------------------------------------------------------------------- 1 | codingstandards/cpp/deviations/ListDeviationRecords.ql -------------------------------------------------------------------------------- /cpp/common/test/deviations/deviations_report_deviated/DeviationsSuppression.qlref: -------------------------------------------------------------------------------- 1 | codingstandards/cpp/deviations/DeviationsSuppression.ql -------------------------------------------------------------------------------- /cpp/common/test/deviations/invalid_deviations/InvalidDeviationPermits.qlref: -------------------------------------------------------------------------------- 1 | codingstandards/cpp/deviations/InvalidDeviationPermits.ql -------------------------------------------------------------------------------- /cpp/common/test/deviations/invalid_deviations/InvalidDeviationRecords.qlref: -------------------------------------------------------------------------------- 1 | codingstandards/cpp/deviations/InvalidDeviationRecords.ql -------------------------------------------------------------------------------- /cpp/common/test/guideline_recategorizations/a0-1-6.cpp: -------------------------------------------------------------------------------- 1 | class A {}; // Unused type declaration -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cassert: -------------------------------------------------------------------------------- 1 | #include "assert.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cctype: -------------------------------------------------------------------------------- 1 | #include "ctype.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cerrno: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cfloat: -------------------------------------------------------------------------------- 1 | #define FLT_DIG 24 2 | #define DBL_DIG 53 -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/chrono: -------------------------------------------------------------------------------- 1 | #include "chrono.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cinttypes: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/condition_variable: -------------------------------------------------------------------------------- 1 | #include "condition_variable.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cstddef: -------------------------------------------------------------------------------- 1 | #include "stddef.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cstdlib: -------------------------------------------------------------------------------- 1 | #include "cstdlib.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/cstring: -------------------------------------------------------------------------------- 1 | #include "cstring.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/deque: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/exception: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/fstream: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/functional: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/ios: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/iosfwd: -------------------------------------------------------------------------------- 1 | #include "iosfwd.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/iostream: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/istream: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/iterator: -------------------------------------------------------------------------------- 1 | #include "iterator.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/limits: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/memory: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/mutex: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/ostream: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/random: -------------------------------------------------------------------------------- 1 | #include "random.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/sstream: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/stdexcept: -------------------------------------------------------------------------------- 1 | #include "stdexcept.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/streambuf: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/strstream: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/thread: -------------------------------------------------------------------------------- 1 | #include "thread.h" -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/tuple: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/type_traits: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/typeinfo: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/utility: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/includes/standard-library/vector: -------------------------------------------------------------------------------- 1 | #include -------------------------------------------------------------------------------- /cpp/common/test/library/codingstandards/cpp/mainlikefunctions/typedefint/MainLikeFunction.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:5:9:5:12 | main | 2 | -------------------------------------------------------------------------------- /cpp/common/test/rules/commaoperatorused/CommaOperatorUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:7:29:7:36 | ... , ... | Use of banned ',' expression. | 2 | -------------------------------------------------------------------------------- /cpp/common/test/rules/gotostatementshouldnotbeused/GotoStatementShouldNotBeUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:6:3:6:14 | goto ... | Use of goto. | 2 | -------------------------------------------------------------------------------- /cpp/common/test/rules/includeguardsnotused/headers/test1.hpp: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_ONE 2 | #define HEADER_ONE // COMPLIANT 3 | int g; 4 | #endif -------------------------------------------------------------------------------- /cpp/common/test/rules/includeguardsnotused/headers/test2.hpp: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_TWO 2 | #define HEADER_TWO // COMPLIANT 3 | int g1; 4 | #endif -------------------------------------------------------------------------------- /cpp/common/test/rules/includeguardsnotused/headers/test3.hpp: -------------------------------------------------------------------------------- 1 | // NON_COMPLIANT 2 | int g2; -------------------------------------------------------------------------------- /cpp/common/test/rules/includeguardsnotused/headers/test4.hpp: -------------------------------------------------------------------------------- 1 | // NON_COMPLIANT 2 | #ifndef HEADER_FOUR 3 | int g3; 4 | #endif -------------------------------------------------------------------------------- /cpp/common/test/rules/macrooffsetofused/MacroOffsetofUsed.expected: -------------------------------------------------------------------------------- 1 | | test.cpp:9:32:9:51 | offsetof(t,d) | Use of banned macro offsetof. | 2 | -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-10-0-1/UseSingleLocalDeclarators.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/multiplelocaldeclarators/MultipleLocalDeclarators.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-10-4-1/AsmDeclarationShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/asmdeclarationused/AsmDeclarationUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-19-0-2/FunctionLikeMacrosDefined.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/functionlikemacrosdefined/FunctionLikeMacrosDefined.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-19-3-1/AndPreprocessorOperatorsShouldNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/hashoperatorsused/HashOperatorsUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-21-10-3/CsignalFacilitiesUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/csignalfacilitiesused/CsignalFacilitiesUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-21-10-3/CsignalTypesShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/csignaltypesused/CsignalTypesUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-21-10-3/CsignalTypesUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/csignaltypesused/CsignalTypesUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-21-2-1/AtofAtoiAtolAndAtollUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/atofatoiatolandatollused/AtofAtoiAtolAndAtollUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-21-2-4/MacroOffsetofShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/macrooffsetofused/MacroOffsetofUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-30-0-1/CstdioFunctionsShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/cstdiofunctionsused/CstdioFunctionsUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-30-0-1/CstdioMacrosShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/cstdiomacrosused/CstdioMacrosUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-30-0-1/CstdioTypesShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/cstdiotypesused/CstdioTypesUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-5-13-1/BackslashCharacterMisuse.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/backslashcharactermisuse/BackslashCharacterMisuse.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-5-13-3/OctalConstantsUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/useofnonzerooctalliteral/UseOfNonZeroOctalLiteral.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-6-0-4/NonGlobalFunctionMain.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/nonglobalfunctionmain/NonGlobalFunctionMain.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-6-2-1/OneDefinitionRuleViolated.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/onedefinitionruleviolation/OneDefinitionRuleViolation.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-6-4-1/VariableDeclaredInInnerScopeHidesOuterScope.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/identifierhidden/IdentifierHidden.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-8-19-1/CommaOperatorShouldNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/commaoperatorused/CommaOperatorUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-8-2-5/ReinterpretCastShallNotBeUsed.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/reinterpretcastused/ReinterpretCastUsed.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-9-3-1/LoopBodyCompoundCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/loopcompoundcondition/LoopCompoundCondition.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-9-3-1/SwitchBodyCompoundCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/switchcompoundcondition/SwitchCompoundCondition.ql -------------------------------------------------------------------------------- /cpp/misra/test/rules/RULE-9-4-1/IfElseIfEndCondition.testref: -------------------------------------------------------------------------------- 1 | cpp/common/test/rules/ifelseterminationconstruct/IfElseTerminationConstruct.ql -------------------------------------------------------------------------------- /scripts/.gitignore: -------------------------------------------------------------------------------- 1 | /.venv/ 2 | -------------------------------------------------------------------------------- /scripts/PSCodingStandards/Get-RepositoryRoot.ps1: -------------------------------------------------------------------------------- 1 | function Get-RepositoryRoot { 2 | return git rev-parse --show-toplevel 3 | } 4 | -------------------------------------------------------------------------------- /scripts/configuration/requirements.txt: -------------------------------------------------------------------------------- 1 | pyyaml==5.4 -------------------------------------------------------------------------------- /scripts/guideline_recategorization/test-data/invalid-coding-standards-config.yml: -------------------------------------------------------------------------------- 1 | guideline-recategorizations: 2 | - rule-id: "A0-1-1" 3 | -------------------------------------------------------------------------------- /scripts/guideline_recategorization/test-data/invalid-json.json: -------------------------------------------------------------------------------- 1 | { 2 | "foo": "bar", 3 | } -------------------------------------------------------------------------------- /scripts/guideline_recategorization/test-data/invalid-yaml.yml: -------------------------------------------------------------------------------- 1 | key: 2 | key1: "value" 3 | key2: "value" -------------------------------------------------------------------------------- /scripts/release/requirements.txt: -------------------------------------------------------------------------------- 1 | semantic-version==2.10.0 2 | PyGithub==1.59.1 3 | PyYAML==6.0.1 4 | GitPython==3.1.41 5 | pytest==7.4.3 6 | -------------------------------------------------------------------------------- /scripts/reports/requirements.txt: -------------------------------------------------------------------------------- 1 | pyyaml==5.4 2 | pytest==7.2.0 --------------------------------------------------------------------------------