# | Line 44 | Line 44 | |
---|---|---|
44 | #include <iostream> | |
45 | #include <set> | |
46 | #include <fstream> | |
47 | + | #include <sstream> |
48 | #include "utils/StringTokenizer.hpp" | |
49 | #include "utils/Trim.hpp" | |
50 | + | #include "utils/OOPSEException.hpp" |
51 | + | |
52 | /** | |
53 | * @class SimplePreprocessor | |
54 | * @brief A simple preprocessor. | |
# | Line 66 | Line 69 | class SimplePreprocessor { | |
69 | private: | |
70 | bool doPreprocess(const std::string& filename, ostream& os, std::set<std::string>& defineSet, std::stack<bool>& ifStates) { | |
71 | std::ifstream input(filename.c_str()); | |
72 | < | |
72 | > | if (!input.is_open()) { |
73 | > | std::stringstream ss; |
74 | > | ss << "Can not open " << filename << " for preprocessing\n"; |
75 | > | throw OOPSEException(ss.str()); |
76 | > | } |
77 | int lineNo =1; | |
78 | os << "#line " << lineNo << " \"" << filename << "\"\n"; | |
79 | while(input.getline(buffer, bufferSize)) { |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |