Boost logo

Boost :

Subject: [boost] [config] additions for gcc 4.0.1 and IBM V11.1.0.0 due to MSM compile errors
From: Christophe Henry (christophe.j.henry_at_[hidden])
Date: 2010-09-20 15:38:02


Hi,

I'm trying to see how far I can bring more compilers to compile MSM
and I noticed that these 2 compilers might have a chance to work:

- On gcc 4.0.1, most regression tests (for example:
http://www.boost.org/development/tests/trunk/developer/output/Sandia-darwin-4-0-1-boost-bin-v2-libs-msm-test-CompositeMachine-test-darwin-4-0-1-debug.html)
fail because in msm/back/state_machine.hpp, the nested struct
add_state cannot access the private function set_containing_sm. IIUC
this should be BOOST_NO_NESTED_FRIENDSHIP. Correct? If yes, could we
add this macro for gcc 4.0.1 (unfortunately, no idea about 4.0.1 - 4.2
but I suppose this will concern all 4.0.x)?

- Again on the regression tests, the IBM compiler shows the same
problem and furthermore does not accept that the struct:

template <class Fsm,class Stt, class Event, class Compile> friend
struct dispatch_table

can have access to a private method of the befriended class. Again,
IIUC, this seems to me to be BOOST_NO_MEMBER_TEMPLATE_FRIENDS.
I don't find a file for this compiler in config/compiler. Am I missing
something?

Frankly, I'm slightly wary of changing myself the config files so I'd
really appreciate some help here.

Thanks,

Christophe


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