Removed covariant clone() implementation to fix ambiguity.
authorcantor <cantor@de75baf8-a10c-0410-a50a-987c0e22f00f>
Fri, 3 Nov 2006 05:05:25 +0000 (05:05 +0000)
committercantor <cantor@de75baf8-a10c-0410-a50a-987c0e22f00f>
Fri, 3 Nov 2006 05:05:25 +0000 (05:05 +0000)
git-svn-id: https://svn.middleware.georgetown.edu/cpp-xmltooling/trunk@188 de75baf8-a10c-0410-a50a-987c0e22f00f

xmltooling/base.h

index ef7bc53..f40c07d 100644 (file)
  */
 #define IMPL_XMLOBJECT_CLONE(cname) \
     cname* clone##cname() const { \
-        return clone(); \
+        return dynamic_cast<cname*>(clone()); \
     } \
-    cname* clone() const { \
+    xmltooling::XMLObject* clone() const { \
         std::auto_ptr<xmltooling::XMLObject> domClone(xmltooling::AbstractDOMCachingXMLObject::clone()); \
         cname##Impl* ret=dynamic_cast<cname##Impl*>(domClone.get()); \
         if (ret) { \