Hi Brian,

You're probably right that gcc is getting confused.  I don't see why that
line wouldn't compile.  I'd suggest a few things:

1. Try a const cast on the pointer past it, making it const.

2. Try passing in a const pointer to an XNodeSet .  Is there any reason why
you don't?  I wouldn't think you'd need any of the mutating functions.

3. Do the following, noting that it's a workaround so that it's removed
when the compiler is fixed:

   xNodeSet->nodeset().getLength()

gcc seems to be going through a very flakey period.  Bugs appear, then
disappear, then reappear again with alarming regularity.

By the way, I'm assuming this code compiles using other compilers?

Dave



                                                                                       
                       
                      "Brian Quinlan"                                                  
                       
                      <brian@sweetapp.         To:      <[EMAIL PROTECTED]>     
                       
                      com>                     cc:                                     
                       
                                               Subject: Mysterious solaris build 
problem                      
                      12/14/2001 02:40                                                 
                       
                      PM                                                               
                       
                      Please respond                                                   
                       
                      to xalan-dev                                                     
                       
                                                                                       
                       
                                                                                       
                       




Hi,

I'm trying to build one of my projects that uses Xalan on Solaris. I'm
using
the Xalan 1.2 binaries and the Xerces 1.51 binaries. The first 3300 lines
compile fine but the last 50 line file is having some problems :-)

$ gcc -v
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/specs
gcc version 2.95.2 19991024 (release)

$gcc -g -O2 -Wall -Wstrict-prototypes -fPIC -DSOLARIS
-I/home/brianq/dev/Pya
na/xml-xalan/c/src -I/home/brianq/dev/Pyana/xml-xerces/c/src
-I/mnt/crimper/
home/brianq/python21/include/python2.1 -c Src/XNodeSet2PyObject.cpp -o
build/temp.solaris-2.6-sun4u-2.1/XNodeSet2PyObject.o
Src/XNodeSet2PyObject.cpp: In function `struct PyObject *
XNodeSet2PyObject_new(XNodeSet *)':
Src/XNodeSet2PyObject.cpp:11: no matching function for call to
`XNodeSet::getLength ()'

XNodeSet2PyObject.cpp
---------------------
#include "XNodeSet2PyObject.hpp"

#include "StringUtils.hpp"
#include "XalanNode2PyObjectProxyFactory.hpp"

PyObject *
XNodeSet2PyObject_new(XNodeSet * xNodeSet)
{

        xNodeSet->clone();
        xNodeSet->getLength();
...

Notice how the call to clone is fine but the call to getLength fails. I've
looked at the FAQ for both Xalan and gcc and can't find any information on
this issue. I suspect that gcc might be getting confused about the XNodeSet
class i.e. it might be treating it like one of it's base classes.

Any ideas?

Cheers,
Brian




Reply via email to