diff --git a/include/wx/meta/if.h b/include/wx/meta/if.h index 450ef24bf1..3de045a61f 100644 --- a/include/wx/meta/if.h +++ b/include/wx/meta/if.h @@ -53,7 +53,11 @@ struct wxIfImpl { template struct Result { +#if defined(__VISUALC__) && !wxCHECK_VISUALC_VERSION(7) struct value : TTrue { }; +#else + typedef TTrue value; +#endif }; }; @@ -63,7 +67,11 @@ struct wxIfImpl { template struct Result { +#if defined(__VISUALC__) && !wxCHECK_VISUALC_VERSION(7) struct value : TFalse { }; +#else + typedef TFalse value; +#endif }; }; @@ -77,9 +85,15 @@ struct wxIfImpl template struct wxIf { +#if defined(__VISUALC__) && !wxCHECK_VISUALC_VERSION(7) // notice that value can't be a typedef, VC6 refuses to use it as a base // class in this case struct value : wxPrivate::wxIfImpl::Result::value { }; +#else // !VC6++ + typedef typename wxPrivate::wxIfImpl + ::template Result::value + value; +#endif }; #endif // _WX_META_IF_H_