For the wxWidgets headers, you'll have to add -Wno-attributes to the compile-time options until it's fixed upstream.
For the "deprecated conversion from string constant to..." errors, you can either add "-Wno-write-strings" to the compile-time options or fix the warning by making functions accept char const* (or the equivalent const char*) instead of just char*. The vast majority of these errors turned up in non-C::B-original code, so my patch uses -Wno-write-strings for those and fixes the single instance in C::B-original code (Append() in AutoBuffer in filemanager.h).
For the fun stuff in wxPropertyGrid, it appears that the preprocessor no longer entirely skips code within conditionals that evaluate to false; it's at least trying to tokenize the Python code and failing. Only fix is to remove the offending bits; I chose to just get rid of the entire SWIG section, since we don't use it.
In Editor.cxx and ScintillaBase.cxx from Scintilla, the fix is to add another set of curly brackets "{}" for correctness around all the zero initializers.
The attached patch is against r4566; it successfully compiles (with no errors or warnings) and runs with both GCC 3.4.5 and 4.2.1-dw2-2.
EDIT:
I also spotted another no-no in AutoBuffer in filemanager.h: using a std::auto_ptr to bind an array (see
here and
here). It happens to work for now in GCC using simple objects, but it is undefined in ISO-C++ (the array is freed with delete instead of delete[]).
[attachment deleted by admin]