Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3520: Syntax Error in boost/typeof/typeof.hpp
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-10-14 08:36:22
#3520: Syntax Error in boost/typeof/typeof.hpp
-------------------------------------------------------------------+--------
Reporter: Jason Masters <jason_masters@â¦> | Owner: burbelgruff
Type: Bugs | Status: new
Milestone: Boost 1.41.0 | Component: typeof
Version: Boost 1.40.0 | Severity: Problem
Keywords: syntax error typeof.hpp |
-------------------------------------------------------------------+--------
Comment(by Jason Masters <jason_masters@â¦>):
Do the Boost.Typeof tests define both !__COMO!__ and !__GNUG!__ ?
I have checked a testcase of the issue with the online Comeau test:
{{{
#if defined(__COMO__)
# ifdef __GNUG__
# ifndef(BOOST_TYPEOF_EMULATION)
# define BOOST_TYPEOF_KEYWORD typeof
# endif
# endif
#endif
}}}
With no defines this compiles successfully.
With command line options -D!__COMO!__ -D!__GNUG!__ we get:
{{{
"ComeauTest.c", line 3: error: expected an identifier
# ifndef(BOOST_TYPEOF_EMULATION)
^
1 error detected in the compilation of "ComeauTest.c".
}}}
Which is what I would expect. If just !__COMO!__ is defined then
compilation is successful.
Even if the como compiler does parse this code successfully it is still
wrong - other compilers still have to parse the code in the non-included
#ifdef sections.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/3520#comment:2> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:01 UTC