diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2014-08-18 12:38:56 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2014-08-18 12:38:56 +0200 |
commit | 8d066b8a07f45c517b6f8256eb4e4adbff3709a4 (patch) | |
tree | 67875e8091f1bc49f4967deafe070d8b48acb3d0 | |
parent | bd7846e4f743f252191658e6589cc28d42c47cb4 (diff) |
Diagnose index definition on inverse member
-rw-r--r-- | odb/relational/validator.cxx | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/odb/relational/validator.cxx b/odb/relational/validator.cxx index 3218b57..9705121 100644 --- a/odb/relational/validator.cxx +++ b/odb/relational/validator.cxx @@ -392,7 +392,8 @@ namespace relational { indexes& ins (c.get<indexes> ("index")); - // Make sure index members are not transient or containers. + // Make sure index members are not transient, inverse, or + // containers. // for (indexes::iterator i (ins.begin ()); i != ins.end (); ++i) { @@ -410,6 +411,13 @@ namespace relational valid_ = false; } + if (inverse (m)) + { + error (im.loc) << "index member is an inverse object " << + "pointer" << endl; + valid_ = false; + } + if (container (m)) { error (im.loc) << "index member is a container" << endl; |