From b7197929af1cca15e490703ba3632ae52a348b60 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 14 Oct 2010 12:21:35 +0200 Subject: New mapping for anyType with support for polymorphism --- xsde/cxx/parser/parser-inline.cxx | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'xsde/cxx/parser/parser-inline.cxx') diff --git a/xsde/cxx/parser/parser-inline.cxx b/xsde/cxx/parser/parser-inline.cxx index 5ebf014..f0d9e7b 100644 --- a/xsde/cxx/parser/parser-inline.cxx +++ b/xsde/cxx/parser/parser-inline.cxx @@ -169,12 +169,11 @@ namespace CXX // SemanticGraph::Type& base (e.inherits ().base ()); String fq_base (fq_name (base)); - String real_fq_base (real_fq_name (base)); os << inl << name << "::" << endl << name << " (" << fq_base << "* tiein)" << endl - << ": " << real_fq_base << " (tiein, 0)," << endl + << ": " << fq_base << " (tiein, 0)," << endl << " " << impl << " (0)" << "{"; @@ -186,7 +185,7 @@ namespace CXX os << inl << name << "::" << endl << name << " (" << name << "* impl, void*)" << endl - << ": " << real_fq_base << " (impl, 0)," << endl + << ": " << fq_base << " (impl, 0)," << endl << " " << impl << " (impl)" << "{"; @@ -630,13 +629,10 @@ namespace CXX os << "}"; } - // We have to use "real" (non-typedef) base name in base - // initializer because of some broken compilers (EVC 4.0). - // - String real_fq_base; + String fq_base; if (hb && tiein) - real_fq_base = real_fq_name (c.inherits ().base ()); + fq_base = fq_name (c.inherits ().base ()); // Default c-tor. // @@ -644,8 +640,7 @@ namespace CXX << name << "::" << endl; if (hb && tiein) - os << name << " (" << fq_name (c.inherits ().base ()) << - "* tiein)" << endl; + os << name << " (" << fq_base << "* tiein)" << endl; else os << name << " ()" << endl; @@ -658,7 +653,7 @@ namespace CXX if (hb && tiein) { - os << real_fq_base << " (tiein, 0)"; + os << fq_base << " (tiein, 0)"; comma = true; } @@ -741,7 +736,7 @@ namespace CXX << ": "; if (hb) - os << real_fq_base << " (impl, 0)," << endl; + os << fq_base << " (impl, 0)," << endl; else os << complex_base << " (impl, 0)," << endl; -- cgit v1.1