
25 Oct
2004
25 Oct
'04
12:33 p.m.
I think I've reduced the problem Boost.Variant is having with GCC 2.95 (see for instance http://tinyurl.com/4sd7u and http://tinyurl.com/4dqqd) The attached snippet works OK for GCC 3.2 and other compilers, but ICEs on GCC 2.95, with the same problem shown in Boost.Variant. The culprit has to do with transform (and other MPL algoritmhs) dealing with expressions of the form: apply1<lambda<sizeof_<_1> >::type,_1> wich AFAIK are correct (otherwise somebody please correct me.) In case it is not possible to fix this in the MPL, I think I can hack a specific workaround for GCC 2.95 into the code of Boost.Variant, but I guess trying to fix MPL first is more sensible. HTH Joaquín M López Muñoz Telefónica, Investigación y Desarrollo