Description
I was trying to get rid of a warning 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.