Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1828: is_class maybe triggering a VC8 compiler bug
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-04-15 08:22:18
#1828: is_class maybe triggering a VC8 compiler bug
---------------------------+------------------------------------------------
Reporter: Stefan | Owner: johnmaddock
Type: Bugs | Status: new
Milestone: Boost 1.36.0 | Component: type_traits
Version: Boost 1.34.1 | Severity: Problem
Resolution: | Keywords:
---------------------------+------------------------------------------------
Comment (by anonymous):
Update: the following simple code produces the same bug on VC8.
It seems that using this form of SFINAE on an incomplete type makes the
compiler remember an inappropriate size for member function pointers.
Methinks that implementing is_class in terms of the intrinsic __is_class
would solve this problem.
#include <boost/type_traits/is_class.hpp>
struct base;
boost::is_class<base> stub;
struct base
{
void foo();
};
int main()
{
char x[sizeof(&base::foo) == 16 ? -1 : 1];
}
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1828#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:57 UTC