diff options
Diffstat (limited to 'odb/relational/pgsql/source.cxx')
-rw-r--r-- | odb/relational/pgsql/source.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/odb/relational/pgsql/source.cxx b/odb/relational/pgsql/source.cxx index c868df2..7bb2f8a 100644 --- a/odb/relational/pgsql/source.cxx +++ b/odb/relational/pgsql/source.cxx @@ -611,7 +611,10 @@ namespace relational semantics::data_member* id (id_member (c)); - if (id != 0 && id->count ("auto")) + type* poly_root (polymorphic (c)); + bool poly_derived (poly_root != 0 && poly_root != &c); + + if (id != 0 && !poly_derived && id->count ("auto")) { os << endl << strlit (" RETURNING " + column_qname (*id)); |