Fix C++11 compatibility 3310/head
authorkwolekr <kwolekr@minetest.net>
Sat, 31 Oct 2015 06:38:23 +0000 (02:38 -0400)
committerkwolekr <kwolekr@minetest.net>
Sat, 31 Oct 2015 06:38:23 +0000 (02:38 -0400)
src/debug.cpp
src/objdef.h
src/threading/thread.cpp
src/threading/thread.h

index 9f10426467309c7cede129ef3014f2501c63857d..3761e416d5c0b2ef4bbf7ace693b2cb086121a75 100644 (file)
@@ -45,7 +45,7 @@ void sanity_check_fn(const char *assertion, const char *file,
                unsigned int line, const char *function)
 {
        errorstream << std::endl << "In thread " << std::hex
-               << (unsigned long)thr_get_current_thread_id() << ":" << std::endl;
+               << thr_get_current_thread_id() << ":" << std::endl;
        errorstream << file << ":" << line << ": " << function
                << ": An engine assumption '" << assertion << "' failed." << std::endl;
 
@@ -58,7 +58,7 @@ void fatal_error_fn(const char *msg, const char *file,
                unsigned int line, const char *function)
 {
        errorstream << std::endl << "In thread " << std::hex
-               << (unsigned long)thr_get_current_thread_id() << ":" << std::endl;
+               << thr_get_current_thread_id() << ":" << std::endl;
        errorstream << file << ":" << line << ": " << function
                << ": A fatal error occured: " << msg << std::endl;
 
@@ -93,8 +93,10 @@ DebugStack::DebugStack(threadid_t id)
 
 void DebugStack::print(FILE *file, bool everything)
 {
-       fprintf(file, "DEBUG STACK FOR THREAD %lx:\n",
-                       (unsigned long)threadid);
+       std::ostringstream os;
+       os << threadid;
+       fprintf(file, "DEBUG STACK FOR THREAD %s:\n",
+               os.str().c_str());
 
        for(int i=0; i<stack_max_i; i++)
        {
@@ -113,7 +115,7 @@ void DebugStack::print(FILE *file, bool everything)
 
 void DebugStack::print(std::ostream &os, bool everything)
 {
-       os<<"DEBUG STACK FOR THREAD "<<(unsigned long)threadid<<": "<<std::endl;
+       os<<"DEBUG STACK FOR THREAD "<<threadid<<": "<<std::endl;
 
        for(int i=0; i<stack_max_i; i++)
        {
index e7e956e511d17130e125e0f91a253db53b1072bf..1dce367a9475f9c7c1ec01f88b4f70ac34e3a9f1 100644 (file)
@@ -20,6 +20,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #ifndef OBJDEF_HEADER
 #define OBJDEF_HEADER
 
+#include "basicmacros.h"
 #include "porting.h"
 
 class IGameDef;
index 0996a9e34bbd421cd89107dd51b0608e209edf99..57b551503831ff60b19dd0f7a80a01192981a391 100644 (file)
@@ -117,9 +117,9 @@ bool Thread::start()
 
        try {
                m_thread_obj    = new std::thread(threadProc, this);
-               m_thread_id     = m_thread->get_id();
-               m_thread_handle = m_thread->native_handle();
-       } except (const std::system_error &e) {
+               m_thread_id     = m_thread_obj->get_id();
+               m_thread_handle = m_thread_obj->native_handle();
+       } catch (const std::system_error &e) {
                return false;
        }
 
index 83ca785c79f4c456986e194a0c46dce9fd8c9cdb..5f2d8aad192814232ef27ede4e98c1a06db22a8e 100644 (file)
@@ -26,6 +26,7 @@ DEALINGS IN THE SOFTWARE.
 #ifndef THREADING_THREAD_H
 #define THREADING_THREAD_H
 
+#include "basicmacros.h"
 #include "threading/atomic.h"
 #include "threading/mutex.h"
 #include "threads.h"