summaryrefslogtreecommitdiff
path: root/odb/relational/mssql/source.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/relational/mssql/source.cxx')
-rw-r--r--odb/relational/mssql/source.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/odb/relational/mssql/source.cxx b/odb/relational/mssql/source.cxx
index af43d12..0816466 100644
--- a/odb/relational/mssql/source.cxx
+++ b/odb/relational/mssql/source.cxx
@@ -872,7 +872,10 @@ namespace relational
{
semantics::data_member* id (id_member (c));
- if (id == 0 || !auto_ (*id))
+ type* poly_root (polymorphic (c));
+ bool poly_derived (poly_root != 0 && poly_root != &c);
+
+ if (id == 0 || poly_derived || !auto_ (*id))
return;
// If we are a derived type in a polymorphic hierarchy, then