multi_array: a patch for SGI MIPSpro

Dear Boosters, About two days ago, the following lines are added in boost/multi_array.hpp (in order to increase the overload resolution of the constructor???). *************** *** 93,98 **** --- 93,102 ---- #ifdef BOOST_NO_FUNCTION_TEMPLATE_ORDERING , typename detail::multi_array::disable_non_sub_array<ExtentList>::type* = 0 #endif + , typename + boost::disable_if_c< + boost::is_same<ExtentList,multi_array>::value + >::type* = 0 ) : super_type((T*)initial_base_,extents) { boost::function_requires< However, it breaks e.g. SGI MIPSpro, since it does not support SFINAE. (boost/config/compiler/common_edg.hpp defines BOOST_NO_SFINAE.) I'm very happy, as a workaround, if the lines could be wrapped "#ifndef BOOST_NO_SFINAE", like #ifndef BOOST_NO_SFINAE , typename boost::disable_if_c< boost::is_same<ExtentList,multi_array>::value >::type* = 0 #endif Any better idea? Synge

Synge Todo wrote:
Dear Boosters,
About two days ago, the following lines are added in boost/multi_array.hpp (in order to increase the overload resolution of the constructor???).
...
However, it breaks e.g. SGI MIPSpro, since it does not support SFINAE. (boost/config/compiler/common_edg.hpp defines BOOST_NO_SFINAE.)
I'm very happy, as a workaround, if the lines could be wrapped "#ifndef BOOST_NO_SFINAE", like
Greetings, Thank you for catching that. I'm afraid that the addition may not fix the problem I was targetting, but I could not quite tell without your patch. I have applied it. Cheers, ron
participants (2)
-
Ronald Garcia
-
Synge Todo