Hi,

I was trying to get rid of a warning[1] in Xerces-C++ that annoys
me in my code. I noticed that the place where the warning points
to is completely unrelated to what I do and I figured I must have
included some extra headers that I don't really need. Upon closer
examination it appears that the culprit is sax2/XMLReaderFactory.hpp.

The problem with the code in this file is that in order to inline
the createXMLReader function it has to include
parsers/SAX2XMLReaderImpl.hpp which in turn pulls in a lot of other
headers (like PSVI types, etc). This seems a lot more than I asked
for especially since createXMLReader returns the interface
(SAX2XMLReader), not the implementation (SAX2XMLReaderImpl). I don't
think there is any benefit in inlining createXMLReader while the
drawback is a much longer build times for client code.

[1] The warning is reproducible on OS X with Apple g++-4.0 and on
    HP-UX with aCC6:

    
/home/boris/osx/builds/xerces-c-2.7.0-powerpc-macosx-g++-4.0/include/xercesc/validators/schema/SchemaElementDecl.hpp:
 In member function 'virtual bool 
xercesc_2_7::SchemaElementDecl::isGlobalDecl() const':
    
/home/boris/osx/builds/xerces-c-2.7.0-powerpc-macosx-g++-4.0/include/xercesc/validators/schema/SchemaElementDecl.hpp:508:
 warning: comparison between signed and unsigned integer expressions

-boris

-- 
Boris Kolpackov
Code Synthesis Tools CC
http://www.codesynthesis.com
Open Source Cross-Platform C++ XML Data Binding


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

Reply via email to