Parcourir la source

Merge topic 'cleanup-streams'

ed5fa48d cmXMLWriter: use ifstream from KWSys
24ab29b8 Prefer istringstream and ostringstream over stringstream.
ab8b77dd Remove redundant arguments from fstream constructors
eb79fa72 Access std::ios_base with std::ios
Brad King il y a 9 ans
Parent
commit
0e523d0612

+ 1 - 1
Source/CPack/IFW/cmCPackIFWGenerator.cxx

@@ -567,7 +567,7 @@ cmCPackIFWRepository* cmCPackIFWGenerator::GetRepository(
 
 void cmCPackIFWGenerator::WriteGeneratedByToStrim(cmXMLWriter& xout)
 {
-  std::stringstream comment;
+  std::ostringstream comment;
   comment << "Generated by CPack " << CMake_VERSION << " IFW generator "
           << "for QtIFW ";
   if (IsVersionLess("2.0")) {

+ 1 - 1
Source/CPack/IFW/cmCPackIFWPackage.cxx

@@ -422,7 +422,7 @@ void cmCPackIFWPackage::GeneratePackageFile()
   }
   // Write dependencies
   if (!compDepSet.empty()) {
-    std::stringstream dependencies;
+    std::ostringstream dependencies;
     std::set<DependenceStruct>::iterator it = compDepSet.begin();
     dependencies << it->NameWithCompare();
     ++it;

+ 6 - 6
Source/CPack/WiX/cmCPackWIXGenerator.cxx

@@ -90,7 +90,7 @@ bool cmCPackWIXGenerator::RunCandleCommand(std::string const& sourceFile,
     return false;
   }
 
-  std::stringstream command;
+  std::ostringstream command;
   command << QuotePath(executable);
   command << " -nologo";
   command << " -arch " << GetArchitecture();
@@ -115,7 +115,7 @@ bool cmCPackWIXGenerator::RunLightCommand(std::string const& objectFiles)
     return false;
   }
 
-  std::stringstream command;
+  std::ostringstream command;
   command << QuotePath(executable);
   command << " -nologo";
   command << " -out " << QuotePath(packageFileNames.at(0));
@@ -254,7 +254,7 @@ bool cmCPackWIXGenerator::PackageFilesImpl()
 
   std::set<std::string> usedBaseNames;
 
-  std::stringstream objectFiles;
+  std::ostringstream objectFiles;
   for (size_t i = 0; i < this->WixSources.size(); ++i) {
     std::string const& sourceFilename = this->WixSources[i];
 
@@ -265,7 +265,7 @@ bool cmCPackWIXGenerator::PackageFilesImpl()
     std::string uniqueBaseName = baseName;
 
     while (usedBaseNames.find(uniqueBaseName) != usedBaseNames.end()) {
-      std::stringstream tmp;
+      std::ostringstream tmp;
       tmp << baseName << ++counter;
       uniqueBaseName = tmp.str();
     }
@@ -403,7 +403,7 @@ void cmCPackWIXGenerator::AddDefinition(cmWIXSourceWriter& source,
                                         std::string const& name,
                                         std::string const& value)
 {
-  std::stringstream tmp;
+  std::ostringstream tmp;
   tmp << name << "=\"" << value << '"';
 
   source.AddProcessingInstruction(
@@ -1019,7 +1019,7 @@ std::string cmCPackWIXGenerator::CreateNewIdForPath(std::string const& path)
     idPrefix = "H";
   }
 
-  std::stringstream result;
+  std::ostringstream result;
   result << idPrefix << "_" << identifier;
 
   size_t ambiguityCount = ++IdAmbiguityCounter[identifier];

+ 1 - 1
Source/CPack/WiX/cmWIXAccessControlList.cxx

@@ -127,7 +127,7 @@ void cmWIXAccessControlList::EmitBooleanAttribute(std::string const& entry,
                                                   std::string const& name)
 {
   if (!this->IsBooleanAttribute(name)) {
-    std::stringstream message;
+    std::ostringstream message;
     message << "Unknown boolean attribute '" << name << "'";
     this->ReportError(entry, message.str());
   }

+ 1 - 1
Source/CPack/WiX/cmWIXDirectoriesSourceWriter.cxx

@@ -69,7 +69,7 @@ size_t cmWIXDirectoriesSourceWriter::BeginInstallationPrefixDirectory(
     if (i == installRoot.size() - 1) {
       AddAttribute("Id", "INSTALL_ROOT");
     } else {
-      std::stringstream tmp;
+      std::ostringstream tmp;
       tmp << "INSTALL_PREFIX_" << i;
       AddAttribute("Id", tmp.str());
     }

+ 1 - 1
Source/CPack/WiX/cmWIXFilesSourceWriter.cxx

@@ -31,7 +31,7 @@ void cmWIXFilesSourceWriter::EmitShortcut(std::string const& id,
                                           std::string const& shortcutPrefix,
                                           size_t shortcutIndex)
 {
-  std::stringstream shortcutId;
+  std::ostringstream shortcutId;
   shortcutId << shortcutPrefix << id;
 
   if (shortcutIndex > 0) {

+ 1 - 1
Source/CPack/WiX/cmWIXPatchParser.cxx

@@ -88,7 +88,7 @@ void cmWIXPatchParser::StartFragment(const char** attributes)
 
     if (key == "Id") {
       if (Fragments.find(value) != Fragments.end()) {
-        std::stringstream tmp;
+        std::ostringstream tmp;
         tmp << "Invalid reuse of 'CPackWixFragment' 'Id': " << value;
         ReportValidationError(tmp.str());
       }

+ 1 - 1
Source/CPack/cmCPackDragNDropGenerator.cxx

@@ -235,7 +235,7 @@ bool cmCPackDragNDropGenerator::CreateEmptyFile(std::ostringstream& target,
     return false;
   } else {
     // Seek to desired size - 1 byte
-    fout.seekp(size - 1, std::ios_base::beg);
+    fout.seekp(size - 1, std::ios::beg);
     char byte = 0;
     // Write one byte to ensure file grows
     fout.write(&byte, 1);

+ 1 - 1
Source/CTest/cmCTestTestHandler.cxx

@@ -1677,7 +1677,7 @@ void cmCTestTestHandler::GenerateRegressionImages(cmXMLWriter& xml,
           xml.Attribute(measurementfile.match(3).c_str(),
                         measurementfile.match(4));
           xml.Attribute("encoding", "base64");
-          std::stringstream ostr;
+          std::ostringstream ostr;
           for (size_t cc = 0; cc < rlen; cc++) {
             ostr << encoded_buffer[cc];
             if (cc % 60 == 0 && cc) {

+ 2 - 2
Source/cmCLocaleEnvironmentScope.cxx

@@ -45,7 +45,7 @@ void cmCLocaleEnvironmentScope::SetEnv(std::string const& key,
   if (value.empty()) {
     cmSystemTools::UnsetEnv(key.c_str());
   } else {
-    std::stringstream tmp;
+    std::ostringstream tmp;
     tmp << key << "=" << value;
     cmSystemTools::PutEnv(tmp.str());
   }
@@ -55,7 +55,7 @@ cmCLocaleEnvironmentScope::~cmCLocaleEnvironmentScope()
 {
   for (backup_map_t::const_iterator i = this->EnvironmentBackup.begin();
        i != this->EnvironmentBackup.end(); ++i) {
-    std::stringstream tmp;
+    std::ostringstream tmp;
     tmp << i->first << "=" << i->second;
     cmSystemTools::PutEnv(tmp.str());
   }

+ 1 - 1
Source/cmCMakeHostSystemInformationCommand.cxx

@@ -84,7 +84,7 @@ bool cmCMakeHostSystemInformationCommand::GetValue(
 std::string cmCMakeHostSystemInformationCommand::ValueToString(
   size_t value) const
 {
-  std::stringstream tmp;
+  std::ostringstream tmp;
   tmp << value;
   return tmp.str();
 }

+ 2 - 2
Source/cmDependsFortran.cxx

@@ -633,8 +633,8 @@ bool cmDependsFortran::ModulesDiffer(const char* modFile,
   cmsys::ifstream finModFile(modFile, std::ios::in | std::ios::binary);
   cmsys::ifstream finStampFile(stampFile, std::ios::in | std::ios::binary);
 #else
-  cmsys::ifstream finModFile(modFile, std::ios::in);
-  cmsys::ifstream finStampFile(stampFile, std::ios::in);
+  cmsys::ifstream finModFile(modFile);
+  cmsys::ifstream finStampFile(stampFile);
 #endif
   if (!finModFile || !finStampFile) {
     // At least one of the files does not exist.  The modules differ.

+ 1 - 1
Source/cmDocumentation.cxx

@@ -140,7 +140,7 @@ bool cmDocumentation::PrintRequestedDocumentation(std::ostream& os)
     cmsys::ofstream* fout = 0;
     std::ostream* s = &os;
     if (!i->Filename.empty()) {
-      fout = new cmsys::ofstream(i->Filename.c_str(), std::ios::out);
+      fout = new cmsys::ofstream(i->Filename.c_str());
       if (fout) {
         s = fout;
       } else {

+ 2 - 2
Source/cmExtraEclipseCDT4Generator.cxx

@@ -311,7 +311,7 @@ void cmExtraEclipseCDT4Generator::CreateProjectFile()
                    "false");
 
   // set project specific environment
-  std::stringstream environment;
+  std::ostringstream environment;
   environment << "VERBOSE=1|CMAKE_NO_VERBOSE=1|"; // verbose Makefile output
   // set vsvars32.bat environment available at CMake time,
   //   but not necessarily when eclipse is open
@@ -341,7 +341,7 @@ void cmExtraEclipseCDT4Generator::CreateProjectFile()
   AppendDictionary(xml, "org.eclipse.cdt.make.core.autoBuildTarget", "all");
 
   // set error parsers
-  std::stringstream errorOutputParser;
+  std::ostringstream errorOutputParser;
 
   if (compilerId == "MSVC") {
     errorOutputParser << "org.eclipse.cdt.core.VCErrorParser;";

+ 2 - 2
Source/cmFileCommand.cxx

@@ -257,7 +257,7 @@ bool cmFileCommand::HandleReadCommand(std::vector<std::string> const& args)
     fileName.c_str(), std::ios::in |
       (hexOutputArg.IsEnabled() ? std::ios::binary : std::ios::in));
 #else
-  cmsys::ifstream file(fileName.c_str(), std::ios::in);
+  cmsys::ifstream file(fileName.c_str());
 #endif
 
   if (!file) {
@@ -526,7 +526,7 @@ bool cmFileCommand::HandleStringsCommand(std::vector<std::string> const& args)
 #if defined(_WIN32) || defined(__CYGWIN__)
   cmsys::ifstream fin(fileName.c_str(), std::ios::in | std::ios::binary);
 #else
-  cmsys::ifstream fin(fileName.c_str(), std::ios::in);
+  cmsys::ifstream fin(fileName.c_str());
 #endif
   if (!fin) {
     std::ostringstream e;

+ 1 - 1
Source/cmGeneratedFileStream.cxx

@@ -56,7 +56,7 @@ cmGeneratedFileStream& cmGeneratedFileStream::Open(const char* name,
     this->Stream::open(this->TempName.c_str(),
                        std::ios::out | std::ios::binary);
   } else {
-    this->Stream::open(this->TempName.c_str(), std::ios::out);
+    this->Stream::open(this->TempName.c_str());
   }
 
   // Check if the file opened.

+ 2 - 2
Source/cmGeneratorTarget.cxx

@@ -1527,7 +1527,7 @@ public:
       if (item.find("::") != std::string::npos) {
         bool noMessage = false;
         cmake::MessageType messageType = cmake::FATAL_ERROR;
-        std::stringstream e;
+        std::ostringstream e;
         switch (this->Target->GetLocalGenerator()->GetPolicyStatus(
           cmPolicies::CMP0028)) {
           case cmPolicies::WARN: {
@@ -1628,7 +1628,7 @@ public:
     if (this->Preferred.empty()) {
       return "";
     } else if (this->Preferred.size() > 1) {
-      std::stringstream e;
+      std::ostringstream e;
       e << "Target " << this->Target->GetName()
         << " contains multiple languages with the highest linker preference"
         << " (" << this->Preference << "):\n";

+ 1 - 1
Source/cmGlobalGenerator.cxx

@@ -2571,7 +2571,7 @@ void cmGlobalGenerator::CheckRuleHashes(std::string const& pfile,
 #if defined(_WIN32) || defined(__CYGWIN__)
   cmsys::ifstream fin(pfile.c_str(), std::ios::in | std::ios::binary);
 #else
-  cmsys::ifstream fin(pfile.c_str(), std::ios::in);
+  cmsys::ifstream fin(pfile.c_str());
 #endif
   if (!fin) {
     return;

+ 2 - 2
Source/cmGlobalNinjaGenerator.cxx

@@ -513,8 +513,8 @@ void cmGlobalNinjaGenerator::Generate()
   this->WriteBuiltinTargets(*this->BuildFileStream);
 
   if (cmSystemTools::GetErrorOccuredFlag()) {
-    this->RulesFileStream->setstate(std::ios_base::failbit);
-    this->BuildFileStream->setstate(std::ios_base::failbit);
+    this->RulesFileStream->setstate(std::ios::failbit);
+    this->BuildFileStream->setstate(std::ios::failbit);
   }
 
   this->CloseCompileCommandsStream();

+ 1 - 1
Source/cmInstallTargetGenerator.cxx

@@ -623,7 +623,7 @@ void cmInstallTargetGenerator::AddChrpathPatchRule(
     std::string darwin_major_version_s =
       mf->GetSafeDefinition("DARWIN_MAJOR_VERSION");
 
-    std::stringstream ss(darwin_major_version_s);
+    std::istringstream ss(darwin_major_version_s);
     int darwin_major_version;
     ss >> darwin_major_version;
     if (!ss.fail() && darwin_major_version <= 9 &&

+ 1 - 1
Source/cmMakefile.cxx

@@ -3459,7 +3459,7 @@ int cmMakefile::ConfigureFile(const char* infile, const char* outfile,
     }
   } else {
     std::string newLineCharacters;
-    std::ios_base::openmode omode = std::ios_base::out | std::ios_base::trunc;
+    std::ios::openmode omode = std::ios::out | std::ios::trunc;
     if (newLine.IsValid()) {
       newLineCharacters = newLine.GetCharacters();
       omode |= std::ios::binary;

+ 3 - 3
Source/cmQtAutoGeneratorInitializer.cxx

@@ -464,7 +464,7 @@ static std::string cmQtAutoGeneratorsStripCR(std::string const& line)
 static std::string ReadAll(const std::string& filename)
 {
   cmsys::ifstream file(filename.c_str());
-  std::stringstream stream;
+  std::ostringstream stream;
   stream << file.rdbuf();
   file.close();
   return stream.str();
@@ -508,7 +508,7 @@ static std::string ListQt5RccInputs(cmSourceFile* sf,
   bool result = cmSystemTools::RunSingleCommand(
     command, &rccStdOut, &rccStdErr, &retVal, 0, cmSystemTools::OUTPUT_NONE);
   if (!result || retVal) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "AUTOGEN: error: Rcc list process for " << sf->GetFullPath()
         << " failed:\n"
         << rccStdOut << "\n"
@@ -538,7 +538,7 @@ static std::string ListQt5RccInputs(cmSourceFile* sf,
 
         std::string::size_type pos = eline.find(searchString);
         if (pos == std::string::npos) {
-          std::stringstream err;
+          std::ostringstream err;
           err << "AUTOGEN: error: Rcc lists unparsable output " << eline
               << std::endl;
           std::cerr << err.str();

+ 29 - 29
Source/cmQtAutoGenerators.cxx

@@ -432,7 +432,7 @@ void cmQtAutoGenerators::Init()
 static std::string ReadAll(const std::string& filename)
 {
   cmsys::ifstream file(filename.c_str());
-  std::stringstream stream;
+  std::ostringstream stream;
   stream << file.rdbuf();
   file.close();
   return stream.str();
@@ -477,7 +477,7 @@ bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile)
       skipUic ? skippedUis : includedUis;
     const std::string& absFilename = *it;
     if (this->Verbose) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: Checking " << absFilename << std::endl;
       this->LogInfo(err.str());
     }
@@ -499,7 +499,7 @@ bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile)
           uicSkipped.end()) {
         const std::string& absFilename = *it;
         if (this->Verbose) {
-          std::stringstream err;
+          std::ostringstream err;
           err << "AUTOGEN: Checking " << absFilename << std::endl;
           this->LogInfo(err.str());
         }
@@ -527,19 +527,19 @@ bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile)
   }
 
   if (this->RunMocFailed) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "moc failed..." << std::endl;
     this->LogError(err.str());
     return false;
   }
   if (this->RunUicFailed) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "uic failed..." << std::endl;
     this->LogError(err.str());
     return false;
   }
   if (this->RunRccFailed) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "rcc failed..." << std::endl;
     this->LogError(err.str());
     return false;
@@ -560,7 +560,7 @@ void cmQtAutoGenerators::ParseCppFile(
 
   const std::string contentsString = ReadAll(absFilename);
   if (contentsString.empty()) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
         << std::endl;
     this->LogError(err.str());
@@ -620,7 +620,7 @@ void cmQtAutoGenerators::ParseCppFile(
             ownMocHeaderFile = headerToMoc;
           }
         } else {
-          std::stringstream err;
+          std::ostringstream err;
           err << "AUTOGEN: error: " << absFilename << ": The file "
               << "includes the moc file \"" << currentMoc << "\", "
               << "but could not find header \"" << basename << '{'
@@ -644,7 +644,7 @@ void cmQtAutoGenerators::ParseCppFile(
             // this is for KDE4 compatibility:
             fileToMoc = headerToMoc;
             if (!requiresMoc && basename == scannedFileBasename) {
-              std::stringstream err;
+              std::ostringstream err;
               err << "AUTOGEN: warning: " << absFilename
                   << ": The file "
                      "includes the moc file \""
@@ -656,7 +656,7 @@ void cmQtAutoGenerators::ParseCppFile(
                   << std::endl;
               this->LogError(err.str());
             } else {
-              std::stringstream err;
+              std::ostringstream err;
               err << "AUTOGEN: warning: " << absFilename
                   << ": The file "
                      "includes the moc file \""
@@ -670,7 +670,7 @@ void cmQtAutoGenerators::ParseCppFile(
               this->LogError(err.str());
             }
           } else {
-            std::stringstream err;
+            std::ostringstream err;
             err << "AUTOGEN: error: " << absFilename
                 << ": The file "
                    "includes the moc file \""
@@ -699,7 +699,7 @@ void cmQtAutoGenerators::ParseCppFile(
   if (!dotMocIncluded && requiresMoc) {
     if (mocUnderscoreIncluded) {
       // this is for KDE4 compatibility:
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: warning: " << absFilename << ": The file "
           << "contains a " << macroName << " macro, but does not "
                                            "include "
@@ -717,7 +717,7 @@ void cmQtAutoGenerators::ParseCppFile(
       includedMocs.erase(ownMocHeaderFile);
     } else {
       // otherwise always error out since it will not compile:
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: error: " << absFilename << ": The file "
           << "contains a " << macroName << " macro, but does not "
                                            "include "
@@ -742,7 +742,7 @@ void cmQtAutoGenerators::StrictParseCppFile(
 
   const std::string contentsString = ReadAll(absFilename);
   if (contentsString.empty()) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
         << std::endl;
     this->LogError(err.str());
@@ -791,7 +791,7 @@ void cmQtAutoGenerators::StrictParseCppFile(
         if (!headerToMoc.empty()) {
           includedMocs[headerToMoc] = currentMoc;
         } else {
-          std::stringstream err;
+          std::ostringstream err;
           err << "AUTOGEN: error: " << absFilename << " The file "
               << "includes the moc file \"" << currentMoc << "\", "
               << "but could not find header \"" << basename << '{'
@@ -807,7 +807,7 @@ void cmQtAutoGenerators::StrictParseCppFile(
         }
       } else {
         if (basename != scannedFileBasename) {
-          std::stringstream err;
+          std::ostringstream err;
           err << "AUTOGEN: error: " << absFilename
               << ": The file "
                  "includes the moc file \""
@@ -835,7 +835,7 @@ void cmQtAutoGenerators::StrictParseCppFile(
   std::string macroName;
   if (!dotMocIncluded && requiresMocing(contentsString, macroName)) {
     // otherwise always error out since it will not compile:
-    std::stringstream err;
+    std::ostringstream err;
     err << "AUTOGEN: error: " << absFilename << ": The file "
         << "contains a " << macroName << " macro, but does not include "
         << "\"" << scannedFileBasename << ".moc\" !\n"
@@ -854,7 +854,7 @@ void cmQtAutoGenerators::ParseForUic(
   }
   const std::string contentsString = ReadAll(absFilename);
   if (contentsString.empty()) {
-    std::stringstream err;
+    std::ostringstream err;
     err << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
         << std::endl;
     this->LogError(err.str());
@@ -942,7 +942,7 @@ void cmQtAutoGenerators::ParseHeaders(
     if (!this->MocExecutable.empty() &&
         includedMocs.find(headerName) == includedMocs.end()) {
       if (this->Verbose) {
-        std::stringstream err;
+        std::ostringstream err;
         err << "AUTOGEN: Checking " << headerName << std::endl;
         this->LogInfo(err.str());
       }
@@ -972,7 +972,7 @@ bool cmQtAutoGenerators::GenerateMocFiles(
     std::map<std::string, std::string> mergedMocs(includedMocs);
     mergedMocs.insert(notIncludedMocs.begin(), notIncludedMocs.end());
     if (this->NameCollisionTest(mergedMocs, collisions)) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: error: "
              "The same moc file will be generated "
              "from different sources."
@@ -1013,7 +1013,7 @@ bool cmQtAutoGenerators::GenerateMocFiles(
   // compose _automoc.cpp content
   std::string automocSource;
   {
-    std::stringstream outStream;
+    std::ostringstream outStream;
     outStream << "/* This file is autogenerated, do not edit*/\n";
     if (notIncludedMocs.empty()) {
       outStream << "enum some_compilers { need_more_than_nothing };\n";
@@ -1035,7 +1035,7 @@ bool cmQtAutoGenerators::GenerateMocFiles(
     if (oldContents == automocSource) {
       // nothing changed: don't touch the _automoc.cpp file
       if (this->Verbose) {
-        std::stringstream err;
+        std::ostringstream err;
         err << "AUTOGEN: " << this->OutMocCppFilenameRel << " still up to date"
             << std::endl;
         this->LogInfo(err.str());
@@ -1106,7 +1106,7 @@ bool cmQtAutoGenerators::GenerateMoc(const std::string& sourceFile,
     bool result =
       cmSystemTools::RunSingleCommand(command, &output, &output, &retVal);
     if (!result || retVal) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: error: process for " << mocFilePath << " failed:\n"
           << output << std::endl;
       this->LogError(err.str());
@@ -1147,7 +1147,7 @@ bool cmQtAutoGenerators::GenerateUiFiles(
   {
     std::multimap<std::string, std::string> collisions;
     if (this->NameCollisionTest(testMap, collisions)) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: error: The same ui_NAME.h file will be generated "
              "from different sources."
           << std::endl
@@ -1223,7 +1223,7 @@ bool cmQtAutoGenerators::GenerateUi(const std::string& realName,
     bool result =
       cmSystemTools::RunSingleCommand(command, &output, &output, &retVal);
     if (!result || retVal) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOUIC: error: process for " << uiOutputFile
           << " needed by\n \"" << realName << "\"\nfailed:\n"
           << output << std::endl;
@@ -1275,7 +1275,7 @@ bool cmQtAutoGenerators::GenerateQrcFiles()
   {
     std::multimap<std::string, std::string> collisions;
     if (this->NameCollisionTest(qrcGenMap, collisions)) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTOGEN: error: The same qrc_NAME.cpp file"
              " will be generated from different sources."
           << std::endl
@@ -1344,7 +1344,7 @@ bool cmQtAutoGenerators::GenerateQrc(const std::string& qrcInputFile,
     bool result =
       cmSystemTools::RunSingleCommand(command, &output, &output, &retVal);
     if (!result || retVal) {
-      std::stringstream err;
+      std::ostringstream err;
       err << "AUTORCC: error: process for " << qrcOutputFile << " failed:\n"
           << output << std::endl;
       this->LogError(err.str());
@@ -1435,7 +1435,7 @@ void cmQtAutoGenerators::NameCollisionLog(
 {
   typedef std::multimap<std::string, std::string>::const_iterator Iter;
 
-  std::stringstream err;
+  std::ostringstream err;
   // Add message
   err << message;
   // Append collision list
@@ -1457,7 +1457,7 @@ void cmQtAutoGenerators::LogError(const std::string& message)
 
 void cmQtAutoGenerators::LogCommand(const std::vector<std::string>& command)
 {
-  std::stringstream sbuf;
+  std::ostringstream sbuf;
   for (std::vector<std::string>::const_iterator cmdIt = command.begin();
        cmdIt != command.end(); ++cmdIt) {
     if (cmdIt != command.begin()) {

+ 1 - 1
Source/cmTimestamp.cxx

@@ -152,7 +152,7 @@ std::string cmTimestamp::AddTimestampComponent(char flag,
         return std::string();
       }
 
-      std::stringstream ss;
+      std::ostringstream ss;
       ss << static_cast<long int>(difftime(timeT, unixEpoch));
       return ss.str();
     }

+ 2 - 2
Source/cmXMLWriter.cxx

@@ -14,7 +14,7 @@
 #include "cmXMLSafe.h"
 
 #include <cassert>
-#include <fstream>
+#include <cmsys/FStream.hxx>
 
 cmXMLWriter::cmXMLWriter(std::ostream& output, std::size_t level)
   : Output(output)
@@ -107,7 +107,7 @@ void cmXMLWriter::ProcessingInstruction(const char* target, const char* data)
 void cmXMLWriter::FragmentFile(const char* fname)
 {
   this->CloseStartElement();
-  std::ifstream fin(fname, std::ios::in | std::ios::binary);
+  cmsys::ifstream fin(fname, std::ios::in | std::ios::binary);
   this->Output << fin.rdbuf();
 }
 

+ 1 - 1
Source/cmake.cxx

@@ -2094,7 +2094,7 @@ static bool cmakeCheckStampFile(const char* stampName)
 #if defined(_WIN32) || defined(__CYGWIN__)
   cmsys::ifstream fin(stampDepends.c_str(), std::ios::in | std::ios::binary);
 #else
-  cmsys::ifstream fin(stampDepends.c_str(), std::ios::in);
+  cmsys::ifstream fin(stampDepends.c_str());
 #endif
   if (!fin) {
     // The stamp dependencies file cannot be read.  Just assume the

+ 1 - 1
Source/cmcldeps.cxx

@@ -213,7 +213,7 @@ static int process(const std::string& srcfilename, const std::string& dfile,
                                     dir.c_str(), cmSystemTools::OUTPUT_NONE);
 
   // process the include directives and output everything else
-  std::stringstream ss(output);
+  std::istringstream ss(output);
   std::string line;
   std::vector<std::string> includes;
   bool isFirstLine = true; // cl prints always first the source filename

+ 1 - 2
Tests/AliasTarget/commandgenerator.cpp

@@ -5,8 +5,7 @@
 
 int main(int argc, char** argv)
 {
-  std::fstream fout;
-  fout.open("commandoutput.h", std::ios::out);
+  std::ofstream fout("commandoutput.h");
   if (!fout)
     return 1;
   fout << "#define COMMANDOUTPUT_DEFINE\n";

+ 1 - 2
Tests/AliasTarget/targetgenerator.cpp

@@ -3,8 +3,7 @@
 
 int main(int argc, char** argv)
 {
-  std::fstream fout;
-  fout.open("targetoutput.h", std::ios::out);
+  std::ofstream fout("targetoutput.h");
   if (!fout)
     return 1;
   fout << "#define TARGETOUTPUT_DEFINE\n";