Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzzer details

Fuzzer: oss-fuzz-client

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 8707 72.4%
gold [1:9] 121 1.00%
yellow [10:29] 42 0.34%
greenyellow [30:49] 31 0.25%
lawngreen 50+ 3113 25.9%
All colors 12014 100

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
12960 13284 43 :

['void visitAstNodes (Token const*, Executor::executeImpl(Token const*)::{lambda(Token const*)#2} const&)', 'std::__1::vector >::begin()', 'std::__1::__wrap_iter ::operator*() const', 'std::__1::vector >::size() const', 'bool std::__1::operator!= (std::__1::__wrap_iter const&, std::__1::__wrap_iter const&)', 'ProgramMemory::~ProgramMemory()', 'std::__1::unordered_map , std::__1::equal_to , std::__1::allocator > >::unordered_map()', 'std::__1::function > const&)>::operator()(std::__1::vector > const&) const', 'std::__1::vector >::empty() const', 'evaluateLibraryFunction(std::__1::unordered_map , std::__1::equal_to , std::__1::allocator > > const&, std::__1::basic_string , std::__1::allocator > const&, Settings const*)', 'getArguments(Token const*)', 'ValueFlow::Value::Value(ValueFlow::Value const&)', 'ValueFlow::Value::isUninitValue() const', 'Executor::execute(Scope const*)', 'std::__1::__wrap_iter ::operator++()', 'Function::isImplicitlyVirtual(bool) const', 'bool std::__1::operator== , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'Token::function() const', 'ValueFlow::Value::operator=(ValueFlow::Value const&)', 'Library::returnValue(Token const*) const', 'std::__1::basic_string , std::__1::allocator >::empty() const', 'std::__1::vector >::vector(unsigned long)', 'std::__1::vector >::cend() const', 'Variable::nameToken() const', 'std::__1::vector >::~vector()', 'std::__1::vector >::front()', 'std::__1::function > const&)>::~function()', 'Token::str() const', 'Token::astOperand2() const', 'std::__1::vector >::operator[](unsigned long)', 'Function::getArgumentVar(int) const', 'Token::previous() const', 'getBuiltinLibraryFunction(std::__1::basic_string , std::__1::allocator > const&)', 'std::__1::unordered_map , std::__1::equal_to , std::__1::allocator > >::operator[](int const&)', 'std::__1::unordered_map , std::__1::equal_to , std::__1::allocator > >::~unordered_map()', 'std::__1::vector >::cbegin() const', 'ProgramMemory::ProgramMemory()', 'std::__1::vector >::size() const', 'std::__1::vector >::~vector()', 'std::__1::__wrap_iter std::__1::transform , std::__1::__wrap_iter , Executor::executeImpl(Token const*)::{lambda(Token const*)#1}>(std::__1::__wrap_iter , std::__1::__wrap_iter , Executor::executeImpl(Token const*)::{lambda(Token const*)#1}, Executor::executeImpl(Token const*)::{lambda(Token const*)#1})', 'std::__1::function > const&)>::operator bool() const', 'std::__1::vector >::end()', 'ProgramMemory::setValue(Token const*, ValueFlow::Value const&)']

12972 13296 Executor::executeImpl(Tokenconst*) call site: 00000 /src/cppcheck/oss-fuzz/../lib/programmemory.cpp:1394
12744 19995 98 :

['Token::previous()', 'std::__1::map , std::__1::allocator > >::end()', 'std::__1::unordered_map , std::__1::allocator >, int, std::__1::hash , std::__1::allocator > >, std::__1::equal_to , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > const, int> > >::~unordered_map()', 'std::__1::list >::end()', 'std::__1::__list_imp >::~__list_imp()', 'TemplateSimplifier::simplifyTemplateAliases()', 'std::__1::operator!=(std::__1::__map_iterator , std::__1::__tree_node , void*>*, long> > const&, std::__1::__map_iterator , std::__1::__tree_node , void*>*, long> > const&)', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator >&&, char const*)', 'std::__1::list >::list(unsigned long, Token const* const&)', 'std::__1::list >::push_back(Token const*&&)', 'std::__1::list >::clear()', 'std::__1::set , std::__1::allocator >, std::__1::less , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > > >::set()', 'TokenList::front()', 'TemplateSimplifier::getPartialSpecializations()', 'Token::printOut(char const*, std::__1::vector , std::__1::allocator >, std::__1::allocator , std::__1::allocator > > > const&) const', 'Token::next()', 'std::__1::basic_string , std::__1::allocator >::basic_string (char const*)', 'std::__1::basic_string , std::__1::allocator >::empty() const', 'std::__1::reverse_iterator >::operator*() const', 'std::__1::operator!=(std::__1::__list_const_iterator const&, std::__1::__list_const_iterator const&)', 'std::__1::__list_const_iterator ::operator->() const', 'std::__1::basic_string , std::__1::allocator >::operator+=(std::__1::basic_string , std::__1::allocator > const&)', 'TemplateSimplifier::TokenAndName::fullName() const', 'ErrorMessage::~ErrorMessage()', 'std::__1::list >::crend() const', 'std::__1::list >::list()', 'void std::__1::list >::sort (TemplateSimplifier::simplifyTemplates(long)::$_6)', 'std::__1::__wrap_iter ::operator*() const', 'std::__1::set , std::__1::allocator >, std::__1::less , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > > >::~set()', 'Token::link()', 'std::__1::map , std::__1::allocator > >::clear()', 'std::__1::vector >::begin()', 'std::__1::list >::cend() const', 'Token::eraseTokens(Token*, Token const*)', 'TemplateSimplifier::TokenAndName::isFriend() const', 'std::__1::list >::push_back(TemplateSimplifier::TokenAndName const&)', 'std::__1::basic_string , std::__1::allocator >::basic_string(std::__1::basic_string , std::__1::allocator > const&)', 'std::__1::map , std::__1::allocator > >::find(Token* const&)', 'TokenList::getFiles() const', 'std::__1::basic_string , std::__1::allocator >::clear()', 'TemplateSimplifier::TokenAndName::nameToken() const', 'std::__1::__list_iterator std::__1::find_if , (anonymous namespace)::FindToken>(std::__1::__list_iterator , std::__1::__list_iterator , (anonymous namespace)::FindToken)', 'TemplateSimplifier::TokenAndName::isSpecialization() const', 'std::__1::reverse_iterator >::operator++()', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'TemplateSimplifier::TokenAndName::dump(std::__1::vector , std::__1::allocator >, std::__1::allocator , std::__1::allocator > > > const&) const', 'Tokenizer::simplifyUsing()', 'std::__1::basic_string , std::__1::allocator >::c_str() const', 'std::__1::operator!=(std::__1::__list_iterator const&, std::__1::__list_iterator const&)', 'std::__1::unordered_map , std::__1::equal_to , std::__1::allocator > >::clear()', 'bool std::__1::operator!= (std::__1::__wrap_iter const&, std::__1::__wrap_iter const&)', 'std::__1::reverse_iterator >::operator->() const', 'std::__1::__list_iterator ::operator->() const', 'TemplateSimplifier::fixForwardDeclaredDefaultArgumentValues()', 'TemplateSimplifier::TokenAndName::token() const', 'TemplateSimplifier::useDefaultArgumentValues()', 'Token::deleteNext(int)', 'std::__1::to_string(unsigned int)', 'ErrorMessage::ErrorMessage(std::__1::list > const&, TokenList const*, Severity::SeverityType, std::__1::basic_string , std::__1::allocator >, std::__1::basic_string , std::__1::allocator > const&, Certainty)', 'Token::Match(Token const*, char const*, int)', 'std::__1::__list_iterator ::operator++()', 'std::__1::unordered_map , std::__1::allocator >, int, std::__1::hash , std::__1::allocator > >, std::__1::equal_to , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > const, int> > >::unordered_map()', 'std::__1::list >::erase(std::__1::__list_const_iterator )', 'bool std::__1::operator!= , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'bool std::__1::operator== , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'TemplateSimplifier::getTemplateDeclarations()', 'std::__1::__list_iterator ::operator*() const', 'TemplateSimplifier::TokenAndName::isAlias() const', 'Token::createMutualLinks(Token*, Token*)', 'Token::tokAt(int)', 'std::__1::basic_string , std::__1::allocator >::operator=(std::__1::basic_string , std::__1::allocator >&&)', 'std::__1::__list_const_iterator ::operator++()', 'std::__1::list >::cbegin() const', 'TemplateSimplifier::getSpecializations()', 'Token::isName() const', 'std::__1::vector >::end()', 'TemplateSimplifier::printOut(std::__1::basic_string , std::__1::allocator > const&) const', 'TemplateSimplifier::eraseTokens(Token*, Token const*)', 'TemplateSimplifier::removeTemplate(Token*, std::__1::map , std::__1::allocator > >*)', 'std::__1::__list_const_iterator ::__list_const_iterator(std::__1::__list_iterator const&)', 'std::__1::list >::crbegin() const', 'std::__1::pair , std::__1::allocator >, int>, void*>*> >, bool> std::__1::unordered_map , std::__1::allocator >, int, std::__1::hash , std::__1::allocator > >, std::__1::equal_to , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > const, int> > >::emplace , std::__1::allocator > const&, int>(std::__1::basic_string , std::__1::allocator > const&, int&&)', 'Token::insertToken(std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&, bool)', 'Token::str() const', 'std::__1::__wrap_iter ::operator++()', 'TemplateSimplifier::simplifyTemplateInstantiations(TemplateSimplifier::TokenAndName const&, std::__1::list > const&, long, std::__1::set , std::__1::allocator >, std::__1::less , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > > >&)', 'Token::deleteThis()', 'bool std::__1::operator!= , std::__1::__list_const_iterator >(std::__1::reverse_iterator > const&, std::__1::reverse_iterator > const&)', 'std::__1::list >::begin()', 'TemplateSimplifier::getTemplateInstantiations()', 'std::__1::vector >::clear()', 'std::__1::__list_iterator std::__1::find_if , TemplateSimplifier::simplifyTemplates(long)::$_7>(std::__1::__list_iterator , std::__1::__list_iterator , TemplateSimplifier::simplifyTemplates(long)::$_7)', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'bool std::__1::operator== >(std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&)', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator >&&)', 'std::__1::__map_iterator , std::__1::__tree_node , void*>*, long> >::operator->() const', 'std::__1::list >::empty() const', '(anonymous namespace)::FindToken::FindToken(Token const*)']

