@@ -62,17 +62,17 @@ static bool checkNullpointerFunctionCallPlausibility(const Function* func, unsig
6262 * @param var variables that the function read / write.
6363 * @param library --library files data
6464 */
65- void CheckNullPointer::parseFunctionCall (const Token &tok, std::list<const Token *> &var, const Library * library)
65+ void CheckNullPointer::parseFunctionCall (const Token &tok, std::list<const Token *> &var, const Library & library)
6666{
6767 if (Token::Match (&tok, " %name% ( )" ) || !tok.tokAt (2 ))
6868 return ;
6969
7070 const std::vector<const Token *> args = getArguments (&tok);
7171
72- if (library || tok.function () != nullptr ) {
72+ if (tok.function () != nullptr ) {
7373 for (int argnr = 1 ; argnr <= args.size (); ++argnr) {
7474 const Token *param = args[argnr - 1 ];
75- if (library && library-> isnullargbad (&tok, argnr) && checkNullpointerFunctionCallPlausibility (tok.function (), argnr))
75+ if (library. isnullargbad (&tok, argnr) && checkNullpointerFunctionCallPlausibility (tok.function (), argnr))
7676 var.push_back (param);
7777 else if (tok.function ()) {
7878 const Variable* argVar = tok.function ()->getArgumentVar (argnr-1 );
@@ -82,8 +82,8 @@ void CheckNullPointer::parseFunctionCall(const Token &tok, std::list<const Token
8282 }
8383 }
8484
85- if (library && library-> formatstr_function (&tok)) {
86- const int formatStringArgNr = library-> formatstr_argno (&tok);
85+ if (library. formatstr_function (&tok)) {
86+ const int formatStringArgNr = library. formatstr_argno (&tok);
8787 if (formatStringArgNr < 0 || formatStringArgNr >= args.size ())
8888 return ;
8989
@@ -95,7 +95,7 @@ void CheckNullPointer::parseFunctionCall(const Token &tok, std::list<const Token
9595 return ;
9696 const std::string &formatString = args[formatStringArgNr]->strValue ();
9797 int argnr = formatStringArgNr + 1 ;
98- const bool scan = library-> formatstr_scan (&tok);
98+ const bool scan = library. formatstr_scan (&tok);
9999
100100 bool percent = false ;
101101 for (std::string::const_iterator i = formatString.cbegin (); i != formatString.cend (); ++i) {
@@ -148,15 +148,15 @@ namespace {
148148 */
149149bool CheckNullPointer::isPointerDeRef (const Token *tok, bool &unknown) const
150150{
151- return isPointerDeRef (tok, unknown, mSettings );
151+ return isPointerDeRef (tok, unknown, * mSettings );
152152}
153153
154- bool CheckNullPointer::isPointerDeRef (const Token *tok, bool &unknown, const Settings * settings)
154+ bool CheckNullPointer::isPointerDeRef (const Token *tok, bool &unknown, const Settings & settings)
155155{
156156 unknown = false ;
157157
158158 // Is pointer used as function parameter?
159- if (Token::Match (tok->previous (), " [(,] %name% [,)]" ) && settings ) {
159+ if (Token::Match (tok->previous (), " [(,] %name% [,)]" )) {
160160 const Token *ftok = tok->previous ();
161161 while (ftok && ftok->str () != " (" ) {
162162 if (ftok->str () == " )" )
@@ -165,7 +165,7 @@ bool CheckNullPointer::isPointerDeRef(const Token *tok, bool &unknown, const Set
165165 }
166166 if (ftok && ftok->previous ()) {
167167 std::list<const Token *> varlist;
168- parseFunctionCall (*ftok->previous (), varlist, & settings-> library );
168+ parseFunctionCall (*ftok->previous (), varlist, settings. library );
169169 if (std::find (varlist.cbegin (), varlist.cend (), tok) != varlist.cend ()) {
170170 return true ;
171171 }
@@ -263,7 +263,7 @@ bool CheckNullPointer::isPointerDeRef(const Token *tok, bool &unknown, const Set
263263}
264264
265265
266- static bool isNullablePointer (const Token* tok, const Settings* settings )
266+ static bool isNullablePointer (const Token* tok)
267267{
268268 if (!tok)
269269 return false ;
@@ -274,7 +274,7 @@ static bool isNullablePointer(const Token* tok, const Settings* settings)
274274 if (astIsSmartPointer (tok))
275275 return true ;
276276 if (Token::simpleMatch (tok, " ." ))
277- return isNullablePointer (tok->astOperand2 (), settings );
277+ return isNullablePointer (tok->astOperand2 ());
278278 if (const Variable* var = tok->variable ()) {
279279 return (var->isPointer () || var->isSmartPointer ());
280280 }
@@ -294,8 +294,8 @@ void CheckNullPointer::nullPointerByDeRefAndChec()
294294 if (Token::Match (tok, " %num%|%char%|%str%" ))
295295 continue ;
296296
297- if (!isNullablePointer (tok, mSettings ) ||
298- (tok->str () == " ." && isNullablePointer (tok->astOperand2 (), mSettings ) && tok->astOperand2 ()->getValue (0 ))) // avoid duplicate warning
297+ if (!isNullablePointer (tok) ||
298+ (tok->str () == " ." && isNullablePointer (tok->astOperand2 ()) && tok->astOperand2 ()->getValue (0 ))) // avoid duplicate warning
299299 continue ;
300300
301301 // Can pointer be NULL?
@@ -367,7 +367,7 @@ void CheckNullPointer::nullConstantDereference()
367367 nullPointerError (tok);
368368 } else { // function call
369369 std::list<const Token *> var;
370- parseFunctionCall (*tok, var, & mSettings ->library );
370+ parseFunctionCall (*tok, var, mSettings ->library );
371371
372372 // is one of the var items a NULL pointer?
373373 for (const Token *vartok : var) {
@@ -551,7 +551,7 @@ void CheckNullPointer::redundantConditionWarning(const Token* tok, const ValueFl
551551}
552552
553553// NOLINTNEXTLINE(readability-non-const-parameter) - used as callback so we need to preserve the signature
554- static bool isUnsafeUsage (const Settings * settings, const Token *vartok, MathLib::bigint *value)
554+ static bool isUnsafeUsage (const Settings & settings, const Token *vartok, MathLib::bigint *value)
555555{
556556 (void )value;
557557 bool unknown = false ;
@@ -580,7 +580,7 @@ namespace
580580 };
581581}
582582
583- Check::FileInfo *CheckNullPointer::getFileInfo (const Tokenizer * tokenizer, const Settings * settings) const
583+ Check::FileInfo *CheckNullPointer::getFileInfo (const Tokenizer & tokenizer, const Settings & settings) const
584584{
585585 const std::list<CTU::FileInfo::UnsafeUsage> &unsafeUsage = CTU::getUnsafeUsage (tokenizer, settings, isUnsafeUsage);
586586 if (unsafeUsage.empty ())
0 commit comments