From 4d202fe107036830188ba981e4f4321d2210d6ee Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 16 Jun 2010 11:21:02 +0200 Subject: Handle ID/IDREF templates in inheritance and polymorphism --- xsd/cxx/tree/elements.cxx | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'xsd/cxx') diff --git a/xsd/cxx/tree/elements.cxx b/xsd/cxx/tree/elements.cxx index d5f03c0..04bff38 100644 --- a/xsd/cxx/tree/elements.cxx +++ b/xsd/cxx/tree/elements.cxx @@ -604,6 +604,13 @@ namespace CXX Boolean Context:: polymorphic_p (SemanticGraph::Type& t) { + // ID/IDREF templates cannot be polymorphic. + // + if (!t.named_p () && + (t.is_a () || + t.is_a ())) + return false; + if (polymorphic_all) { Boolean fund (false); -- cgit v1.1