Subject: [Boost-bugs] [Boost C++ Libraries] #12887: I had a problem with boost.log when set the filter with & operator
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-03-08 03:27:29
#12887: I had a problem with boost.log when set the filter with & operator
-------------------------+------------------------------
Reporter: 136002018@⦠| Type: Bugs
Status: new | Milestone: To Be Determined
Component: None | Version: Boost 1.62.0
Severity: Problem | Keywords:
-------------------------+------------------------------
First I defined keyword:
BOOST_LOG_ATTRIBUTE_KEYWORD(attr_appenders, "Appenders", uint64)
Then I set the filter like this:
void _onSetFilter(SinkTypePtr sink) const {
uint64 mask = 0x01ul << _id;
sink->set_filter(attr_appenders & mask);
}
and the error info:
/usr/local/include/boost/log/sinks/basic_sink_frontend.hpp:90:18:
required from âvoid
boost::log::v2_mt_posix::sinks::basic_sink_frontend::set_filter(const
FunT&) [with FunT =
boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::bitwise_and,
boost::proto::argsns_::list2<boost::log::v2_mt_posix::expressions::attribute_actor<long
unsigned int, boost::log::v2_mt_posix::fallback_to_none,
tag::attr_appenders, boost::phoenix::actor>,
boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,
boost::proto::argsns_::term<long unsigned int>, 0l> > >, 2l> >]â
/home/yuwenyong/ClionProjects/tinycore/src/tinycore/logging/appender.h:111:47:
required from here
/usr/local/include/boost/proto/transform/default.hpp:150:9: errorï¼no match
for âoperator&â (operand types are
âboost::log::v2_mt_posix::value_ref<long unsigned int,
tag::attr_appenders>â and âconst long unsigned intâ)
BOOST_PROTO_BINARY_DEFAULT_EVAL(&, bitwise_and, make, make)
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/12887> 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-03-08 03:31:45 UTC