| 4843 | } |
| 4844 | |
| 4845 | void CheckOther::getErrorMessages(ErrorLogger& errorLogger, const Settings &settings) const |
| 4846 | { |
| 4847 | CheckOtherImpl c(nullptr, settings, errorLogger); |
| 4848 | |
| 4849 | // error |
| 4850 | c.zerodivError(nullptr, nullptr); |
| 4851 | c.misusedScopeObjectError(nullptr, "varname"); |
| 4852 | c.invalidPointerCastError(nullptr, "float *", "double *", false, false); |
| 4853 | c.negativeBitwiseShiftError(nullptr, 1); |
| 4854 | c.negativeBitwiseShiftError(nullptr, 2); |
| 4855 | c.raceAfterInterlockedDecrementError(nullptr); |
| 4856 | c.invalidFreeError(nullptr, "malloc", false); |
| 4857 | c.overlappingWriteUnion(nullptr); |
| 4858 | c.overlappingWriteFunction(nullptr, "funcname"); |
| 4859 | |
| 4860 | //performance |
| 4861 | c.redundantCopyError(nullptr, "varname"); |
| 4862 | c.redundantCopyError(nullptr, nullptr, "var"); |
| 4863 | |
| 4864 | // style/warning |
| 4865 | c.checkComparisonFunctionIsAlwaysTrueOrFalseError(nullptr, "isless","varName",false); |
| 4866 | c.checkCastIntToCharAndBackError(nullptr, "func_name"); |
| 4867 | c.cstyleCastError(nullptr); |
| 4868 | c.dangerousTypeCastError(nullptr, true); |
| 4869 | c.intToPointerCastError(nullptr, "decimal"); |
| 4870 | c.suspiciousFloatingPointCastError(nullptr); |
| 4871 | c.passedByValueError(nullptr, false); |
| 4872 | // TODO: iterateByValue |
| 4873 | // TODO: passedByValueCallback |
| 4874 | c.constVariableError(nullptr, nullptr); |
| 4875 | c.constStatementError(nullptr, "type", false); |
| 4876 | c.signedCharArrayIndexError(nullptr); |
| 4877 | c.unknownSignCharArrayIndexError(nullptr); |
| 4878 | c.charBitOpError(nullptr); |
| 4879 | c.variableScopeError(nullptr, "varname"); |
| 4880 | c.redundantAssignmentInSwitchError(nullptr, nullptr, "var"); |
| 4881 | c.suspiciousCaseInSwitchError(nullptr, "||"); |
| 4882 | c.selfAssignmentError(nullptr, "varname"); |
| 4883 | c.clarifyCalculationError(nullptr, "+"); |
| 4884 | c.clarifyStatementError(nullptr); |
| 4885 | c.duplicateBranchError(nullptr, nullptr, ErrorPath{}); |
| 4886 | c.duplicateAssignExpressionError(nullptr, nullptr, true); |
| 4887 | c.oppositeExpressionError(nullptr, ErrorPath{}); |
| 4888 | c.duplicateExpressionError(nullptr, nullptr, nullptr, ErrorPath{}); |
| 4889 | c.duplicateValueTernaryError(nullptr); |
| 4890 | c.duplicateExpressionTernaryError(nullptr, ErrorPath{}); |
| 4891 | c.duplicateBreakError(nullptr, false); |
| 4892 | c.unreachableCodeError(nullptr, nullptr, false); |
| 4893 | c.unsignedLessThanZeroError(nullptr, nullptr, "varname"); |
| 4894 | c.unsignedPositiveError(nullptr, nullptr, "varname"); |
| 4895 | c.pointerLessThanZeroError(nullptr, nullptr); |
| 4896 | c.pointerPositiveError(nullptr, nullptr); |
| 4897 | c.suspiciousSemicolonError(nullptr); |
| 4898 | c.incompleteArrayFillError(nullptr, "buffer", "memset", false); |
| 4899 | c.varFuncNullUBError(nullptr); |
| 4900 | c.nanInArithmeticExpressionError(nullptr); |
| 4901 | c.commaSeparatedReturnError(nullptr); |
| 4902 | c.redundantPointerOpError(nullptr, "varname", false, /*addressOfDeref*/ true); |
nothing calls this directly
no test coverage detected