Commit Graph

94 Commits

Author SHA1 Message Date
Vadim Zeitlin
1ec571fb64 Avoid -Wshadow warnings when using multiple wxCHECK()s
If the same function used any of macros from wxCHECK() family more than
once, wxDummyCheckStruct was redeclared, resulting in -Wshadow warnings
from gcc.

Fix this by using unique names for the dummy macro.
2020-08-25 17:37:25 +02:00
Vadim Zeitlin
04435144ac Give warnings for using "x = y" as condition inside wxASSERT
Using "!(cond)" inside wxASSERT macro expansion prevented both gcc and
clang (although not MSVC) from giving -Wparentheses warnings if the
assignment operator was accidentally used instead of the equality
comparison operator.

Change the macro definition to use the condition directly, without
negating it, to let gcc/clang give the warning if appropriate.
2019-06-10 13:57:45 +02:00
Tobias Taschner
8282c1be0f Remove Windows CE support
Windows CE doesn't seem to be supported by Microsoft any longer. Last CE
release was in early 2013 and the PocketPC and Smartphone targets supported by
wxWidgets are long gone.

The build files where already removed in an earlier cleanup this commit
removes all files, every #ifdef and all documentation regarding the Windows CE
support.

Closes https://github.com/wxWidgets/wxWidgets/pull/81
2015-09-23 00:52:30 +02:00
Vadim Zeitlin
3dff63b563 Add wxASSERT_MSG_AT() and wxFAIL_MSG_AT() macros.
These macros are useful for functions called from other macros to allow
pretending that an assert inside such function actually happens at the point
in the sources where the macro itself appears.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-24 22:08:41 +00:00
Vadim Zeitlin
54d2b38643 Define wxTrap() as a macro for gcc on Intel platforms too.
It is more convenient to break into the debugger at the exact location of the
assert instead of inside a nested wxTrap() function.

This does the same thing for gcc/x86 as was done for MSVC in r73124.

See #11184.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-24 22:08:36 +00:00
Vadim Zeitlin
49b8d79c87 Remove (Open)Watcom support.
This compiler is not being developed since several years and almost certainly
can't be used to build the current wxWidgets sources anyhow, so remove all
support for it, including a lot of extremely ugly workarounds for its bugs
with template functions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-16 13:01:06 +00:00
Vadim Zeitlin
f4b80e5337 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
2014-05-15 22:32:17 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
0a890608f1 Remove extra "#" operator in wxFAIL_COND_MSG macro.
The argument of this macro is already a string, so we don't need to stringify
it again.

This fixes VC6 build, unlike all the other compilers this one didn't apply "#"
to an argument which was already a quoted string correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-28 16:01:59 +00:00
Vadim Zeitlin
739c5499fc Compilation fir for VC6 after r73124.
VC6 doesn't have __debugbreak().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-04 12:28:28 +00:00
Vadim Zeitlin
55fd62c1e3 Open debugger at the location of failing assert, if possible.
Break into the debugger in the function containing the assert that failed
instead of inside wxWidgets assert handler which is several (~8) levels below
the last line of the user code. This is much more useful in practice and also
less confusing.

Currently this only works for MSVC as the other compilers don't have any
__debugbreak intrinsice equivalent.

Also update the except sample to test wxTrap() directly too.

