diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2012-07-30 12:25:16 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2012-07-30 12:25:16 +0200 |
commit | 9c9b8f3a03951e1b7cc489ce0ec018a03520c039 (patch) | |
tree | e801867e11963a13d138a4704d7df67ece226f2d | |
parent | 001b34dc49b140ce689f82579032108e0a2883da (diff) |
Handle regex_format exception at top level
-rw-r--r-- | odb/generator.cxx | 6 | ||||
-rw-r--r-- | odb/plugin.cxx | 7 |
2 files changed, 7 insertions, 6 deletions
diff --git a/odb/generator.cxx b/odb/generator.cxx index 2262165..26efedf 100644 --- a/odb/generator.cxx +++ b/odb/generator.cxx @@ -524,12 +524,6 @@ generate (options const& ops, // throw failed (); } - catch (regex_format const& e) - { - cerr << "error: invalid regex: '" << e.regex () << "': " << - e.description () << endl; - throw failed (); - } catch (semantics::invalid_path const& e) { cerr << "error: '" << e.path () << "' is not a valid filesystem path" diff --git a/odb/plugin.cxx b/odb/plugin.cxx index 73ada7a..8920521 100644 --- a/odb/plugin.cxx +++ b/odb/plugin.cxx @@ -11,6 +11,7 @@ #include <cassert> #include <iostream> +#include <cutl/re.hxx> #include <cutl/fs/path.hxx> #include <odb/pragma.hxx> @@ -137,6 +138,12 @@ gate_callback (void*, void*) generator g; g.generate (*options_, f, *u, file_); } + catch (cutl::re::format const& e) + { + cerr << "error: invalid regex: '" << e.regex () << "': " << + e.description () << endl; + r = 1; + } catch (pragmas_failed const&) { // Diagnostics has aready been issued. |