@@ -900,6 +900,8 @@ namespace
900900 /* * data for multifile checking */
901901 class MyFileInfo : public Check ::FileInfo {
902902 public:
903+ explicit MyFileInfo (std::string f0) : Check::FileInfo(std::move(f0)) {}
904+
903905 using Check::FileInfo::FileInfo;
904906 /* * unsafe array index usage */
905907 std::list<CTU::FileInfo::UnsafeUsage> unsafeArrayIndex;
@@ -952,7 +954,7 @@ bool CheckBufferOverrunImpl::isCtuUnsafePointerArith(const Settings &settings, c
952954}
953955
954956/* * @brief Parse current TU and extract file info */
955- Check::FileInfo *CheckBufferOverrun::getFileInfo (const Tokenizer &tokenizer, const Settings &settings, const std::string& /* currentConfig*/ ) const
957+ const Check::FileInfo *CheckBufferOverrun::getFileInfo (const Tokenizer &tokenizer, const Settings &settings, const std::string& /* currentConfig*/ ) const
956958{
957959 const std::list<CTU::FileInfo::UnsafeUsage> &unsafeArrayIndex = CTU::getUnsafeUsage (tokenizer, settings, CheckBufferOverrunImpl::isCtuUnsafeArrayIndex);
958960 const std::list<CTU::FileInfo::UnsafeUsage> &unsafePointerArith = CTU::getUnsafeUsage (tokenizer, settings, CheckBufferOverrunImpl::isCtuUnsafePointerArith);
@@ -965,12 +967,12 @@ Check::FileInfo *CheckBufferOverrun::getFileInfo(const Tokenizer &tokenizer, con
965967 return fileInfo;
966968}
967969
968- Check::FileInfo * CheckBufferOverrun::loadFileInfoFromXml (const tinyxml2::XMLElement *xmlElement) const
970+ const Check::FileInfo * CheckBufferOverrun::loadFileInfoFromXml (const tinyxml2::XMLElement *xmlElement, const std::string& file0 ) const
969971{
970972 const std::string arrayIndex (" array-index" );
971973 const std::string pointerArith (" pointer-arith" );
972974
973- auto *fileInfo = new MyFileInfo;
975+ auto *fileInfo = new MyFileInfo (file0) ;
974976 for (const tinyxml2::XMLElement *e = xmlElement->FirstChildElement (); e; e = e->NextSiblingElement ()) {
975977 const char * name = e->Name ();
976978 if (name == arrayIndex)
@@ -988,7 +990,7 @@ Check::FileInfo * CheckBufferOverrun::loadFileInfoFromXml(const tinyxml2::XMLEle
988990}
989991
990992/* * @brief Analyse all file infos for all TU */
991- bool CheckBufferOverrun::analyseWholeProgram (const CTU::FileInfo &ctu, const std::list<Check::FileInfo*> &fileInfo, const Settings& settings, ErrorLogger &errorLogger)
993+ bool CheckBufferOverrun::analyseWholeProgram (const CTU::FileInfo &ctu, const std::list<const Check::FileInfo*> &fileInfo, const Settings& settings, ErrorLogger &errorLogger)
992994{
993995 CheckBufferOverrunImpl dummy (nullptr , settings, &errorLogger);
994996 dummy.
0 commit comments