Hi Allen,

The old Xerces you were using didn't use C++ namespaces; 2.3.0 does.  See
http://xml.apache.org/xerces-c/faq-build.html#faq-1.

Cheers,
Neil
Neil Graham
XML Parser Development
IBM Toronto Lab
Phone:  905-413-3519, T/L 969-3519
E-mail:  [EMAIL PROTECTED]




                                                                                       
                                                
                      "Allen Williams"                                                 
                                                
                      <[EMAIL PROTECTED]>          To:       "Xerces Dev Help" <[EMAIL 
PROTECTED]>                               
                                               cc:                                     
                                                
                      09/21/2003 07:00         Subject:  Not seeing xerces classes     
                                                
                      PM                                                               
                                                
                      Please respond to                                                
                                                
                      xerces-c-dev                                                     
                                                
                                                                                       
                                                
                                                                                       
                                                



This is one of the strangest problems I've ever had:

In my header, I have:

#include <xercesc/dom/DOM.hpp>
#include <xercesc/sax/HandlerBase.hpp>
#include <xercesc/sax/ErrorHandler.hpp>
#include <xercesc/parsers/XercesDOMParser.hpp>
#include <xercesc/util/PlatformUtils.hpp>

class CConfiguration
    {
 public:
    // Setup and initialization
    CConfiguration(char *XMLConfigurationFileName= NULL);
    ~CConfiguration();
    void SetFile(char* FileName=NULL);
    // Init() actually does the parsing parsing
    int Init(char* XMLConfigurationFileName= NULL);

    // Navigation
    DOMElement* Parent();      // Gets this node's parent
    DOMElement* FirstChild();  // Gets this node's first child
    DOMElement* Next();        // Gets the next sibling
    DOMElement* Previous();    // Gets the prior sibling

             // etc
    };

I'm getting a syntax error at each of the above navigation functions, and
everywhere I have referenced a xerces- defined entity.  It appears that the
preprocessor is not seeing the declarations in the includes, but if I go to
the line in DOMElement.hpp, right above the "class CDOM_EXPORT DOMElement"
line, where the DOMElement begins, and put in a syntax error, the compiler
barfs on it.  Therefore, the preprocessor is scanning the file, and
*must*(?) see the declaration, but it is not letting me do the above
declarations.

I can even do this:

#include <xercesc/dom/DOM.hpp>
#include <xercesc/sax/HandlerBase.hpp>
#include <xercesc/sax/ErrorHandler.hpp>
#include <xercesc/parsers/XercesDOMParser.hpp>
#include <xercesc/util/PlatformUtils.hpp>

class dummy : public DOMElement
    {
    };

And the compiler gives me a syntax error at the "class" line.

Any insight?  Is there anything that could "undef" these declarations?
Could this possibly be some obsure compiler problem?  I'm using gcc, btw.
I
didn't have this problem with the earlier version of xerces.

TIA,
-----------
Allen



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to