Tests/CMakeLib: use cmsys::ifstream

This commit is contained in:
Daniel Pfeifer 2016-09-01 20:02:57 +02:00 committed by Brad King
parent 87e76f8996
commit 3f9c4cdf89
2 changed files with 16 additions and 10 deletions

View File

@ -1,6 +1,6 @@
#include "cmSystemTools.h"
#include <fstream>
#include <cmsys/FStream.hxx>
#include <iostream>
#include <map>
#include <stdlib.h>
@ -26,7 +26,10 @@ public:
};
typedef std::vector<CommandType> TranslationUnitsType;
CompileCommandParser(std::ifstream* input) { this->Input = input; }
CompileCommandParser(std::istream& input)
: Input(input)
{
}
void Parse()
{
@ -109,8 +112,8 @@ private:
void Next()
{
this->C = char(Input->get());
if (this->Input->bad()) {
this->C = char(Input.get());
if (this->Input.bad()) {
ErrorExit("Unexpected end of file.");
}
}
@ -131,13 +134,13 @@ private:
TranslationUnitsType TranslationUnits;
CommandType Command;
std::string String;
std::ifstream* Input;
std::istream& Input;
};
int main()
{
std::ifstream file("compile_commands.json");
CompileCommandParser parser(&file);
cmsys::ifstream file("compile_commands.json");
CompileCommandParser parser(file);
parser.Parse();
for (CompileCommandParser::TranslationUnitsType::const_iterator
it = parser.GetTranslationUnits().begin(),

View File

@ -10,9 +10,12 @@
See the License for more information.
============================================================================*/
#include "cmRST.h"
#include "cmSystemTools.h"
#include <cmsys/FStream.hxx>
#include <iostream>
#include <string>
void reportLine(std::ostream& os, bool ret, std::string const& line, bool eol)
{
if (ret) {
@ -52,8 +55,8 @@ int testRST(int argc, char* argv[])
}
// Compare expected and actual outputs.
std::ifstream e_fin(e_name.c_str());
std::ifstream a_fin(a_name.c_str());
cmsys::ifstream e_fin(e_name.c_str());
cmsys::ifstream a_fin(a_name.c_str());
if (!e_fin) {
std::cerr << "Could not open input " << e_name << std::endl;
return 1;