define wxMAKE_UNIQUE_NAME so that it works even in VC++ with /ZI (edit and continue) option: use __COU*NTER__ instead of __LINE__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
90999185aa
commit
c0fbf9294e
@ -473,7 +473,18 @@ typedef int wxWindowID;
|
||||
/* appending the current line number to the given identifier to reduce the */
|
||||
/* probability of the conflict (it may still happen if this is used in the */
|
||||
/* headers, hence you should avoid doing it or provide unique prefixes then) */
|
||||
#define wxCONCAT_LINE(text) wxCONCAT(text, __LINE__)
|
||||
#ifdef __VISUALC__
|
||||
/*
|
||||
__LINE__ handling is completely broken in VC++ when using "Edit and
|
||||
Continue" (/ZI option) and results in preprocessor errors if we use it
|
||||
inside the macros. Luckily it has another standard macro which can be
|
||||
used like this and is even better than __LINE__ because it is globally
|
||||
unique.
|
||||
*/
|
||||
# define wxCONCAT_LINE(text) wxCONCAT(text, __COUNTER__)
|
||||
#else /* normal compilers */
|
||||
# define wxCONCAT_LINE(text) wxCONCAT(text, __LINE__)
|
||||
#endif
|
||||
#define wxMAKE_UNIQUE_NAME(text) wxCONCAT_LINE(text)
|
||||
|
||||
/* symbolic constant used by all Find()-like functions returning positive */
|
||||
|
Loading…
Reference in New Issue
Block a user