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/processing/inheritance/processor.cxx | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'xsd/processing') diff --git a/xsd/processing/inheritance/processor.cxx b/xsd/processing/inheritance/processor.cxx index d92ea6c..032803b 100644 --- a/xsd/processing/inheritance/processor.cxx +++ b/xsd/processing/inheritance/processor.cxx @@ -242,6 +242,13 @@ namespace Processing Dep const& dep (*i); Type& t (dep.type); + // Ignore ID/IDREF templates. + // + if (!t.named_p () && + (t.is_a () || + t.is_a ())) + continue; + // We won't be able to generate compilable code in case of a // dependency on ourselves (e.g., a member element with // anonymous type that inherits from us). -- cgit v1.1