Boost logo

Boost :

From: Stefan Slapeta (stefan_nospam__at_[hidden])
Date: 2004-03-28 05:27:54


Sorry for the repost, but there was no answer to this
(http://tinyurl.com/3yba8) and I'm still not sure if it is a compiler or
a boost defect.

Which f should be called here?

void f(const char*)
{
        std::cout << "function called!" << std::endl;
}

template <typename T>
void f(const T&)
{
        std::cout << "function template called!" << std::endl;
}

int main()
{
        char buf[10] = { 0 };
        f(buf);
}

In my opinion, it should be the function template (which whould also
mean that EDG works correctly and VC 7.1 not) as "f(char[10])" is no
exact match for the function.
However, this would also mean that there is a defect in boost.test (see
link above).

br, Stefan

***********************************

Stefan Slapeta
Wien/Vienna, Austria

http://www.slapeta.com


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