diff --git a/lib/cli/replcommand.cpp b/lib/cli/replcommand.cpp index 29e3c7074..e22679c99 100644 --- a/lib/cli/replcommand.cpp +++ b/lib/cli/replcommand.cpp @@ -73,11 +73,16 @@ int ReplCommand::Run(const po::variables_map& vm, const std::vector expr = ConfigCompiler::CompileText("", line); + bool has_errors = false; + BOOST_FOREACH(const ConfigCompilerMessage& message, ConfigCompilerContext::GetInstance()->GetMessages()) { + if (message.Error) + has_errors = true; + std::cout << (message.Error ? "Error" : "Warning") << ": " << message.Text << "\n"; } - if (expr) { + if (expr && !has_errors) { Value result = expr->Evaluate(frame); std::cout << ConsoleColorTag(Console_ForegroundCyan); if (!result.IsObject() || result.IsObjectType() || result.IsObjectType())