Add logging of warnings from the flatc compiler (#5289)

This commit is contained in:
Vladimir Glavnyy 2019-04-16 01:34:09 +07:00 committed by Wouter van Oortmerssen
parent d07a3d2f4c
commit 98b9b5a933
2 changed files with 6 additions and 2 deletions

View File

@ -30,8 +30,10 @@ void FlatCompiler::ParseFile(
include_directories.push_back(local_include_directory.c_str());
include_directories.push_back(nullptr);
if (!parser.Parse(contents.c_str(), &include_directories[0],
filename.c_str()))
filename.c_str())) {
Error(parser.error_, false, false);
}
if (!parser.error_.empty()) { Warn(parser.error_, false); }
include_directories.pop_back();
include_directories.pop_back();
}

View File

@ -99,8 +99,10 @@ void DeserializeDoc( std::vector<std::string> &doc,
}
void Parser::Message(const std::string &msg) {
error_ = file_being_parsed_.length() ? AbsolutePath(file_being_parsed_) : "";
if (!error_.empty()) error_ += "\n"; // log all warnings and errors
error_ += file_being_parsed_.length() ? AbsolutePath(file_being_parsed_) : "";
// clang-format off
#ifdef _WIN32 // MSVC alike
error_ +=
"(" + NumToString(line_) + ", " + NumToString(CursorPosition()) + ")";