From 6ca1c8ee64bf7268d194eb15e72d3024a335039d Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 19 Sep 2009 08:20:12 +0200 Subject: Add root exception class Derive all other exceptions from it. --- cutl/compiler/code-stream.hxx | 6 ++++-- cutl/compiler/context.hxx | 5 +++-- cutl/compiler/type-info.hxx | 3 ++- 3 files changed, 9 insertions(+), 5 deletions(-) (limited to 'cutl/compiler') diff --git a/cutl/compiler/code-stream.hxx b/cutl/compiler/code-stream.hxx index bb8305a..a1a5d1a 100644 --- a/cutl/compiler/code-stream.hxx +++ b/cutl/compiler/code-stream.hxx @@ -9,6 +9,8 @@ #include // std::auto_ptr #include +#include + namespace cutl { namespace compiler @@ -54,8 +56,8 @@ namespace cutl typedef typename std::basic_streambuf::traits_type traits_type; typedef typename std::basic_streambuf::int_type int_type; - struct eof {}; - struct sync {}; + class eof: exception {}; + class sync: exception {}; public: from_streambuf_adapter (std::basic_streambuf& stream) diff --git a/cutl/compiler/context.hxx b/cutl/compiler/context.hxx index 4bae010..5f4eb1e 100644 --- a/cutl/compiler/context.hxx +++ b/cutl/compiler/context.hxx @@ -10,6 +10,7 @@ #include #include // std::size_t +#include #include namespace cutl @@ -19,8 +20,8 @@ namespace cutl class context { public: - struct no_entry {}; - struct typing {}; + struct no_entry: exception {}; + struct typing: exception {}; public: context () {} diff --git a/cutl/compiler/type-info.hxx b/cutl/compiler/type-info.hxx index f970067..9fa5593 100644 --- a/cutl/compiler/type-info.hxx +++ b/cutl/compiler/type-info.hxx @@ -10,6 +10,7 @@ #include #include // std::type_info +#include #include #include @@ -76,7 +77,7 @@ namespace cutl // // - class no_type_info {}; + class no_type_info: exception {}; type_info const& lookup (type_id const&); -- cgit v1.1