aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2013-05-25 12:05:57 -0400
committerBoris Kolpackov <boris@codesynthesis.com>2013-05-27 09:35:10 -0400
commit3bce3ea4e3392a910d4fa7cccf47b000ced3a9df (patch)
treef70544e7cb62b5c35822892a0c48d793acb27bac
parent583c6a1689a7c79ab724ba4a65830b97b3cd3bec (diff)
Generate object_traits_impl even for reuse-abstract classes
It is used by query machinery even if it's just an alias for object_traits.
-rw-r--r--odb/header.cxx19
1 files changed, 11 insertions, 8 deletions
diff --git a/odb/header.cxx b/odb/header.cxx
index 6c3e3ec..9af82c8 100644
--- a/odb/header.cxx
+++ b/odb/header.cxx
@@ -310,20 +310,23 @@ traverse_object (type& c)
pointer_query_columns_type_->traverse (c);
}
- // We don't need to generate object_traits_impl for reuse-abstract
- // objects.
- //
- if (reuse_abst)
- return;
-
// object_traits_impl
//
os << "template <>" << endl
<< "class " << exp << "access::object_traits_impl< " << type << ", " <<
"id_common >:" << endl
<< " public access::object_traits< " << type << " >"
- << "{"
- << "public:" << endl;
+ << "{";
+
+ // We don't need to generate anything else for reuse-abstract objects.
+ //
+ if (reuse_abst)
+ {
+ os << "};";
+ return;
+ }
+
+ os << "public:" << endl;
if (options.generate_query ())
{