Boost logo

Boost :

Subject: [boost] [foreach] use of boost_foreach_argument_dependent_lookup_hack
From: Joaquin M LópezMuñoz (joaquin_at_[hidden])
Date: 2015-07-14 04:01:25


Hi,

Boost.MultiIndex indices, which are not copyable, interoperate with
Boost.Foreach by defining the following:

template<typename SuperMeta,typename TagList>
inline boost::mpl::true_* boost_foreach_is_noncopyable(
  boost::multi_index::detail::sequenced_index<SuperMeta,TagList>*&,
  boost::foreach::tag)
{
  return 0;
}

Unfortunately Qt (in some configuration modes, at least), defines
a macro foreach to Q_FOREACH, which produces the following problem,
even if Boost.Foreach was not intended to be used:

http://tinyurl.com/nq52xho

My question is: would it be OK if the code above was rewritten like

template<typename SuperMeta,typename TagList>
inline boost::mpl::true_* boost_foreach_is_noncopyable(
  boost::multi_index::detail::sequenced_index<SuperMeta…1¥ÍÐø¨˜°(€‰½½ÍÑ}™½É•…¡}…ɝյ•¹Ñ}‘•Á•¹‘•¹Ñ}±½½­ÕÁ}¡…¬¤)ì(€É•ÑÕɸ€Àì)ô()ͼÑ¡…Ѐ‰™½É•… ˆ¥Ì¹½Ð•Ù•Èµ•¹Ñ¥½¹•ü$Õ¹‘•ÉÍÑ…¹Ñ¡…Ё ½½Íй½É•… )ݽձÍÑ¥±°¹½ÐÝ½É¬Õ¹±•Í́ѡ”µ…É¼¥Ì¹½Ð‘•™¥¹•°‰ÕЁѡ¥ÌÝ½Õ±)…Ё±•…ÍЁٔͅ ½½Íй5ձѥ%¹‘•à°Ý¡¥ ‘½•Í¸ÐÉ•…±±ä‘•Á•¹½¸) ½½Íй½É•… ¸()Q¡…¹­Ì™½Èå½Õȁ½µµ•¹ÑÌ°())½…Å×µ¸43ÍÁ•è5׎è)Q•±•›͹¥„


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