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-25 12:05:57 -0400
commit6662b543002f45f41e78443ac25f748406a911c4 (patch)
treedafadaa091a8a723fd61286b338fa9116681d656
parentfa05ef6cd48602538df72dfe516892799f275cae (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 ())
{