Closes #11184.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-04 00:39:29 +00:00
Stefan Csomor
2b760b6bc1 removing attribute, as assert is not guaranteed not to return, but may just go on
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-14 15:07:14 +00:00
Stefan Csomor
b625fff509 using WX_ATTRIBUTE_NORETURN for asserts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-13 23:33:52 +00:00
Vadim Zeitlin
88ec47bb12 No real changes, just remove wxIsDebuggerRunning() stub from wxOSX.
There is no need to have a stub here when we already have in wx/debug.h, just
remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-05 18:39:57 +00:00
Vadim Zeitlin
bd362275b8 Remove Palm OS port.
The platform targeted by this port doesn't exist any more and the port never
achieved really working state so remove the code to avoid having to maintain
it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 01:05:28 +00:00
Vadim Zeitlin
975dc6910e Added wxAbort() which can also be used under Windows CE.
Windows CE doesn't have abort() so provide a wrapper which can be used even
there (see #13847).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-10 17:01:13 +00:00
Vadim Zeitlin
ebd98179c5 Use wxT() instead of _T() in XTI code.
_T() is deprecated and doesn't work with Solaris compiler, use wxT() instead.

Also change one occurrence of _T() inside a comment in wx/debug.h.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-09 18:48:39 +00:00
Dimitri Schoolwerth
4c51a665c6 Fixed various typos.
Applied patch by snowleopard2 fixing a bunch of typos such as misspellings and double words in the documentation. Combined the patch with some local queued typos waiting to be committed as well as adding new typo fixes inspired by the patch.

Function names with American spelling were not changed nor was third-party code touched. The only code changes involve some changes in strings that are translated ("Can not" -> "Cannot").

Closes #13063 (again).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-22 14:17:38 +00:00
Francesco Montorsi
e4431849b4 Implement wx-prefixed macros versions of DECLARE/IMPLEMENT_APP_* macros.
Implement compatibility aliases for non-prefixed macro names.
Require a final semicolon where possible.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-09 13:23:13 +00:00
Jouk Jansen
a41115011c correcting typo in commit 63803
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-30 12:02:16 +00:00
Jouk Jansen
7126436ab4 Defining wxCOMPILE_TIME_ASSERT for OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-30 11:54:37 +00:00
Vadim Zeitlin
e9c4f54ef3 Fix compilation of wx/debug.h when it's the first wx header to be included.
We must include wx/dlimpexp.h from wx/debug.h to be able to forward declare
wxString and wxCStrData using WXDLLIMPEXP_FWD_BASE, otherwise compilation
errors occur in the code which includes wx/debug.h as the first wx header.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-25 20:08:05 +00:00
Vadim Zeitlin
7d9550df50 Define wxDEBUG_LEVEL in both debug and release builds as 1.
By default include assertions and debug logging in both debug and release
builds but disable them in application release builds (when NDEBUG is
defined).

Also update (more accurately, replace) debugging overview.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-12 11:28:52 +00:00
Vadim Zeitlin
cf58616239 don't crash in wxFAIL and wxCHECK if assertion handler is NULL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-25 13:31:38 +00:00
Francesco Montorsi
72516be4ff fix misc typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-24 21:11:42 +00:00
Vadim Zeitlin
b16f24dd05 correct wxASSERT_LEVEL_2 definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-22 12:26:17 +00:00
Vadim Zeitlin
657a8a3598 first round of debug/release merge: introduce wxDEBUG_LEVEL, for now defined as 1 if __WXDEBUG__ is defined, i.e. no real changes; don't use __WXDEBUG__ in the headers to keep debug and release builds ABI-compatible; add functions to customize or disable asserts handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-21 23:36:37 +00:00
Vadim Zeitlin
a6ebdba66c 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
2009-03-21 17:18:01 +00:00
Vadim Zeitlin
993df0402c made wx/debug.h C++ header again (reverting changes of r24896); simply don't include it from wx/defs.h when compiling C files which have no need for the stuff defined in it anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59702 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-21 16:34:46 +00:00
Stefan Neis
0d65494402 Experimental simplification of the code by using MWERKS version
for all compilers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-05 18:05:33 +00:00
Vadim Zeitlin
9b4da62701 PalmOS compilation fixes (wx-trunk-out.diff part of patch 1894861)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-02 00:43:06 +00:00
Václav Slavík
b5dbe15d0b added WXDLLIMPEXP_FWD_FOO macros in addition to WXDLLIMPEXP_FOO for use with forward declarations (in preparation for GCC visibility support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-09 10:09:52 +00:00
Václav Slavík
28efe6544f don't use C++ comments in C files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-25 15:07:20 +00:00
Vadim Zeitlin
2b232d202a added wOnAssert(..., wxCStrData) overload to fix compilation of code using wxASSERT(s.c_str())
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-22 01:36:24 +00:00
Václav Slavík
fbaf7d4513 added another needed wxOnAssert overload
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-21 18:24:42 +00:00
Václav Slavík
0accd1cfe8 1. make debugging macros compatible with ANSI build even in Unicode build (i.e., no need to use _T() in message strings)
2. save space in binary by using ANSI literals for filenames and expression strings in debug macros


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-21 18:02:57 +00:00
Václav Slavík
e3f6cbd99c split wxchar.h into several smaller headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-19 14:45:38 +00:00
Stefan Neis
6a17b868de Fixed typos in comments (patch #1515724)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-02 21:40:38 +00:00
Dimitri Schoolwerth
9d73af583e added alternative definitions for wxASSERT_MSG and wxCHECK2_MSG to fix CodeWarrior warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-06-15 12:40:34 +00:00
Włodzimierz Skiba
a9672e89d5 DMC bug workaround.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 20:39:52 +00:00
Vadim Zeitlin
986d27c395 make it possible to predefine __WXFUNCTION__ in user code to have a different behaviour (e.g. use __PRETTY_FUNCTION instead of __FUNCTION__ with gcc) if needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 19:37:58 +00:00
Vadim Zeitlin
fa3bd1aaea define __WXFUNCTION__ instead of redefining the (semi-)standard __FUNCTION__ which could result in conflicts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 19:32:28 +00:00
Włodzimierz Skiba
d17b1e7621 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 14:39:47 +00:00
Włodzimierz Skiba
e1204086ba Build fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 13:24:23 +00:00
Vadim Zeitlin
b503b4075c fixed wxCHECK in release build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 01:11:52 +00:00
Vadim Zeitlin
acc476c530 fixed __FUNCTION__ use in Unicode build (it's a variable, not a macro)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-21 17:00:16 +00:00
Vadim Zeitlin
dfa0b52f4a show the function in which the assert failure occured if the compiler supports it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-21 15:19:53 +00:00
Vadim Zeitlin
497a2d6d54 don't evaluate assert expression unless the condition is false (patch 1450705)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-21 14:17:49 +00:00
Włodzimierz Skiba
0872eaf957 wxOS2 with Open Watcom: correct PCH usage, missing headers, warning fixes, source cleaning and other Watcom adjustements.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-07-21 17:08:28 +00:00
Włodzimierz Skiba
532d575bd9 Allow MSW Base be usable in other ports than wxMSW (ie. wxTVision in windows console). Adjustements for limited setup.h (as in wxTV) and minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-10 17:53:19 +00:00