|
Boost : |
From: Stefan Slapeta (stefan_nospam__at_[hidden])
Date: 2004-07-29 17:59:28
First of all, the most important question: Why do we test workarounds
for partial spezialization on compiler which don't need these workarounds?
I've isolated the problem with the failing range/workaround testcase on
Intel 8. IMO it's a compiler defect because the function template in
is_array should be disabled by SFINAE. This code fails to compile with
the current comeau release, too.
template <class T> struct wrap {};
// this one should disabled because it's not allowed to return an array:
template< typename T > T(* is_array_tester1(wrap<T>) )(wrap<T>);
char is_array_tester1(...);
void f()
{
sizeof(is_array_tester1(wrap<int[42]>());
}
Shall a submit a DR?
Stefan
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk