[xsd-users] expat parser and elements.txx error
hhusp house
hhusp at outlook.com
Wed Oct 21 03:34:13 EDT 2015
Hi Boris,
I've copied both files to ./xsd-4.0/libxsd/xsd/cxx/parser/expat/Got the same error. I've include the difference of elements.hxx and elements.txx and the original files below.
regards Rob
make cleanmake../../../../bin/xsd cxx-parser --xml-parser expat hello.xsdg++ -I../../../../libxsd -W -Wall -O3 -c driver.cxx -o driver.oIn file included from ../../../../libxsd/xsd/cxx/parser/expat/elements.hxx:362, from hello-pskel.hxx:70, from driver.cxx:7:../../../../libxsd/xsd/cxx/parser/expat/elements.txx: In member function ‘bool xsd::cxx::parser::expat::document<C>::parse(std::istream&, const std::basic_string<_CharT, std::char_traits<_CharT>, std::allocator<_CharT> >*, const std::basic_string<_CharT, std::char_traits<_CharT>, std::allocator<_CharT> >*, xsd::cxx::xml::error_handler<C>&)’:../../../../libxsd/xsd/cxx/parser/expat/elements.txx:282: error: no match for ‘operator==’ in ‘parser == 0’../../../../libxsd/xsd/cxx/parser/xml-schema.ixx:338: note: candidates are:
diff elements.txx elements.txx.org286,287c286< parse_begin (< parser.get (), system_id ? *system_id : *public_id, eh);---> parse_begin (parser, system_id ? *system_id : *public_id, eh);289c288< parse_begin (parser.get (), eh);---> parse_begin (parser, eh);314,317c313,314< if (XML_Parse (parser.get (),< buf,< is.gcount (),< is.eof ()) == XML_STATUS_ERROR)---> if (XML_Parse (> parser, buf, is.gcount (), is.eof ()) == XML_STATUS_ERROR)825d821<
diff elements.hxx elements.hxx.org54,56c54< typedef< std::unique_ptr<XML_ParserStruct, parser_deleter>< parser_auto_ptr;---> typedef std::unique_ptr<XML_ParserStruct> parser_auto_ptr;365d362<
> From: hhusp at outlook.com
> To: xsd-users at codesynthesis.com
> Subject: RE: [xsd-users] expat parser and elements.txx error
> Date: Tue, 20 Oct 2015 21:18:58 +0200
>
> thanks for the quick reply and the fix.
> Rob
>
> > Date: Tue, 20 Oct 2015 16:26:13 +0200
> > From: boris at codesynthesis.com
> > To: hhusp at outlook.com
> > CC: xsd-users at codesynthesis.com
> > Subject: Re: [xsd-users] expat parser and elements.txx error
> >
> > hhusp house <hhusp at outlook.com> writes:
> >
> > > When I try to build the hello example in (xsd-4.0/examples/cxx/parser/hello)
> > > I get the error:../../../../libxsd/xsd/cxx/parser/expat/elements.txx:282:
> > > error: no match for ‘operator==’ in ‘parser == 0’
> >
> > Yes, this is a known bug that has been fixed for the next release:
> >
> > http://scm.codesynthesis.com/?p=xsd/xsd.git;a=commit;h=94cba986108a0e0f42295572ca42c356d59328d7
> >
> > You can also fix it in 4.0.0 by applying the patch from the above
> > commit.
> >
> > Boris
>
More information about the xsd-users
mailing list