Index: boost/function_types/detail/pp_arity_loop.hpp =================================================================== --- boost/function_types/detail/pp_arity_loop.hpp (revision 49077) +++ boost/function_types/detail/pp_arity_loop.hpp (working copy) @@ -89,10 +89,14 @@ # if !BOOST_PP_IS_ITERATING # define BOOST_PP_FILENAME_1 BOOST_FT_AL_INCLUDE_FILE -# elif BOOST_PP_ITERATION_DEPTH() == 1 + // For gcc 4.4 compatability, we must include the + // BOOST_PP_ITERATION_DEPTH test inside an #else clause. +# else // BOOST_PP_IS_ITERATING +# if BOOST_PP_ITERATION_DEPTH() == 1 # define BOOST_PP_FILENAME_2 BOOST_FT_AL_INCLUDE_FILE # else # error "loops nested too deeply" +# endif // BOOST_PP_ITERATION_DEPTH() # endif # define BOOST_FT_arity BOOST_PP_ITERATION()