No the patch file is messed up it uses hardcoded paths. :P Replace the header with this.
Index: src/plugins/compilergcc/compilergcc.cpp
===================================================================
--- src/plugins/compilergcc/compilergcc.cpp (revision 2139)
+++ src/plugins/compilergcc/compilergcc.cpp (working copy)
I overloaded them like this for testing purposes:
void LogToStdOut(const wxString& msg);
void LogToStdOut(const wxChar* msg, ...);
void Log(const wxString& msg);
void Log(const wxChar* msg, ...);
Compiles fine, runs fine.
Inserted int %a = %b + %c; into copystrings.cpp for testing and got this:
copystrings.cpp: In constructor `copystrings::copystrings()':
copystrings.cpp:26: error: expected unqualified-id before '%token
Process terminated with status 1 (0 minutes, 4 seconds)
1 errors, 1 warnings
Guess that fixes it universally :)