|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript electronics |
c++.beta - [bug] dmc 8.50.3n Internal error: struct 2169
This one makes almost all boost lib fail to compile and IIRC didn't
appear with te 8.49 version.
compile the code with:
dmc -cpp -c -gl -S -Ae -Ar -ND ie2169.cpp
//----------------------------------------------------------------
namespace ut_detail {
struct unused {};
template<typename R>
struct callback0_impl {
virtual ~callback0_impl() {}
};
template<typename R, typename Functor>
struct callback0_impl_t : callback0_impl<R> {
explicit callback0_impl_t( Functor f ) : m_f( f ) {}
private:
Functor m_f;
};
} // namespace ut_detail
template<typename R = ut_detail::unused>
class callback0 {
public:
callback0() {}
template<typename Functor>
callback0( Functor f )
: m_impl( new ut_detail::callback0_impl_t< R, Functor >( f
) ) {}
private:
ut_detail::callback0_impl< R > *m_impl;
};
struct test_main_caller {
test_main_caller( int argc, char** argv ) {}
private:
// Data members
int m_argc;
char** m_argv;
};
int main ( int argc, char *argv [] )
{
callback0 <> ( test_main_caller( argc, argv ) );
return ( 0 );
}
May 08 2007
Arjan Knepper wrote:This one makes almost all boost lib fail to compile and IIRC didn't appear with te 8.49 version. May 08 2007
|