You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Alberto Massari (JIRA)" <xe...@xml.apache.org> on 2009/04/27 15:42:30 UTC

[jira] Assigned: (XERCESC-1867) Linking error about DOMLSSerializerImpl::canSetParameter()/setParameter()/getParameter()

     [ https://issues.apache.org/jira/browse/XERCESC-1867?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alberto Massari reassigned XERCESC-1867:
----------------------------------------

    Assignee: Alberto Massari

> Linking error about DOMLSSerializerImpl::canSetParameter()/setParameter()/getParameter()
> ----------------------------------------------------------------------------------------
>
>                 Key: XERCESC-1867
>                 URL: https://issues.apache.org/jira/browse/XERCESC-1867
>             Project: Xerces-C++
>          Issue Type: Bug
>          Components: Build
>    Affects Versions: 3.1.0
>         Environment: Solaris SPARCv9, Sun CC 
>            Reporter: rucong zhao
>            Assignee: Alberto Massari
>
> The building passed on Solaris SPARCv9 Sun CC, but following linking issues occurs:
> Undefined                       first referenced
> symbol                             in file
> bool xercesc_3_0::DOMLSSerializerImpl::canSetParameter(const unsigned short*,bool)const .libs/XPath2NodeSerializer.o
> bool xercesc_3_0::DOMLSSerializerImpl::canSetParameter(const unsigned short*,const void*)const .libs/XPath2NodeSerializer.o
> void xercesc_3_0::DOMLSSerializerImpl::setParameter(const unsigned short*,bool) .libs/XPath2NodeSerializer.o
> void xercesc_3_0::DOMLSSerializerImpl::setParameter(const unsigned short*,const void*) .libs/XPath2NodeSerializer.o
> const void*xercesc_3_0::DOMLSSerializerImpl::getParameter(const unsigned short*)const .libs/XPath2NodeSerializer.o
> ld: fatal: Symbol referencing errors. No output written to .libs/libxqilla.so.5.0.1
> *** Error code 1
> make: Fatal error: Command failed for target `libxqilla.la'
> Current working directory /export/home/db/rucong/dbxml-2.5.6/xqilla/build
> *** Error code 1 
> George Feinberg had figure out the cause and gave the fix. The cause is type mismatching between DOMLSSerializerImpl.hpp and DOMLSSerializerImpl.cpp:
> In the .hpp file(xercesc/dom/impl/DOMLSSerializerImpl.hpp):
>     virtual void setParameter(const XMLCh* name, const void* value);
> From the .cpp file:
> bool DOMLSSerializerImpl::canSetParameter(const XMLCh* const featName
>                                         , const void*        /*value*/) const 
> Note that the .cpp uses "const XMLCh * const featName" where the .hpp file
> uses "const XMLCh *name"
> The fix is removing the extra "const" from the .cpp file:
> edit xercesc/dom/impl/DOMLSSerializerImpl.cpp
> - bool DOMLSSerializerImpl::canSetParameter(const XMLCh* const featName
> + bool DOMLSSerializerImpl::canSetParameter(const XMLCh* featName
> - bool DOMLSSerializerImpl::canSetParameter(const XMLCh* const featName
> + bool DOMLSSerializerImpl::canSetParameter(const XMLCh* featName
> - void DOMLSSerializerImpl::setParameter(const XMLCh* const featName
> + void DOMLSSerializerImpl::setParameter(const XMLCh* featName
> - void DOMLSSerializerImpl::setParameter(const XMLCh* const featName
> + void DOMLSSerializerImpl::setParameter(const XMLCh* featName
> - const void* DOMLSSerializerImpl::getParameter(const XMLCh* const featName) const
> + const void* DOMLSSerializerImpl::getParameter(const XMLCh* featName) const

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org