2026-05-03 05:13 ftp://ftp.de.debian.org/debian/pool/main/libm/libmatroska/libmatroska_1.7.1.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.8.0-1047-aws-aarch64-with-glibc2.35 python: 3.10.12 client-version: 1.4.0 compiler: g++ (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0 cppcheck: head 2.20.0 head-info: e5c4a73 (2026-05-01 11:10:43 +0200) count: 92 90 elapsed-time: 0.7 0.6 head-timing-info: old-timing-info: head results: libmatroska-1.7.1/src/KaxAttached.cpp:46:15: error: There is an unknown macro here somewhere. Configuration is required. If EBML_CLASS_SEMCONTEXT is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxAttachments.cpp:45:15: error: There is an unknown macro here somewhere. Configuration is required. If EBML_CLASS_SEMCONTEXT is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxBlock.cpp:103:15: error: There is an unknown macro here somewhere. Configuration is required. If EBML_CLASS_SEMCONTEXT is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxBlockData.cpp:47:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RefdBlock [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxBlockData.cpp:53:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable bTimecodeSet [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxBlockData.cpp:69:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable bOurBlob [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxBlockData.cpp:76:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable bTimecodeSet [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxBlockData.cpp:88:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RefdBlock [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxBlockData.cpp:99:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BLOCK_BLOB_NO_SIMPLE [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCluster.cpp:43:15: error: There is an unknown macro here somewhere. Configuration is required. If EBML_CLASS_SEMCONTEXT is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxContexts.cpp:47:1: error: There is an unknown macro here somewhere. Configuration is required. If DEFINE_START_SEMANTIC is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxCues.cpp:70:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable myTempReferences [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCues.cpp:83:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable myTempReferences [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCues.cpp:123:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCuePoint [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:72:88: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCodecState [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:123:99: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCodecState [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:158:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCuePoint [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:198:71: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCueTime [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:213:81: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCueTrackPositions [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:228:81: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCueClusterPosition [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxCuesData.cpp:237:73: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxCueTrack [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxSeekHead.cpp:69:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxSeek [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxSeekHead.cpp:101:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxSeek [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxSeekHead.cpp:114:68: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxSeekPosition [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxSeekHead.cpp:122:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxSeekID [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxSeekHead.cpp:131:62: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KaxSeekID [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/src/KaxSeekHead.cpp:61:40: style: C-style reference casting [cstyleCast] libmatroska-1.7.1/src/KaxSeekHead.cpp:71:17: style: The scope of the variable 'aId' can be reduced. [variableScope] libmatroska-1.7.1/src/KaxSeekHead.cpp:90:12: style: The scope of the variable 'tmp' can be reduced. [variableScope] libmatroska-1.7.1/src/KaxSegment.cpp:49:15: error: There is an unknown macro here somewhere. Configuration is required. If EBML_CLASS_SEMCONTEXT is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxSemantic.cpp:45:1: error: There is an unknown macro here somewhere. Configuration is required. If DEFINE_START_SEMANTIC is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/src/KaxTracks.cpp:44:15: error: There is an unknown macro here somewhere. Configuration is required. If EBML_CLASS_SEMCONTEXT is a macro then please configure it. [unknownMacro] libmatroska-1.7.1/test/ebml/test0.cpp:91:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MODE_CREATE [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/test/ebml/test0.cpp:195:23: style: Condition 'ElementLevel0!=NULL' is always true [knownConditionTrueFalse] libmatroska-1.7.1/test/ebml/test0.cpp:264:35: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:267:34: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:270:50: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:271:37: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:274:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:277:52: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:280:43: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test0.cpp:280:85: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test00.cpp:69:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MODE_CREATE [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/test/ebml/test00.cpp:158:23: style: Condition 'ElementLevel0!=NULL' is always true [knownConditionTrueFalse] libmatroska-1.7.1/test/ebml/test00.cpp:237:23: style: Condition 'ElementLevel0!=NULL' is always true [knownConditionTrueFalse] libmatroska-1.7.1/test/ebml/test00.cpp:108:52: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test00.cpp:123:47: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/ebml/test00.cpp:140:17: style: The scope of the variable 'ElementLevel1' can be reduced. [variableScope] libmatroska-1.7.1/test/ebml/test00.cpp:141:17: style: The scope of the variable 'ElementLevel2' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test6.cpp:73:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/test/mux/test6.cpp:250:74: error: Null pointer dereference: MyLastBlockTrk2 [nullPointer] libmatroska-1.7.1/test/mux/test6.cpp:223:76: note: Assignment 'MyLastBlockTrk2=NULL', assigned value is 0 libmatroska-1.7.1/test/mux/test6.cpp:250:74: note: Null pointer dereference libmatroska-1.7.1/test/mux/test6.cpp:253:31: warning:inconclusive: Either the condition 'MyNewBlock!=NULL' is redundant or there is possible null pointer dereference: MyNewBlock. [nullPointerRedundantCheck] libmatroska-1.7.1/test/mux/test6.cpp:261:20: note: Assuming that condition 'MyNewBlock!=NULL' is not redundant libmatroska-1.7.1/test/mux/test6.cpp:253:31: note: Null pointer dereference libmatroska-1.7.1/test/mux/test6.cpp:294:31: warning:inconclusive: Either the condition 'MyNewBlock!=NULL' is redundant or there is possible null pointer dereference: MyNewBlock. [nullPointerRedundantCheck] libmatroska-1.7.1/test/mux/test6.cpp:226:20: note: Assuming that condition 'MyNewBlock!=NULL' is not redundant libmatroska-1.7.1/test/mux/test6.cpp:294:31: note: Null pointer dereference libmatroska-1.7.1/test/mux/test6.cpp:115:7: style: C-style pointer casting [cstyleCast] libmatroska-1.7.1/test/mux/test6.cpp:116:7: style: C-style pointer casting [cstyleCast] libmatroska-1.7.1/test/mux/test6.cpp:148:63: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:152:58: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:155:58: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:156:59: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:224:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:228:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:232:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:240:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:249:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:257:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:262:42: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test6.cpp:290:40: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/mux/test8.cpp:68:65: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MODE_READ [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/test/mux/test8.cpp:96:23: style: Condition 'ElementLevel0!=NULL' is always true [knownConditionTrueFalse] libmatroska-1.7.1/test/mux/test8.cpp:541:19: warning: printf format string requires 0 parameters but 1 is given. [wrongPrintfScanfArgNum] libmatroska-1.7.1/test/mux/test8.cpp:73:8: style: The scope of the variable 'bAllowDummy' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:78:17: style: The scope of the variable 'ElementLevel1' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:100:7: style: The scope of the variable 'UpperElementLevel' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:101:16: style: The scope of the variable 'Segment' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:102:13: style: The scope of the variable 'SegmentInfo' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:103:19: style: The scope of the variable 'TrackAudio' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:104:19: style: The scope of the variable 'TrackVideo' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:105:15: style: The scope of the variable 'SegmentCluster' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:106:12: style: The scope of the variable 'CuesEntry' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:107:16: style: The scope of the variable 'MetaSeek' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:108:16: style: The scope of the variable 'Chapters' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:109:12: style: The scope of the variable 'AllTags' can be reduced. [variableScope] libmatroska-1.7.1/test/mux/test8.cpp:101:16: style: Variable 'Segment' can be declared as pointer to const [constVariablePointer] libmatroska-1.7.1/test/mux/test8.cpp:102:13: style: Variable 'SegmentInfo' can be declared as pointer to const [constVariablePointer] libmatroska-1.7.1/test/tags/test9.cpp:73:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MODE_CREATE [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/test/tags/test9.cpp:346:21: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] libmatroska-1.7.1/test/utf8/test5.cpp:64:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MODE_CREATE [valueFlowBailoutIncompleteVar] libmatroska-1.7.1/test/utf8/test5.cpp:61:5: warning: %lc in format string (no. 1) requires 'unsigned long' but the argument type is 'char'. [invalidPrintfArgType_uint] libmatroska-1.7.1/test/utf8/test5.cpp:84:23: style: C-style pointer casting [cstyleCast] libmatroska-1.7.1/test/utf8/test5.cpp:80:11: style: Redundant initialization for 'bType'. The initialized value is overwritten before it is read. [redundantInitialization] libmatroska-1.7.1/test/utf8/test5.cpp:78:32: note: bType is initialized libmatroska-1.7.1/test/utf8/test5.cpp:80:11: note: bType is overwritten libmatroska-1.7.1/test/utf8/test5.cpp:82:11: style: Variable 'bType' is reassigned a value before the old one has been used. [redundantAssignment] libmatroska-1.7.1/test/utf8/test5.cpp:80:11: note: bType is assigned libmatroska-1.7.1/test/utf8/test5.cpp:82:11: note: bType is overwritten libmatroska-1.7.1/test/utf8/test5.cpp:84:21: style: Variable 'tst' is assigned a value that is never used. [unreadVariable] diff: head libmatroska-1.7.1/test/mux/test8.cpp:101:16: style: Variable 'Segment' can be declared as pointer to const [constVariablePointer] head libmatroska-1.7.1/test/mux/test8.cpp:102:13: style: Variable 'SegmentInfo' can be declared as pointer to const [constVariablePointer] DONE