@@ -850,17 +850,6 @@ unsigned int CppCheck::check(const FileSettings &fs)
850850 return returnValue;
851851}
852852
853- unsigned int CppCheck::checkBuffer (const FileWithDetails &file, const std::string &cfgname, int fileIndex, const uint8_t * data, std::size_t size)
854- {
855- return checkInternal (file, cfgname, fileIndex,
856- [&file, data, size](std::vector<std::string>& files) {
857- return simplecpp::TokenList{data, size, files, file.spath ()};
858- },
859- [&file, data, size](std::vector<std::string>& files, simplecpp::OutputList* outputList) {
860- return simplecpp::TokenList{data, size, files, file.spath (), outputList};
861- });
862- }
863-
864853std::size_t CppCheck::calculateHash (const Preprocessor& preprocessor, const simplecpp::TokenList& tokens, const std::string& filePath) const
865854{
866855 std::ostringstream toolinfo;
@@ -882,18 +871,23 @@ std::size_t CppCheck::calculateHash(const Preprocessor& preprocessor, const simp
882871 return preprocessor.calculateHash (tokens, toolinfo.str ());
883872}
884873
874+ unsigned int CppCheck::checkBuffer (const FileWithDetails &file, const std::string &cfgname, int fileIndex, const uint8_t * data, std::size_t size)
875+ {
876+ const auto f = [&file, data, size](std::vector<std::string>& files, simplecpp::OutputList* outputList) {
877+ return simplecpp::TokenList{data, size, files, file.spath (), outputList};
878+ };
879+ return checkInternal (file, cfgname, fileIndex, f);
880+ }
881+
885882unsigned int CppCheck::checkFile (const FileWithDetails& file, const std::string &cfgname, int fileIndex)
886883{
887- return checkInternal (file, cfgname, fileIndex,
888- [&file](std::vector<std::string>& files) {
889- return simplecpp::TokenList{file.spath (), files};
890- },
891- [&file](std::vector<std::string>& files, simplecpp::OutputList* outputList) {
884+ const auto f = [&file](std::vector<std::string>& files, simplecpp::OutputList* outputList) {
892885 return simplecpp::TokenList{file.spath (), files, outputList};
893- });
886+ };
887+ return checkInternal (file, cfgname, fileIndex, f);
894888}
895889
896- unsigned int CppCheck::checkInternal (const FileWithDetails& file, const std::string &cfgname, int fileIndex, const CreateTokensFn& createTokens, const CreateTokenListFn& createTokenList)
890+ unsigned int CppCheck::checkInternal (const FileWithDetails& file, const std::string &cfgname, int fileIndex, const CreateTokenListFn& createTokenList)
897891{
898892 // TODO: move to constructor when CppCheck no longer owns the settings
899893 if (mSettings .checks .isEnabled (Checks::unusedFunction) && !mUnusedFunctionsCheck )
@@ -945,7 +939,7 @@ unsigned int CppCheck::checkInternal(const FileWithDetails& file, const std::str
945939 // markup files are special and do not adhere to the enforced language
946940 TokenList tokenlist{mSettings , Standards::Language::C};
947941 std::vector<std::string> files;
948- simplecpp::TokenList tokens = createTokens (files);
942+ simplecpp::TokenList tokens = createTokenList (files, nullptr );
949943 if (analyzerInformation) {
950944 const Preprocessor preprocessor (mSettings , mErrorLogger , file.lang ());
951945 hash = calculateHash (preprocessor, tokens);
0 commit comments