Boost logo

Boost :

Subject: [boost] [Proto] BOOST_PROTO_USE_NORMAL_RESULT_OF seems incorrectly defined
From: Hui Li (hui.li_at_[hidden])
Date: 2013-12-31 08:56:00


In proto/proto_fwd.hpp, based on how the macro BOOST_PROTO_USE_NORMAL_RESULT_OF is used, it's meant to be defined when the compiler supports c++11 decltype and implements N3276, for example, BOOST_PROTO_RESULT_OF is boost::result_of when BOOST_PROTO_USE_NORMAL_RESULT_OF is defined.

However, its definition seems incorrect, and is inconsistent with the comments next to it.

#ifdef BOOST_NO_CXX11_DECLTYPE_N3276
^^^^^^ should this be #ifndef ?

# // Proto can only use the decltype-based result_of if N3276 has been
# // implemented by the compiler.
# // See http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2011/n3276.pdf
# ifndef BOOST_PROTO_USE_NORMAL_RESULT_OF
# define BOOST_PROTO_USE_NORMAL_RESULT_OF
# endif
#endif

Am i missing something here?

Hui


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk