|
Boost : |
From: Michiel Salters (michiel.salters_at_[hidden])
Date: 2005-02-09 07:34:24
> -----Original Message-----
> From: boost-bounces_at_[hidden]
> [mailto:boost-bounces_at_[hidden]] On Behalf Of Tom Brinkman
> Sent: dinsdag 8 februari 2005 3:48
> To: boost_at_[hidden]
> Subject: [boost] Wave C++ Review Begins Today - February 7, 2005
I'm currently looking at the library, trying to get the
(included) command-line executable to work. So far, I've
found two documentation minor nits:
* Source and zip say version 1.1.2, index.html says 1.2
* index.html says program_options must be downloaded, but it's
in boost 1.32 ?
one serious bug in wave\cpplexer\re2clex\cpp_re2c_lexer.hpp:
template <typename IteratorT, typename PositionT>
inline
lexer<IteratorT, PositionT>::lexer(IteratorT const &first,
IteratorT const &last, PositionT const &pos,
boost::wave::language_support language)
: filename(pos.get_file()), at_eof(false)
{
memset(&scanner, '\0', sizeof(Scanner));
scanner.fd = -1;
scanner.eol_offsets = aq_create();
scanner.first = scanner.act = (uchar *)&(*first);
scanner.last = (uchar *)&(*last);
...
[ IteratorT = std::string::iterator in the example ]
This assumes that the range [first,last] is
dereferenacable and contiguous in memory. This of course is
not mandated by the standard.
I found this, because VC8.0 has iterator debugging, and it
asserted. Not sure if this is the exact cause, I just found
the code in the stacktrace.
I tried to hack the Scanner by replacing its uchar*
with iterator's but that really doesn't work. The generated
code uses memcpy's and malloc's.
I'll try to see if I can avoid this, perhaps try another
string type. Perhaps the command-line example should use
BOOST_WAVE_STRINGTYPE iso std::string?
Regards,
Michiel Salters
This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk