Remove MSVC6 support.
Don't support this compiler any more, this allows to get rid of tons of MSVC6-specific workarounds, in particular we can now use Bind() and natural template functions calls in the library code. Also remove MSVC6 project and solution files and don't generate them when bakefile_gen is ran any more (removing the remaining occurrences of msvc6prj from the bakefiles results in weird bake-time errors, so it's simpler to just leave them there). git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -29,28 +29,18 @@
|
||||
namespace wxPrivate
|
||||
{
|
||||
|
||||
// Helper macro to define a constant inside a template class: it's needed
|
||||
// because MSVC6 doesn't support initializing static integer members but the
|
||||
// usual workaround of using enums instead doesn't work for Borland (at least
|
||||
// in template classes).
|
||||
#ifdef __VISUALC6__
|
||||
#define wxDEFINE_CLASS_INT_CONST(name, value) enum { name = value }
|
||||
#else
|
||||
#define wxDEFINE_CLASS_INT_CONST(name, value) static const int name = value
|
||||
#endif
|
||||
|
||||
template<typename T>
|
||||
struct TypeHierarchy
|
||||
{
|
||||
// consider unknown types (e.g. objects, pointers) to be of highest
|
||||
// level, always convert to them if they occur
|
||||
wxDEFINE_CLASS_INT_CONST( level, 9999 );
|
||||
static const int level = 9999;
|
||||
};
|
||||
|
||||
#define WX_TYPE_HIERARCHY_LEVEL(level_num, type) \
|
||||
template<> struct TypeHierarchy<type> \
|
||||
{ \
|
||||
wxDEFINE_CLASS_INT_CONST( level, level_num ); \
|
||||
static const int level = level_num; \
|
||||
}
|
||||
|
||||
WX_TYPE_HIERARCHY_LEVEL( 1, char);
|
||||
|
Reference in New Issue
Block a user