move __WXFUNCTION__ to wx/cpp.h from wx/debug.h

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2009-03-21 17:18:01 +00:00
parent 993df0402c
commit a6ebdba66c
4 changed files with 32 additions and 34 deletions

View File

@ -57,5 +57,27 @@
*/ */
#define wxEMPTY_PARAMETER_VALUE /* Fake macro parameter value */ #define wxEMPTY_PARAMETER_VALUE /* Fake macro parameter value */
/*
Define __WXFUNCTION__ which is like standard __FUNCTION__ but defined as
NULL for the compilers which don't support the latter.
*/
#ifndef __WXFUNCTION__
/* TODO: add more compilers supporting __FUNCTION__ */
#if defined(__DMC__)
/*
__FUNCTION__ happens to be not defined within class members
http://www.digitalmars.com/drn-bin/wwwnews?c%2B%2B.beta/485
*/
#define __WXFUNCTION__ (NULL)
#elif defined(__GNUC__) || \
(defined(_MSC_VER) && _MSC_VER >= 1300) || \
defined(__FUNCTION__)
#define __WXFUNCTION__ __FUNCTION__
#else
/* still define __WXFUNCTION__ to avoid #ifdefs elsewhere */
#define __WXFUNCTION__ (NULL)
#endif
#endif /* __WXFUNCTION__ already defined */
#endif /* _WX_CPP_H_ */ #endif /* _WX_CPP_H_ */

View File

@ -18,6 +18,7 @@
#include <limits.h> // for CHAR_BIT used below #include <limits.h> // for CHAR_BIT used below
#include "wx/chartype.h" // for __TFILE__ and wxChar #include "wx/chartype.h" // for __TFILE__ and wxChar
#include "wx/cpp.h" // for __WXFUNCTION__
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Defines controlling the debugging macros // Defines controlling the debugging macros
@ -45,24 +46,6 @@
#endif // !WXDEBUG #endif // !WXDEBUG
#endif // __WXDEBUG__ #endif // __WXDEBUG__
#ifndef __WXFUNCTION__
/* TODO: add more compilers supporting __FUNCTION__ */
#if defined(__DMC__)
/*
__FUNCTION__ happens to be not defined within class members
http://www.digitalmars.com/drn-bin/wwwnews?c%2B%2B.beta/485
*/
#define __WXFUNCTION__ (NULL)
#elif defined(__GNUC__) || \
(defined(_MSC_VER) && _MSC_VER >= 1300) || \
defined(__FUNCTION__)
#define __WXFUNCTION__ __FUNCTION__
#else
/* still define __WXFUNCTION__ to avoid #ifdefs elsewhere */
#define __WXFUNCTION__ (NULL)
#endif
#endif /* __WXFUNCTION__ already defined */
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Debugging macros // Debugging macros
// //

View File

@ -48,5 +48,14 @@
*/ */
#define wxSTRINGIZE_T(x) #define wxSTRINGIZE_T(x)
/**
This macro expands to the name of the current function if the compiler
supports any of @c __FUNCTION__, @c __func__ or equivalent variables or
macros or to @NULL if none of them is available.
@header{wx/cpp.h}
*/
#define __WXFUNCTION__
//@} //@}

View File

@ -241,19 +241,3 @@ void wxTrap();
//@} //@}
/** @addtogroup group_funcmacro_misc */
//@{
/**
This macro expands to the name of the current function if the compiler
supports any of @c __FUNCTION__, @c __func__ or equivalent variables or
macros or to @NULL if none of them is available.
@header{wx/debug.h}
*/
#define __WXFUNCTION__
//@}