Commit 241fdb4d authored by Dick Hollenbeck's avatar Dick Hollenbeck

fix compile of kicad_plugin.cpp with wxWidgets 2.9.x

parent fafd74ca
...@@ -56,10 +56,7 @@ ...@@ -56,10 +56,7 @@
// use one of the following __LOC__ defs, depending on whether your // use one of the following __LOC__ defs, depending on whether your
// compiler supports __func__ or not, and how it handles __LINE__ // compiler supports __func__ or not, and how it handles __LINE__
#if defined ( _MSC_VER ) #define __LOC__ ((std::string(__FUNCTION__) + "() : line ") + TOSTRING(__LINE__)).c_str()
#define __func__ __FUNCTION__
#endif
#define __LOC__ ((std::string(__func__) + "() : line ") + TOSTRING(__LINE__)).c_str()
//#define __LOC__ TOSTRING(__LINE__) //#define __LOC__ TOSTRING(__LINE__)
/// macro which captures the "call site" values of __FILE_ & __LOC__ /// macro which captures the "call site" values of __FILE_ & __LOC__
...@@ -96,12 +93,19 @@ struct IO_ERROR // : std::exception ...@@ -96,12 +93,19 @@ struct IO_ERROR // : std::exception
init( aThrowersFile, aThrowersLoc, aMsg ); init( aThrowersFile, aThrowersLoc, aMsg );
} }
#if !wxCHECK_VERSION(2, 9, 0)
// 2.9.0 and greater provide a wxString() constructor taking "const char*" whereas
// 2.8 did not. In 2.9.x this IO_ERROR() constructor uses that wxString( const char* )
// constructor making this here constructor ambiguous with the IO_ERROR()
// taking the wxString.
IO_ERROR( const char* aThrowersFile, IO_ERROR( const char* aThrowersFile,
const char* aThrowersLoc, const char* aThrowersLoc,
const std::string& aMsg ) const std::string& aMsg )
{ {
init( aThrowersFile, aThrowersLoc, wxString::FromUTF8( aMsg.c_str() ) ); init( aThrowersFile, aThrowersLoc, wxString::FromUTF8( aMsg.c_str() ) );
} }
#endif
/** /**
* handles the case where _() is passed as aMsg. * handles the case where _() is passed as aMsg.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment