mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-03 04:21:13 +00:00
Add flatc '--cpp_std' switch (#5656)
* Add flatc '--cpp_std' switch and sandbox for C++17 code generator - Added 'flac --cpp_std legacy' for compatibility with old compilers (VS2010); - Added experimental switch 'flac --cpp_std c++17' for future development; - Added C++17 sandbox test_cpp17.cpp; - C++ code generator generates enums with explicit underlying type to avoid problems with the forward and backward schema compatibility; - Adjusted CMakeLists.txt, CI and generate code scripts to support of introduced '--cpp_std'; * Fix --cpp_std values: c++0x, c++11, c++17 * Add 'cpp::CppStandard' enum * Add testing engine into test_cpp17 * Rebase to upstream/master * Set default '--cpp-std C++0x' * Fix code generation (--cpp_std C++11) in CMakeLists.txt - Fix dependency declaration of grpctest target * Revert --cpp-std for the tests from explicit C++11 to flatc default value (C++0x)
This commit is contained in:
committed by
Wouter van Oortmerssen
parent
3e8f15df90
commit
44bf719883
@@ -30,10 +30,20 @@ static void Error(const flatbuffers::FlatCompiler *flatc,
|
||||
const std::string &err, bool usage, bool show_exe_name) {
|
||||
if (show_exe_name) { printf("%s: ", g_program_name); }
|
||||
printf("error: %s\n", err.c_str());
|
||||
if (usage) { printf("%s", flatc->GetUsageString(g_program_name).c_str()); }
|
||||
if (usage && flatc) { printf("%s", flatc->GetUsageString(g_program_name).c_str()); }
|
||||
exit(1);
|
||||
}
|
||||
|
||||
namespace flatbuffers {
|
||||
void LogCompilerWarn(const std::string &warn) {
|
||||
Warn(static_cast<const flatbuffers::FlatCompiler *>(nullptr), warn, true);
|
||||
}
|
||||
void LogCompilerError(const std::string &err) {
|
||||
Error(static_cast<const flatbuffers::FlatCompiler *>(nullptr), err, false,
|
||||
true);
|
||||
}
|
||||
} // namespace flatbuffers
|
||||
|
||||
int main(int argc, const char *argv[]) {
|
||||
// Prevent Appveyor-CI hangs.
|
||||
flatbuffers::SetupDefaultCRTReportMode();
|
||||
|
||||
Reference in New Issue
Block a user