12744 19995 TemplateSimplifier::simplifyTemplates(long) call site: 00000 /src/cppcheck/oss-fuzz/../lib/templatesimplifier.cpp:3810
12726 13701 16 :

['std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&)', 'Tokenizer::syntaxErrorC(Token const*, std::__1::basic_string , std::__1::allocator > const&) const', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator >&&, char const*)', 'Token::str() const', 'Token::Match(Token const*, char const*, int)', 'bool Token::simpleMatch<4ul>(Token const*, char const (&) [4ul])', 'Token::previous() const', 'Token::strAt(int) const', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator >&&, std::__1::basic_string , std::__1::allocator > const&)', 'Token::next() const', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'std::__1::basic_string , std::__1::allocator >::basic_string (char const*)', 'Tokenizer::tokens() const', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'Token::tokAt(int) const', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char)']

12726 13701 Tokenizer::validateC()const call site: 00000 /src/cppcheck/oss-fuzz/../lib/tokenize.cpp:8040
3622 5527 49 :

['Token::previous()', 'bool Token::simpleMatch<9ul>(Token const*, char const (&) [9ul])', 'Variable::typeStartToken() const', 'Token::isUtf8() const', 'ValueFlow::getSizeOf(ValueType const&, Settings const*)', 'Token::isNumber() const', 'Token::isCMultiChar() const', 'Token::getStrSize(Token const*, Settings const*)', 'Token::astParent()', '__cxa_begin_catch', 'Token::isCChar() const', 'Token::linkAt(int) const', 'Variable::dimension(int) const', 'ValueFlow::Value::Value(ValueFlow::Value const&)', 'Token::next() const', 'ValueType::~ValueType()', 'Variable::dimensionKnown(int) const', 'Variable::isEnumType() const', 'bool std::__1::operator== , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'Variable::type() const', 'Variable::dimensions() const', 'Type::isEnumType() const', 'Token::tokAt(int) const', 'Token::linkAt(int)', 'Token::astOperand1() const', 'Token::isLong() const', 'bool Token::simpleMatch<11ul>(Token const*, char const (&) [11ul])', 'Token::astOperand2()', 'ValueType::isEnum() const', 'Variable::isArray() const', 'Token::isLiteral() const', 'Token::isUtf16() const', 'Variable::typeEndToken() const', 'Token::isUtf32() const', 'Token::str() const', 'std::__1::vector >::empty() const', 'Token::astOperand2() const', 'std::__1::vector >::size() const', 'Token::astParent() const', 'Token::valueType() const', 'MathLib::toULongNumber(std::__1::basic_string , std::__1::allocator > const&)', 'Token::enumerator() const', '__cxa_end_catch', 'Token::type() const', 'ValueType::parseDecl(Token const*, Settings const&)', 'Token::varId() const', 'Token::tokType() const', 'getSizeOfType(Token const*, Settings const*)', 'MathLib::isInt(std::__1::basic_string , std::__1::allocator > const&)']

3724 40688 valueFlowSetConstantValue(Token*,Settingsconst*,bool) call site: 00000 /src/cppcheck/oss-fuzz/../lib/valueflow.cpp:1169
3045 3069 7 :

['astIsPointer(Token const*)', 'ValueFlow::isLifetimeBorrowed(Token const*, Settings const*)', 'Token::typeStr(Token const*)', 'bool std::__1::operator== >(std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&)', 'std::__1::vector >::back()', 'astIsIterator(Token const*)', 'std::__1::vector >::empty() const']

14743 14897 valueFlowLifetimeFunction(Token*,TokenList&,ErrorLogger*,Settingsconst*) call site: 00000 /src/cppcheck/oss-fuzz/../lib/valueflow.cpp:4409
2536 5973 14 :

['Token::next() const', 'gettokenlistfromvalid(std::__1::basic_string , std::__1::allocator > const&, TokenList&)', 'TokenList::~TokenList()', 'TokenList::TokenList(Settings const*)', 'Token::isNumber() const', 'MathLib::toLongNumber(std::__1::basic_string , std::__1::allocator > const&)', 'bool std::__1::operator== , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'std::__1::basic_string , std::__1::allocator >::find(char, unsigned long) const', 'Library::isFloatArgValid(Token const*, int, double) const', 'Token::str() const', 'Token::Match(Token const*, char const*, int)', 'Token::previous() const', 'Token::strAt(int) const', 'TokenList::front()']

2536 5973 Library::isIntArgValid(Tokenconst*,int,longlong)const call site: 00000 /src/cppcheck/oss-fuzz/../lib/library.cpp:919
2356 7517 31 :

['bool std::__1::operator!= (std::__1::__wrap_iter const&, std::__1::__wrap_iter const&)', 'SimpleEnableGroup ::isEnabled(Severity::SeverityType) const', 'std::__1::__wrap_iter ::operator*() const', 'CheckOther::unknownEvaluationOrder(Token const*)', 'Tokenizer::isCPP() const', 'std::__1::vector >::end() const', 'isSameExpression(bool, bool, Token const*, Token const*, Library const&, bool, bool, std::__1::list , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > > > >*)', 'Token::Match(Token const*, char const*, int)', 'Token::str() const', 'Token::astOperand2() const', 'bool Token::simpleMatch<4ul>(Token const*, char const (&) [4ul])', 'Token::link() const', 'Token::strAt(int) const', 'Tokenizer::getSymbolDatabase() const', 'Token::expressionString() const', 'Token::previous() const', 'Token::astParent() const', 'Token::next() const', 'std::__1::vector >::begin() const', 'Check::logChecker(char const*)', 'bool std::__1::operator!= , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'std::__1::basic_string , std::__1::allocator >::~basic_string()', 'Token::nextArgument() const', 'bool std::__1::operator== , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'Token::tokType() const', 'void visitAstNodes (Token const*, CheckOther::checkEvaluationOrder()::$_9 const&)', 'bool Token::simpleMatch<2ul>(Token const*, char const (&) [2ul])', 'std::__1::__wrap_iter ::operator++()', 'Token::astOperand1() const', 'CheckOther::selfAssignmentError(Token const*, std::__1::basic_string , std::__1::allocator > const&)', 'Token::isAssignmentOp() const']

2356 7517 CheckOther::checkEvaluationOrder() call site: 00000 /src/cppcheck/oss-fuzz/../lib/checkother.cpp:3354
2237 2484 7 :

['Token::linkAt(int) const', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(char const*, std::__1::basic_string , std::__1::allocator > const&)', 'std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator >&&, char const*)', 'SymbolDatabase::debugMessage(Token const*, std::__1::basic_string , std::__1::allocator > const&, std::__1::basic_string , std::__1::allocator > const&) const', 'bool Token::simpleMatch<4ul>(Token const*, char const (&) [4ul])', 'Tokenizer::isC() const', 'Tokenizer::syntaxError(Token const*, std::__1::basic_string , std::__1::allocator > const&) const']

2237 3510 SymbolDatabase::isFunction(Tokenconst*,Scopeconst*,Tokenconst**,Tokenconst**,Tokenconst**)const call site: 00000 /src/cppcheck/oss-fuzz/../lib/symboldatabase.cpp:1855
2125 2125 1 :

['Tokenizer::unmatchedToken(Token const*) const']

2125 2125 SymbolDatabase::addNewFunction(Scope**,Tokenconst**) call site: 00000 /src/cppcheck/oss-fuzz/../lib/symboldatabase.cpp:3362
2123 2123 1 :

['Tokenizer::syntaxError(Token const*, std::__1::basic_string , std::__1::allocator > const&) const']

2123 2123 Tokenizer::simplifyAddBracesToCommand(Token*) call site: 00000 /src/cppcheck/oss-fuzz/../lib/tokenize.cpp:6483
2012 43132 40 :

['Token::previous()', 'Variable::scope() const', 'ValueFlow::isLifetimeBorrowed(Token const*, Settings const*)', 'Token::astOperand1()', 'std::__1::operator!=(std::__1::__list_iterator const&, std::__1::__list_iterator const&)', 'std::__1::remove_reference ::type&& std::__1::move (ValueFlow::Value&)', 'Token::astParent()', 'Token::Match(Token const*, char const*, int)', 'std::__1::list >::end()', 'valueFlowLifetimeFunction(Token*, TokenList&, ErrorLogger*, Settings const*)', 'ValueFlow::Value::~Value()', 'std::__1::list >::begin()', 'Token::variable() const', 'Token::next() const', 'isScopeBracket(Token const*)', 'bool std::__1::operator== , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'bool Token::simpleMatch<2ul>(Token const*, char const (&) [2ul])', 'ValueFlow::getEndOfExprScope(Token const*, Scope const*, bool)', 'void std::__1::list >::remove_if (valueFlowForwardLifetime(Token*, TokenList&, ErrorLogger*, Settings const*)::$_56)', 'Token::values() const', 'std::__1::__list_imp >::~__list_imp()', 'Token::isCast() const', 'Token::astOperand2()', 'std::__1::__list_iterator ::operator++()', 'nextAfterAstRightmostLeaf(Token*)', 'TokenList::isCPP() const', 'setTokenValue(Token*, ValueFlow::Value, Settings const*, SourceLocation)', 'Token::str() const', 'void std::__1::list >::remove_if (bool (*)(ValueFlow::Value const&))', 'valueFlowForwardLifetime(Token*, TokenList&, ErrorLogger*, Settings const*)', 'getParentLifetime(bool, Token const*, Library const*)', 'ValueFlow::Value::Value(ValueFlow::Value&&)', 'Token::exprId() const', 'SourceLocation::current(unsigned int, unsigned int, char const*, char const*)', 'std::__1::list >::empty() const', 'valueFlowLifetimeConstructor(Token*, TokenList&, ErrorLogger*, Settings const*)', 'getLHSVariableToken(Token const*)', 'valueFlowForward(Token*, Token const*, Token const*, std::__1::list >, TokenList const&, Settings const*, SourceLocation)', 'std::__1::list >::list(std::__1::list > const&)', 'std::__1::__list_iterator ::operator*() const']

2012 43132 valueFlowForwardLifetime(Token*,TokenList&,ErrorLogger*,Settingsconst*) call site: 00000 /src/cppcheck/oss-fuzz/../lib/valueflow.cpp:3881
1895 5317 25 :

['std::__1::set , std::__1::allocator >, std::__1::less , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > > >::find(std::__1::basic_string , std::__1::allocator > const&) const', 'Token::previous()', 'Token::astOperand1()', 'Token::isName() const', 'std::__1::vector >::~vector()', 'std::__1::__wrap_iter ::operator*() const', 'getMinMaxValues(std::__1::basic_string , std::__1::allocator > const&, Settings const*, long long&, long long&)', 'Token::astParent()', 'std::__1::__wrap_iter ::operator++()', 'bool std::__1::operator!= (std::__1::__wrap_iter const&, std::__1::__wrap_iter const&)', 'Token::str() const', 'ValueFlow::Value::Value(long long, ValueFlow::Value::Bound)', 'setTokenValue(Token*, ValueFlow::Value, Settings const*, SourceLocation)', 'std::__1::vector >::empty() const', 'std::__1::operator==(std::__1::__tree_const_iterator , std::__1::allocator >, std::__1::__tree_node , std::__1::allocator >, void*>*, long> const&, std::__1::__tree_const_iterator , std::__1::allocator >, std::__1::__tree_node , std::__1::allocator >, void*>*, long> const&)', 'ValueFlow::Value::~Value()', 'std::__1::set , std::__1::allocator >, std::__1::less , std::__1::allocator > >, std::__1::allocator , std::__1::allocator > > >::end() const', 'std::__1::vector >::begin()', 'TokenList::front()', 'SourceLocation::current(unsigned int, unsigned int, char const*, char const*)', 'bool std::__1::operator!= , std::__1::allocator >(std::__1::basic_string , std::__1::allocator > const&, char const*)', 'Library::unknownReturnValues(Token const*) const', 'Token::next()', 'std::__1::vector >::end()', 'Library::returnValueType(Token const*) const']

1895 5317 valueFlowUnknownFunctionReturn(TokenList&,Settingsconst*) call site: 00000 /src/cppcheck/oss-fuzz/../lib/valueflow.cpp:9114

Runtime coverage analysis

Covered functions
2237
Functions that are reachable but not covered
1920
Reachable functions
3930
Percentage of reachable functions covered
51.15%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/cppcheck/oss-fuzz/main.cpp 2
/src/cppcheck/oss-fuzz/type2.cpp 8
/src/cppcheck/oss-fuzz/../lib/errorlogger.h 10
/src/cppcheck/oss-fuzz/../lib/cppcheck.cpp 29
/src/cppcheck/oss-fuzz/../lib/settings.cpp 5
/src/cppcheck/oss-fuzz/../lib/library.h 20
/src/cppcheck/oss-fuzz/../lib/suppressions.h 6
/src/cppcheck/oss-fuzz/../lib/platform.cpp 2
/src/cppcheck/oss-fuzz/../lib/importproject.cpp 1
/src/cppcheck/oss-fuzz/../lib/importproject.h 3
/src/cppcheck/oss-fuzz/../lib/settings.h 19
/src/cppcheck/oss-fuzz/../lib/standards.h 5
/src/cppcheck/oss-fuzz/../lib/analyzerinfo.h 1
/src/cppcheck/oss-fuzz/../lib/analyzerinfo.cpp 7
/src/cppcheck/oss-fuzz/../lib/path.cpp 14
/src/cppcheck/oss-fuzz/../externals/simplecpp/simplecpp.cpp 50
/src/cppcheck/oss-fuzz/../lib/timer.cpp 5
/src/cppcheck/oss-fuzz/../lib/platform.h 10
/src/cppcheck/oss-fuzz/../lib/checkunusedfunctions.h 3
/src/cppcheck/oss-fuzz/../lib/check.h 4
/src/cppcheck/oss-fuzz/../lib/preprocessor.cpp 34
/src/cppcheck/oss-fuzz/../externals/simplecpp/simplecpp.h 22
/usr/include/stdlib.h 1
/usr/include/ctype.h 7
/src/cppcheck/oss-fuzz/../lib/utils.h 24
/src/cppcheck/oss-fuzz/../lib/errorlogger.cpp 15
/src/cppcheck/oss-fuzz/../lib/errortypes.h 1
/src/cppcheck/oss-fuzz/../lib/library.cpp 23
/src/cppcheck/oss-fuzz/../lib/utils.cpp 2
/src/cppcheck/oss-fuzz/../lib/tokenize.cpp 193
/src/cppcheck/oss-fuzz/../lib/tokenlist.cpp 66
/src/cppcheck/oss-fuzz/../lib/token.h 174
/src/cppcheck/oss-fuzz/../lib/templatesimplifier.cpp 64
/src/cppcheck/oss-fuzz/../lib/token.cpp 73
/src/cppcheck/oss-fuzz/../lib/symboldatabase.h 125
/src/cppcheck/oss-fuzz/../lib/templatesimplifier.h 27
/src/cppcheck/oss-fuzz/../lib/tokenlist.h 7
/src/cppcheck/oss-fuzz/../lib/keywords.cpp 2
/src/cppcheck/oss-fuzz/../lib/mathlib.cpp 39
/src/cppcheck/oss-fuzz/../lib/errortypes.cpp 5
/src/cppcheck/oss-fuzz/../lib/checkunusedfunctions.cpp 4
/src/cppcheck/oss-fuzz/../lib/tokenize.h 11
/src/cppcheck/oss-fuzz/../lib/astutils.cpp 66
/src/cppcheck/oss-fuzz/../lib/symboldatabase.cpp 133
/src/cppcheck/oss-fuzz/../lib/suppressions.cpp 7
/src/cppcheck/oss-fuzz/../externals/tinyxml2/tinyxml2.cpp 45
/src/cppcheck/oss-fuzz/../externals/tinyxml2/tinyxml2.h 37
/src/cppcheck/oss-fuzz/../lib/preprocessor.h 1
/src/cppcheck/oss-fuzz/../lib/vfvalue.cpp 5
/src/cppcheck/oss-fuzz/../lib/vfvalue.h 13
/src/cppcheck/oss-fuzz/../lib/check.cpp 2
/usr/local/bin/../include/c++/v1/math.h 4
/usr/local/bin/../include/c++/v1/stdlib.h 1
/src/cppcheck/oss-fuzz/../lib/mathlib.h 3
/src/cppcheck/oss-fuzz/../lib/sourcelocation.h 5
/src/cppcheck/oss-fuzz/../lib/astutils.h 6
/src/cppcheck/oss-fuzz/../lib/valueflow.cpp 56
/src/cppcheck/oss-fuzz/../lib/smallvector.h 3
/src/cppcheck/oss-fuzz/../lib/summaries.cpp 2
/src/cppcheck/oss-fuzz/../lib/valueptr.h 45
/src/cppcheck/oss-fuzz/../lib/ctu.cpp 8
/src/cppcheck/oss-fuzz/../lib/ctu.h 9
/src/cppcheck/oss-fuzz/../externals/picojson/picojson.h 49
/usr/include/inttypes.h 1
/usr/local/bin/../include/c++/v1/stdexcept 1
/usr/include/x86_64-linux-gnu/sys/stat.h 1
/src/cppcheck/oss-fuzz/../lib/timer.h 2

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

The following table shows a list of functions that are optimal targets. Optimal targets are identified by finding the functions that in combination, yield a high code coverage.

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
CheckOther::runChecks(Tokenizerconst&,ErrorLogger*) /src/cppcheck/oss-fuzz/../lib/checkother.h 3 ['class.Check64BitPortability *', 'class.Tokenizer *', 'class.ErrorLogger.285 *'] 35 0 191 44 5 1502 0 8055 4274
ValueFlowPassAdaptor ::run(ValueFlowStateconst&)const /src/cppcheck/oss-fuzz/../lib/valueflow.cpp 2 ['struct.ValueFlowPassAdaptor.803 *', 'struct.ValueFlowState *'] 58 0 22 3 2 1855 0 7616 3233
CheckClass::runChecks(Tokenizerconst&,ErrorLogger*) /src/cppcheck/oss-fuzz/../lib/checkclass.h 3 ['class.CheckClass *', 'class.Tokenizer *', 'class.ErrorLogger.285 *'] 21 0 114 26 9 1036 0 4866 2160

Implementing fuzzers that target the above functions will improve reachability such that it becomes:

Functions statically reachable by fuzzers
47.0%
2638 / 5647
Cyclomatic complexity statically reachable by fuzzers
50.0%
32864 / 65640

All functions overview

If you implement fuzzers for these functions, the status of all functions in the project will be:

Func name Functions filename Args Function call depth Reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
simplecpp::TokenList::readfile(simplecpp::TokenList::Stream&,std::__1::basic_string ,std::__1::allocator >const&,std::__1::list >*) 226 76 33.62% ['oss-fuzz-client']
simplecpp::TokenList::combineOperators() 117 47 40.17% ['oss-fuzz-client']
simplecpp::TokenList::readUntil(simplecpp::TokenList::Stream&,simplecpp::Locationconst&,char,char,std::__1::list >*) 44 15 34.09% ['oss-fuzz-client']
simplecpp::simplifyPath(std::__1::basic_string ,std::__1::allocator >) 45 15 33.33% ['oss-fuzz-client']
simplecpp::load(simplecpp::TokenListconst&,std::__1::vector ,std::__1::allocator >,std::__1::allocator ,std::__1::allocator >>>&,simplecpp::DUIconst&,std::__1::list >*) 57 10 17.54% ['oss-fuzz-client']
simplecpp::preprocess(simplecpp::TokenList&,simplecpp::TokenListconst&,std::__1::vector ,std::__1::allocator >,std::__1::allocator ,std::__1::allocator >>>&,std::__1::map ,std::__1::allocator >,simplecpp::TokenList*,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >const,simplecpp::TokenList*>>>&,simplecpp::DUIconst&,std::__1::list >*,std::__1::list >*,std::__1::list >*) 414 77 18.59% ['oss-fuzz-client']
simplecpp::Macro::parseDefine(simplecpp::Tokenconst*) 41 15 36.58% ['oss-fuzz-client']
getParentValueTypes(Tokenconst*,Settingsconst*,Tokenconst**) 68 14 20.58% []
followAllReferences(Tokenconst*,bool,bool,std::__1::list ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>>,int) 113 26 23.00% ['oss-fuzz-client']
isOppositeCond(bool,bool,Tokenconst*,Tokenconst*,Libraryconst&,bool,bool,std::__1::list ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>>*) 143 65 45.45% []
isVariableChangedByFunctionCall(Tokenconst*,int,Settingsconst*,bool*) 74 15 20.27% ['oss-fuzz-client']
isVariableChanged(Tokenconst*,int,Settingsconst*,bool,int) 172 72 41.86% ['oss-fuzz-client']
followVariableExpression(Tokenconst*,bool,Tokenconst*) 48 15 31.25% ['oss-fuzz-client']
Tokenconst*findLambdaEndTokenGeneric (Tokenconst*) 33 17 51.51% ['oss-fuzz-client']
Token*findLambdaEndTokenGeneric (Token*) 33 17 51.51% []
isGlobalData(Tokenconst*,bool)::$_18::operator()(Tokenconst*)const 61 18 29.50% []
intcalculate (std::__1::basic_string ,std::__1::allocator >const&,intconst&,intconst&,bool*) 68 21 30.88% []
CheckAssert::assertWithSideEffects() 45 7 15.55% []
CheckAutoVariables::autoVariables() 56 20 35.71% []
CheckAutoVariables::checkVarLifetimeScope(Tokenconst*,Tokenconst*) 133 29 21.80% []
CheckBool::checkComparisonOfBoolWithBool() 33 18 54.54% []
CheckBufferOverrun::arrayIndex() 71 6 8.450% []
CheckBufferOverrun::pointerArithmetic() 53 9 16.98% []
CheckBufferOverrun::bufferOverflow() 51 11 21.56% []
CheckBufferOverrun::arrayIndexThenCheck() 31 11 35.48% []
CheckBufferOverrun::stringNotZeroTerminated() 46 10 21.73% []
CheckBufferOverrun::argumentSize() 41 10 24.39% []
CheckBufferOverrun::objectIndex() 71 9 12.67% []
CheckClass::constructors() 159 8 5.031% []
CheckClass::copyconstructors() 109 5 4.587% []
CheckClass::initializationListUsage() 65 7 10.76% []
CheckClass::privateFunctions() 40 5 12.5% []
CheckClass::checkMemset() 78 11 14.10% []
CheckClass::operatorEqToSelf() 31 5 16.12% []
CheckClass::virtualDestructor() 78 7 8.974% []
CheckClass::checkConst() 83 6 7.228% []
CheckClass::initializerListOrder() 36 6 16.66% []
CheckClass::checkCopyCtorAndEqOperator() 36 3 8.333% []
CheckClass::checkUselessOverride() 53 5 9.433% []
CheckClass::checkThisUseAfterFree() 38 5 13.15% []
CheckClass::getFileInfo(Tokenizerconst*,Settingsconst*)const 55 8 14.54% []
CheckCondition::assignIfParseScope(Tokenconst*,Tokenconst*,int,bool,char,longlong) 66 35 53.03% []
CheckCondition::comparison() 54 22 40.74% []
CheckCondition::isOverlappingCond(Tokenconst*,Tokenconst*,bool)const 32 13 40.62% []
CheckCondition::checkIncorrectLogicOperator() 158 13 8.227% []
CheckCondition::checkCompareValueOutOfTypeRange() 106 5 4.716% []
CheckExceptionSafety::deallocThrow() 42 11 26.19% []
CheckFunctions::checkProhibitedFunctions() 38 17 44.73% []
CheckFunctions::invalidFunctionUsage() 81 23 28.39% []
CheckFunctions::checkIgnoredReturnValue() 39 13 33.33% []
CheckFunctions::checkMathFunctions() 52 26 50.0% []
CheckFunctions::checkLibraryMatchFunctions() 52 3 5.769% []
CheckFunctions::useStandardLibrary() 75 7 9.333% []
checkMissingReturnScope(Tokenconst*,Libraryconst&) 67 15 22.38% []
CheckIO::checkFileUsage() 219 54 24.65% []
CheckIO::invalidScanf() 36 11 30.55% []
CheckIO::checkWrongPrintfScanfArguments() 55 22 40.0% []
CheckLeakAutoVar::checkScope(Tokenconst*,VarInfo&,std::__1::set ,std::__1::allocator >,int) 392 161 41.07% []
CheckLeakAutoVar::checkTokenInsideExpression(Tokenconst*,VarInfo&) 53 10 18.86% []
CheckLeakAutoVar::ret(Tokenconst*,VarInfo&,bool) 60 8 13.33% []
CheckLeakAutoVar::checkScope(Tokenconst*,VarInfo&,std::__1::set ,std::__1::allocator >,int)::$_1::operator()(Tokenconst*)const 36 17 47.22% []
CheckMemoryLeak::getAllocationType(Tokenconst*,int,std::__1::list >*)const 67 17 25.37% []
CheckMemoryLeak::getReallocationType(Tokenconst*,int)const 32 8 25.0% []
CheckMemoryLeakInFunction::checkReallocUsage() 50 18 36.0% []
CheckMemoryLeakNoVar::checkForUnreleasedInputArgument(Scopeconst*) 60 26 43.33% []
CheckMemoryLeakNoVar::checkForUnusedReturnValue(Scopeconst*) 40 10 25.0% []
CheckNullPointer::parseFunctionCall(Tokenconst&,std::__1::list >&,Libraryconst*) 55 12 21.81% []
CheckNullPointer::nullConstantDereference() 79 39 49.36% []
CheckNullPointer::arithmetic() 36 14 38.88% []
CheckOther::checkCastIntToCharAndBack() 45 18 40.0% []
CheckOther::clarifyCalculation() 36 10 27.77% []
CheckOther::invalidPointerCast() 31 15 48.38% []
CheckOther::redundantBitwiseOperationInSwitchError() 72 8 11.11% []
CheckOther::checkUnreachableCode() 90 38 42.22% []
CheckOther::checkVariableScope() 100 10 10.0% []
CheckOther::checkPassByReference() 40 8 20.0% []
CheckOther::checkConstVariable() 129 9 6.976% []
CheckOther::checkConstPointer() 127 12 9.448% []
CheckOther::checkCharVariable() 45 18 40.0% []
CheckOther::checkIncompleteStatement() 50 23 46.0% []
CheckOther::checkRedundantCopy() 45 8 17.77% []
CheckOther::checkIncompleteArrayFill() 39 13 33.33% []
CheckOther::checkVarFuncNullUB() 31 10 32.25% []
CheckOther::checkInterlockedDecrement() 36 4 11.11% []
CheckOther::checkEvaluationOrder() 61 3 4.918% []
CheckOther::checkAccessOfMovedVariable() 42 19 45.23% []
CheckOther::checkFuncArgNamesDifferent() 63 12 19.04% []
CheckOther::checkShadowVariables() 38 13 34.21% []
CheckOther::checkKnownArgument() 65 21 32.30% []
CheckOther::checkComparePointers() 35 13 37.14% []
CheckOther::checkOverlappingWrite() 84 16 19.04% []
canBeConst(Variableconst*,Settingsconst*) 99 9 9.090% []
isConstStatement(Tokenconst*,bool) 51 20 39.21% []
CheckSizeof::checkSizeofForPointerSize() 114 18 15.78% []
CheckStl::outOfBounds() 68 9 13.23% []
CheckStl::iterators() 126 13 10.31% []
CheckStl::checkIteratorPair(Tokenconst*,Tokenconst*) 38 16 42.10% []
CheckStl::mismatchingContainers() 51 20 39.21% []
CheckStl::mismatchingContainerIterator() 40 9 22.5% []
CheckStl::invalidContainer() 101 15 14.85% []
CheckStl::stlOutOfBounds() 66 34 51.51% []
CheckStl::eraseCheckLoopVar(Scopeconst&,Variableconst*) 40 4 10.0% []
CheckStl::if_find() 56 25 44.64% []
CheckStl::checkFindInsert() 39 19 48.71% []
CheckStl::size() 36 4 11.11% []
CheckStl::missingComparison() 47 8 17.02% []
CheckStl::string_c_str() 181 54 29.83% []
CheckStl::uselessCalls() 56 21 37.5% []
CheckStl::checkDereferenceInvalidIterator() 45 23 51.11% []
CheckStl::checkDereferenceInvalidIterator2() 88 23 26.13% []
CheckStl::useStlAlgorithm() 176 19 10.79% []
CheckStl::checkMutexes() 35 16 45.71% []
InvalidContainerAnalyzer::invalidatesContainer(Tokenconst*)const 51 9 17.64% []
CheckString::checkAlwaysTrueOrFalseStringCompare() 40 10 25.0% []
CheckString::checkIncorrectStringCompare() 42 16 38.09% []
CheckString::overlappingStrcmp() 57 10 17.54% []
CheckString::sprintfOverlappingData() 32 9 28.12% []
CheckType::checkTooBigBitwiseShift() 37 10 27.02% []
CheckType::checkFloatToIntegerOverflow(Tokenconst*,ValueTypeconst*,ValueTypeconst*,std::__1::list >const&) 33 5 15.15% []
CheckUninitVar::checkScope(Scopeconst*,std::__1::set ,std::__1::allocator >,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>const&) 91 6 6.593% []
CheckUninitVar::valueFlowUninit() 74 23 31.08% []
CheckUnusedFunctions::parseTokens(Tokenizerconst&,charconst*,Settingsconst*) 163 59 36.19% ['oss-fuzz-client']
CheckUnusedVar::checkFunctionVariableUsage_iterateScopes(Scopeconst*,Variables&) 381 153 40.15% []
CheckUnusedVar::checkFunctionVariableUsage() 188 74 39.36% []
CheckUnusedVar::checkStructMemberUsage() 85 8 9.411% []
doAssignment(Variables&,Tokenconst*,bool,Scopeconst*) 166 20 12.04% []
CheckVaarg::va_list_usage() 58 8 13.79% []
CppCheck::checkFile(std::__1::basic_string ,std::__1::allocator >const&,std::__1::basic_string ,std::__1::allocator >const&,std::__1::basic_istream >*) 283 96 33.92% ['oss-fuzz-client']
CppCheck::checkNormalTokens(Tokenizerconst&) 49 26 53.06% ['oss-fuzz-client']
createDumpFile(Settingsconst&,std::__1::basic_string ,std::__1::allocator >const&,std::__1::basic_ofstream >&,std::__1::basic_string ,std::__1::allocator >&) 37 3 8.108% ['oss-fuzz-client']
CTU::getFileInfo(Tokenizerconst*) 116 17 14.65% ['oss-fuzz-client']
ErrorMessage::toString(bool,std::__1::basic_string ,std::__1::allocator >const&,std::__1::basic_string ,std::__1::allocator >const&)const 81 18 22.22% []
boolfindTokensSkipDeadCodeImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1},findTokenSkipDeadCode (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::vector (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::allocator >(Tokenconst*)>,void>(Libraryconst*,isExpressionChangedImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::vector (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::allocator >(Tokenconst*),Tokenconst*,{lambda(Tokenconst*)#1}const&,std::__1::function (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::vector (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::allocator >(Tokenconst*)>const&)::{lambda(Tokenconst*)#1},isExpressionChangedImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::vector (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::allocator >,void>(Library,isExpressionChangedImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::vector (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::allocator >(Tokenconst*),Tokenconst*,isExpressionChangedImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1},isExpressionChangedImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}const,isExpressionChangedImpl (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::vector (Tokenconst*,Tokenconst*,Tokenconst*,Settingsconst*,bool,int,ExpressionChangedSkipDeadCode)::{lambda(Tokenconst*)#1}::operator()(Tokenconst*)const::{lambda(Tokenconst*)#1}::allocator >const&) 81 44 54.32% []
ForwardTraversal::updateRange(Token*,Tokenconst*,int) 268 135 50.37% []
ForwardTraversal::ProgressForwardTraversal::traverseTok (Tokenconst*,ForwardTraversal::analyzeRecursive(Tokenconst*)::{lambda(Tokenconst*)#1},bool,Tokenconst*) 43 16 37.20% []
ForwardTraversal::ProgressForwardTraversal::traverseTok (Token*,ForwardTraversal::updateTok(Token*,Token**)::{lambda(Token*)#1},bool,Token*) 43 19 44.18% []
ForwardTraversal::ProgressForwardTraversal::traverseTok (Token*,ForwardTraversal::updateRecursive(Token*)::{lambda(Token*)#1},bool,Token*) 43 16 37.20% []
FwdAnalysis::checkRecursive(Tokenconst*,Tokenconst*,Tokenconst*,std::__1::set ,std::__1::allocator >const&,bool,bool,int) 249 110 44.17% []
Library::getFunctionName(Tokenconst*,bool&)const 42 8 19.04% ['oss-fuzz-client']
Library::isScopeNoReturn(Tokenconst*,std::__1::basic_string ,std::__1::allocator >*)const 36 11 30.55% []
Library::detectContainerInternal(Tokenconst*,Library::DetectContainer,bool*,bool)const 38 11 28.94% ['oss-fuzz-client']
MathLib::toULongNumber(std::__1::basic_string ,std::__1::allocator >const&) 57 13 22.80% ['oss-fuzz-client']
MathLib::toLongNumber(std::__1::basic_string ,std::__1::allocator >const&) 59 13 22.03% ['oss-fuzz-client']
MathLib::isDecimalFloat(std::__1::basic_string ,std::__1::allocator >const&) 93 28 30.10% ['oss-fuzz-client']
MathLib::isIntHex(std::__1::basic_string ,std::__1::allocator >const&) 39 21 53.84% ['oss-fuzz-client']
MathLib::isFloatHex(std::__1::basic_string ,std::__1::allocator >const&) 78 21 26.92% ['oss-fuzz-client']
MathLib::isBin(std::__1::basic_string ,std::__1::allocator >const&) 39 21 53.84% ['oss-fuzz-client']
cppcheck::Platform::set(cppcheck::Platform::Type) 113 27 23.89% ['oss-fuzz-client']
Preprocessor::simplifyPragmaAsmPrivate(simplecpp::TokenList*) 35 5 14.28% ['oss-fuzz-client']
getConfigs(simplecpp::TokenListconst&,std::__1::set ,std::__1::allocator >,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>&,std::__1::basic_string ,std::__1::allocator >const&,std::__1::set ,std::__1::allocator >,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>const&,std::__1::set ,std::__1::allocator >,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>&) 133 9 6.766% ['oss-fuzz-client']
Executor::executeImpl(Tokenconst*) 245 72 29.38% []
ReverseTraversal::isDeadCode(Token*,Tokenconst*)const 38 14 36.84% []
Settings::parseEnabled(std::__1::basic_string ,std::__1::allocator >const&,std::__1::tuple ,SimpleEnableGroup >&) 48 14 29.16% ['oss-fuzz-client']
SymbolDatabase::createSymbolDatabaseFindAllScopes() 452 99 21.90% ['oss-fuzz-client']
SymbolDatabase::createSymbolDatabaseNeedInitialization() 76 15 19.73% ['oss-fuzz-client']
SymbolDatabase::createSymbolDatabaseVariableSymbolTable() 50 20 40.0% ['oss-fuzz-client']
SymbolDatabase::createSymbolDatabaseSetVariablePointers() 122 27 22.13% ['oss-fuzz-client']
SymbolDatabase::createSymbolDatabaseEnums() 37 16 43.24% ['oss-fuzz-client']
SymbolDatabase::setArrayDimensionsUsingValueFlow() 78 5 6.410% ['oss-fuzz-client']
SymbolDatabase::isFunction(Tokenconst*,Scopeconst*,Tokenconst**,Tokenconst**,Tokenconst**)const 150 46 30.66% ['oss-fuzz-client']
Variable::evaluate(Settingsconst*) 96 48 50.0% []
Function::Function(Tokenizerconst*,Tokenconst*,Scopeconst*,Tokenconst*,Tokenconst*) 82 38 46.34% ['oss-fuzz-client']
Function::setFlags(Tokenconst*,Scopeconst*) 37 15 40.54% ['oss-fuzz-client']
Variable::arrayDimensions(Settingsconst*,bool&) 52 13 25.0% []
Function::addArguments(SymbolDatabaseconst*,Scopeconst*) 107 5 4.672% ['oss-fuzz-client']
Scope::Scope(SymbolDatabaseconst*,Tokenconst*,Scopeconst*) 32 17 53.12% []
Scope::getVariableList(Settingsconst*,Tokenconst*,Tokenconst*) 81 35 43.20% ['oss-fuzz-client']
Scope::checkVariable(Tokenconst*,AccessControl,Settingsconst*) 52 26 50.0% ['oss-fuzz-client']
Scope::isVariableDeclaration(Tokenconst*,Tokenconst*&,Tokenconst*&)const 57 30 52.63% ['oss-fuzz-client']
SymbolDatabase::findEnumerator(Tokenconst*,std::__1::set ,std::__1::allocator >,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>&)const 90 32 35.55% ['oss-fuzz-client']
SymbolDatabase::findVariableType(Scopeconst*,Tokenconst*)const 77 14 18.18% ['oss-fuzz-client']
Scope::findFunction(Tokenconst*,bool)const 215 47 21.86% ['oss-fuzz-client']
SymbolDatabase::findFunction(Tokenconst*)const 111 25 22.52% ['oss-fuzz-client']
SymbolDatabase::findTypeInNested(Tokenconst*,Scopeconst*)const 40 19 47.5% ['oss-fuzz-client']
SymbolDatabase::setValueType(Token*,ValueTypeconst&,SourceLocation) 421 101 23.99% ['oss-fuzz-client']
SymbolDatabase::setValueTypeInTokenList(bool,Token*) 392 91 23.21% ['oss-fuzz-client']
ValueType::fromLibraryType(std::__1::basic_string ,std::__1::allocator >const&,Settingsconst&) 74 9 12.16% ['oss-fuzz-client']
parsedecl(Tokenconst*,ValueType*,ValueType::Sign,Settingsconst&,bool,SourceLocation) 203 57 28.07% ['oss-fuzz-client']
boolcheckReturns (Functionconst*,bool,bool,Function::returnsReference(Functionconst*,bool,bool)::$_7) 41 22 53.65% ['oss-fuzz-client']
boolcheckReturns (Functionconst*,bool,bool,Function::returnsStandardType(Functionconst*,bool)::$_9) 41 10 24.39% []
boolcheckReturns (Functionconst*,bool,bool,Function::returnsVoid(Functionconst*,bool)::$_10) 41 22 53.65% []
TemplateSimplifier::checkComplicatedSyntaxErrorsInTemplates() 85 19 22.35% ['oss-fuzz-client']
TemplateSimplifier::templateParameters(Tokenconst*) 136 63 46.32% ['oss-fuzz-client']
TemplateSimplifier::getTemplateDeclarations() 49 7 14.28% ['oss-fuzz-client']
TemplateSimplifier::simplifyNumericCalculations(Token*,bool) 74 35 47.29% ['oss-fuzz-client']
TemplateSimplifier::simplifyTemplates(long) 247 30 12.14% ['oss-fuzz-client']
TimerResults::showResults(SHOWTIME_MODES)const 36 3 8.333% []
Token::insertToken(std::__1::basic_string ,std::__1::allocator >const&,std::__1::basic_string ,std::__1::allocator >const&,bool) 119 26 21.84% ['oss-fuzz-client']
Token::stringify(Token::stringifyOptionsconst&)const 42 16 38.09% ['oss-fuzz-client']
Token::stringifyList(Token::stringifyOptionsconst&,std::__1::vector ,std::__1::allocator >,std::__1::allocator ,std::__1::allocator >>>const*,Tokenconst*)const 70 20 28.57% ['oss-fuzz-client']
Token::typeOf(Tokenconst*,Tokenconst**) 49 16 32.65% ['oss-fuzz-client']
Token::typeDecl(Tokenconst*,bool) 93 21 22.58% ['oss-fuzz-client']
stringFromTokenRange(Tokenconst*,Tokenconst*) 34 15 44.11% ['oss-fuzz-client']
Tokenizer::simplifyTypedefLHS() 38 6 15.78% ['oss-fuzz-client']
Tokenizer::simplifyTypedef() 70 24 34.28% ['oss-fuzz-client']
Tokenizer::simplifyTypedefCpp() 973 26 2.672% ['oss-fuzz-client']
Tokenizer::simplifyUsing() 384 33 8.593% ['oss-fuzz-client']
Tokenizer::combineOperators() 67 15 22.38% ['oss-fuzz-client']
Tokenizer::arraySize() 66 24 36.36% ['oss-fuzz-client']
Tokenizer::calculateScopes() 79 36 45.56% ['oss-fuzz-client']
Tokenizer::setVarIdStructMembers(Token**,std::__1::map ,std::__1::allocator >,int,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >const,int>>>,std::__1::less ,std::__1::allocator ,std::__1::allocator >,int,std::__1::less ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >const,int>>>>>>&,int&)const 50 6 12.0% ['oss-fuzz-client']
Tokenizer::setVarIdPass2() 200 32 16.0% ['oss-fuzz-client']
Tokenizer::printDebugOutput(int)const 37 6 16.21% ['oss-fuzz-client']
Tokenizer::simplifyHeadersAndUnusedTemplates() 93 3 3.225% ['oss-fuzz-client']
Tokenizer::removeMacrosInGlobalScope() 52 20 38.46% ['oss-fuzz-client']
Tokenizer::simplifyEmptyNamespaces() 34 12 35.29% ['oss-fuzz-client']
Tokenizer::simplifyAddBracesPair(Token*,bool) 78 23 29.48% ['oss-fuzz-client']
Tokenizer::simplifyFunctionParameters() 122 9 7.377% ['oss-fuzz-client']
Tokenizer::simplifyFunctionPointers() 89 21 23.59% ['oss-fuzz-client']
Tokenizer::simplifyVarDecl(Token*,Tokenconst*,bool) 297 113 38.04% ['oss-fuzz-client']
Tokenizer::simplifyStaticConst() 53 10 18.86% ['oss-fuzz-client']
Tokenizer::simplifyCAlternativeTokens() 67 31 46.26% ['oss-fuzz-client']
Tokenizer::simplifyIfSwitchForInit() 48 15 31.25% ['oss-fuzz-client']
Tokenizer::reportUnknownMacros()const 110 49 44.54% ['oss-fuzz-client']
Tokenizer::findGarbageCode()const 264 121 45.83% ['oss-fuzz-client']
Tokenizer::simplifyStructDecl() 117 34 29.05% ['oss-fuzz-client']
Tokenizer::simplifyAttribute() 68 6 8.823% ['oss-fuzz-client']
Tokenizer::simplifyCppcheckAttribute() 33 9 27.27% ['oss-fuzz-client']
Tokenizer::simplifyCPPAttribute() 63 8 12.69% ['oss-fuzz-client']
Tokenizer::simplifyKeyword() 94 18 19.14% ['oss-fuzz-client']
Tokenizer::simplifyAsm() 70 10 14.28% ['oss-fuzz-client']
Tokenizer::simplifyAsm2() 39 7 17.94% ['oss-fuzz-client']
Tokenizer::simplifyAt() 37 7 18.91% ['oss-fuzz-client']
Tokenizer::simplifyBitfields() 66 25 37.87% ['oss-fuzz-client']
Tokenizer::simplifyNamespaceStd() 46 8 17.39% ['oss-fuzz-client']
Tokenizer::simplifyMicrosoftMemoryFunctions() 36 3 8.333% ['oss-fuzz-client']
Tokenizer::simplifyBorland() 42 3 7.142% ['oss-fuzz-client']
Tokenizer::simplifyOperatorName() 108 11 10.18% ['oss-fuzz-client']
Tokenizer::simplifyOverloadedOperators() 62 13 20.96% ['oss-fuzz-client']
Tokenizer::removeUnnecessaryQualification() 61 9 14.75% ['oss-fuzz-client']
Tokenizer::prepareTernaryOpForAST() 32 5 15.62% ['oss-fuzz-client']
Tokenizer::simplifyNestedNamespace() 31 6 19.35% ['oss-fuzz-client']
Tokenizer::simplifyNamespaceAliases() 78 12 15.38% ['oss-fuzz-client']
(anonymousnamespace)::setScopeInfo(Token*,(anonymousnamespace)::ScopeInfo3**,bool) 121 29 23.96% ['oss-fuzz-client']
TokenList::simplifyPlatformTypes() 98 21 21.42% ['oss-fuzz-client']
createAstAtToken(Token*,bool) 211 64 30.33% ['oss-fuzz-client']
compileAssignTernary(Token*&,AST_state&) 36 15 41.66% ['oss-fuzz-client']
compilePrecedence3(Token*&,AST_state&) 93 21 22.58% ['oss-fuzz-client']
compilePrecedence2(Token*&,AST_state&) 141 50 35.46% ['oss-fuzz-client']
compileTerm(Token*&,AST_state&) 146 50 34.24% ['oss-fuzz-client']
createAstAtTokenInner(Token*,Tokenconst*,bool) 48 7 14.58% ['oss-fuzz-client']
iscpp11init_impl(Tokenconst*) 72 34 47.22% ['oss-fuzz-client']
valueFlowSetConstantValue(Token*,Settingsconst*,bool) 206 22 10.67% []
setTokenValue(Token*,ValueFlow::Value,Settingsconst*,SourceLocation) 402 132 32.83% []
ValueFlowPassRunner::setSkippedFunctions() 34 18 52.94% []
std::__1::vector >getLifetimeTokens ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>>)::$_4>(Tokenconst*,bool,std::__1::list ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>>,ValueFlow::getLifetimeTokens(Tokenconst*,bool,std::__1::list ,std::__1::allocator >>,std::__1::allocator ,std::__1::allocator >>>>)::$_4,int) 134 11 8.208% []
valueFlowArray(TokenList&,Settingsconst*) 46 18 39.13% []
valueFlowLifetime(TokenList&,ErrorLogger*,Settingsconst*) 242 25 10.33% []
Lambda::Lambda(Tokenconst*) 33 3 9.090% []
valueFlowForwardLifetime(Token*,TokenList&,ErrorLogger*,Settingsconst*) 66 6 9.090% []
ValueFlowAnalyzer::analyzeToken(Tokenconst*,Tokenconst*,Analyzer::Direction,bool)const 50 19 38.0% []
valueFlowLifetimeConstructor(Token*,TokenList&,ErrorLogger*,Settingsconst*) 54 10 18.51% []
valueFlowLifetimeFunction(Token*,TokenList&,ErrorLogger*,Settingsconst*) 143 17 11.88% []
valueFlowImpossibleValues(TokenList&,Settingsconst*) 102 29 28.43% []
ConditionHandler::afterCondition(TokenList&,SymbolDatabaseconst&,ErrorLogger*,Settingsconst*,std::__1::set ,std::__1::allocator >const&)const::{lambda(ConditionHandler::Conditionconst&,Token*,Scopeconst*)#1}::operator()(ConditionHandler::Conditionconst&,Token*,Scopeconst*)const 287 128 44.59% []
valueFlowArrayElement(TokenList&,Settingsconst*) 69 11 15.94% []
valueFlowRightShift(TokenList&,Settingsconst*) 42 5 11.90% []
valueFlowForwardAssign(Token*,Tokenconst*,std::__1::vector >,std::__1::list >,bool,TokenList&,ErrorLogger*,Settingsconst*) 74 40 54.05% []
valueFlowSwitchVariable(TokenList&,SymbolDatabaseconst&,ErrorLogger*,Settingsconst*) 54 5 9.259% []
valueFlowForLoop(TokenList&,SymbolDatabaseconst&,ErrorLogger*,Settingsconst*) 66 5 7.575% []
valueFlowSubFunction(TokenList&,SymbolDatabase&,ErrorLogger*,Settingsconst&) 61 10 16.39% []
valueFlowFunctionReturn(TokenList&,ErrorLogger*,Settingsconst*) 47 10 21.27% []
valueFlowUninit(TokenList&,Settingsconst*) 63 11 17.46% []
valueFlowAfterMove(TokenList&,SymbolDatabaseconst&,Settingsconst*) 62 17 27.41% []
valueFlowSmartPointer(TokenList&,ErrorLogger*,Settingsconst*) 72 8 11.11% []
valueFlowContainerSize(TokenList&,SymbolDatabaseconst&,ErrorLogger*,Settingsconst*,std::__1::set ,std::__1::allocator >const&) 148 17 11.48% []
ContainerConditionHandler::parse(Tokenconst*,Settingsconst*)const 60 28 46.66% []
valueFlowSafeFunctions(TokenList&,SymbolDatabaseconst&,Settingsconst*) 85 10 11.76% []
ValueFlow::Value::infoString()const 31 13 41.93% []

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/cppcheck/oss-fuzz/../lib/checkio.cpp [] []
/src/cppcheck/oss-fuzz/../lib/findtoken.h [] []
/src/cppcheck/oss-fuzz/../lib/checkassert.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checkboost.h [] []
/src/cppcheck/oss-fuzz/../lib/checkpostfixoperator.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checkclass.h [] []
/src/cppcheck/oss-fuzz/../lib/clangimport.cpp [] []
/src/cppcheck/oss-fuzz/../lib/importproject.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkstring.h [] []
/src/cppcheck/oss-fuzz/../lib/checksizeof.h [] []
/usr/local/bin/../include/c++/v1/math.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/timer.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkmemoryleak.cpp [] []
/src/cppcheck/oss-fuzz/../lib/programmemory.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checkboost.cpp [] []
/src/cppcheck/oss-fuzz/../lib/token.h ['oss-fuzz-client'] []
/usr/local/bin/../include/c++/v1/iosfwd [] []
/src/cppcheck/oss-fuzz/../lib/token.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkclass.cpp [] []
/src/cppcheck/oss-fuzz/../externals/simplecpp/simplecpp.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/analyzerinfo.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checknullpointer.h [] []
/src/cppcheck/oss-fuzz/../lib/checkunusedvar.cpp [] []
/src/cppcheck/oss-fuzz/../lib/importproject.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/cppcheck.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/utils.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkmemoryleak.h [] []
/src/cppcheck/oss-fuzz/../externals/picojson/picojson.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkvaarg.h [] []
/src/cppcheck/oss-fuzz/../lib/library.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checknullpointer.cpp [] []
/src/cppcheck/oss-fuzz/../lib/color.cpp [] []
/src/cppcheck/oss-fuzz/../lib/library.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/tokenrange.h [] []
/src/cppcheck/oss-fuzz/../lib/infer.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checktype.h [] []
/usr/local/bin/../include/c++/v1/exception [] []
/src/cppcheck/oss-fuzz/../lib/settings.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/settings.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/tokenize.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../externals/tinyxml2/tinyxml2.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/summaries.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkvaarg.cpp [] []
/src/cppcheck/oss-fuzz/../lib/valueptr.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkbool.cpp [] []
/src/cppcheck/oss-fuzz/../lib/pathanalysis.cpp [] []
/src/cppcheck/oss-fuzz/../lib/calculate.h [] []
/src/cppcheck/oss-fuzz/../lib/ctu.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/vfvalue.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkexceptionsafety.cpp [] []
/src/cppcheck/oss-fuzz/../lib/pathmatch.cpp [] []
/src/cppcheck/oss-fuzz/../lib/valueflow.h [] []
/src/cppcheck/oss-fuzz/../lib/symboldatabase.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/infer.h [] []
/src/cppcheck/oss-fuzz/../lib/checkfunctions.cpp [] []
/src/cppcheck/oss-fuzz/../lib/mathlib.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkbufferoverrun.h [] []
/src/cppcheck/oss-fuzz/../lib/sourcelocation.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkcondition.cpp [] []
/src/cppcheck/oss-fuzz/../lib/check64bit.cpp [] []
/src/cppcheck/oss-fuzz/../lib/mathlib.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkbool.h [] []
/src/cppcheck/oss-fuzz/../lib/reverseanalyzer.cpp [] []
/src/cppcheck/oss-fuzz/../lib/errortypes.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/path.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/suppressions.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/platform.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkstl.h [] []
/src/cppcheck/oss-fuzz/../lib/utils.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/ctu.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/preprocessor.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/analyzerinfo.cpp ['oss-fuzz-client'] []
/usr/include/inttypes.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkother.h [] []
/src/cppcheck/oss-fuzz/../lib/keywords.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkunusedfunctions.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/standards.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/forwardanalyzer.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checkpostfixoperator.h [] []
/src/cppcheck/oss-fuzz/../lib/symboldatabase.h ['oss-fuzz-client'] []
/usr/include/stdlib.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/suppressions.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/check.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkassert.h [] []
/src/cppcheck/oss-fuzz/../lib/templatesimplifier.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkunusedfunctions.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/analyzer.h [] []
/src/cppcheck/oss-fuzz/../lib/checkleakautovar.cpp [] []
/src/cppcheck/oss-fuzz/../lib/timer.cpp ['oss-fuzz-client'] []
/usr/local/bin/../include/c++/v1/istream [] []
/src/cppcheck/oss-fuzz/../lib/fwdanalysis.cpp [] []
/src/cppcheck/oss-fuzz/../lib/pathanalysis.h [] []
/src/cppcheck/oss-fuzz/../lib/preprocessor.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkio.h [] []
/src/cppcheck/oss-fuzz/../lib/valueflow.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/errorlogger.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/errortypes.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checksizeof.cpp [] []
/src/cppcheck/oss-fuzz/../lib/vfvalue.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkstl.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checkcondition.h [] []
/src/cppcheck/oss-fuzz/../externals/simplecpp/simplecpp.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/errorlogger.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkstring.cpp [] []
/src/cppcheck/oss-fuzz/../lib/templatesimplifier.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkbufferoverrun.cpp [] []
/src/cppcheck/oss-fuzz/../lib/check.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkautovariables.h [] []
/src/cppcheck/oss-fuzz/../lib/platform.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkleakautovar.h [] []
/src/cppcheck/oss-fuzz/../lib/tokenlist.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/fwdanalysis.h [] []
/usr/local/bin/../include/c++/v1/stdlib.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkersreport.cpp [] []
/src/cppcheck/oss-fuzz/../lib/path.h [] []
/src/cppcheck/oss-fuzz/../lib/astutils.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/smallvector.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkautovariables.cpp [] []
/src/cppcheck/oss-fuzz/../lib/check64bit.h [] []
/src/cppcheck/oss-fuzz/main.cpp ['oss-fuzz-client'] ['oss-fuzz-client']
/src/cppcheck/oss-fuzz/../lib/checkexceptionsafety.h [] []
/src/cppcheck/oss-fuzz/../lib/checkunusedvar.h [] []
/src/cppcheck/oss-fuzz/../lib/programmemory.h [] []
/src/cppcheck/oss-fuzz/../lib/astutils.cpp ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkfunctions.h [] []
/src/cppcheck/oss-fuzz/../lib/checkother.cpp [] []
/usr/include/x86_64-linux-gnu/sys/stat.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/type2.cpp ['oss-fuzz-client'] ['oss-fuzz-client']
/src/cppcheck/oss-fuzz/../lib/tokenize.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checkuninitvar.h [] []
/usr/local/bin/../include/c++/v1/stdexcept ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/checktype.cpp [] []
/src/cppcheck/oss-fuzz/../lib/checkuninitvar.cpp [] []
/src/cppcheck/oss-fuzz/../externals/tinyxml2/tinyxml2.h ['oss-fuzz-client'] []
/src/cppcheck/oss-fuzz/../lib/tokenlist.h ['oss-fuzz-client'] []
/usr/include/ctype.h ['oss-fuzz-client'] []

Directories in report

Directory
/src/cppcheck/oss-fuzz/../externals/tinyxml2/
/src/cppcheck/oss-fuzz/../lib/
/usr/local/bin/../include/c++/v1/
/src/cppcheck/oss-fuzz/../externals/picojson/
/src/cppcheck/oss-fuzz/../externals/simplecpp/
/usr/include/x86_64-linux-gnu/sys/
/src/cppcheck/oss-fuzz/
/usr/include/