Re: C++0x convertibility checking

2011-06-03 Thread Piotr Wyderski
Paolo Carlini wrote: > The issue may even be known or already fixed in mainline and 4.6. I confirm, the issue has already been fixed on the released version of 4.6. It exists on gcc versions 4.5.1 (official release) and 4.6.0 20100609 (experimental) (GCC). Best regards, Piotr Wyderski

Re: C++0x convertibility checking

2011-06-03 Thread Paolo Carlini
Hi, > A proposed fix is to remove the current template-based detector in the > standard library and provide > a built-in function __is_convertible which would check such corner > cases in a much smarter way > than is possible with templates: I don't see why shouldn't be possible deal with this cas

C++0x convertibility checking

2011-06-03 Thread Piotr Wyderski
Consider the folowing: class XXX { public: XXX(char) {} template XXX(T) = delete; }; fprintf(stderr, "ic::value = %i\n", std::is_convertible::value); fprintf(stderr, "ic::value = %i\n", std::is_convertible::value); The code above doesn't compile on gcc 4.6: