Boost logo

Boost Users :

Subject: Re: [Boost-users] has_binary_operator.hpp error
From: Jürgen Hunold (juergen.hunold_at_[hidden])
Date: 2011-11-19 15:44:07


Hi Frédéric,

On Saturday, 19. November 2011 06:06:11 Frédéric Bron wrote:
> > It's not the C++ preprocessor, but Qt's moc that chokes on BOOST_JOIN.
> > The workaround I proposed to the CGAL list at
> > https://lists-sop.inria.fr/sympa/arc/cgal-discuss/2011-11/msg00087.html
> > just instructs the moc preprocessor to skip the #include that introduces
> > BOOST_JOIN.
>
> OK, I do not know this moc. I understand it reads the files and tries
> to understand the syntax which fails for some reasons here. So there
> is nothing to do in boost then.

Well, we've been bitten by this one, too. The way to solve this is to file a
bug report at Qts bugtracker so they can improve the moc. In the meantime
client code just has to put #ifndef Q_MOC_RUN around the critical places.

> It is strange that it appears now because BOOST_JOIN was already used
> in other files in 1.47.0.

Well, the moc has improved a lot in Qt4, but nevertheless has only a parser
for a limited subset of c++ (and a limited preprocessor.) So this is no real
surprise, at least for me :-)

Yours,

Jürgen

-- 
Dipl.-Math. Jürgen Hunold       | IVE mbH
Software-Entwickler             | Lützerodestraße 10 
Tel: +49 511 897668 33          | 30161 Hannover, Germany
Fax: +49 511 897668 29          | http://www.ivembh.de
juergen.hunold_at_[hidden]        | 
                                | Geschäftsführer:
Sitz des Unternehmens: Hannover | Univ.-Prof. Dr.-Ing. Thomas Siefer               
Amtsgericht Hannover, HRB 56965 | PD Dr.-Ing. Alfons Radtke  

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net