diff --git a/Builds/VisualStudio2012/beast.vcxproj b/Builds/VisualStudio2012/beast.vcxproj
index 27033543d..28e252449 100644
--- a/Builds/VisualStudio2012/beast.vcxproj
+++ b/Builds/VisualStudio2012/beast.vcxproj
@@ -235,7 +235,6 @@
-
@@ -730,12 +729,6 @@
true
true
-
- true
- true
- true
- true
-
true
true
diff --git a/Builds/VisualStudio2012/beast.vcxproj.filters b/Builds/VisualStudio2012/beast.vcxproj.filters
index 175ebf461..a08e0d157 100644
--- a/Builds/VisualStudio2012/beast.vcxproj.filters
+++ b/Builds/VisualStudio2012/beast.vcxproj.filters
@@ -998,9 +998,6 @@
beast_core\misc
-
- beast_core\diagnostic
-
beast_core\diagnostic
@@ -1730,9 +1727,6 @@
beast_core\misc
-
- beast_core\diagnostic
-
beast_core\diagnostic
diff --git a/beast/config/ConfigCheck.h b/beast/config/ConfigCheck.h
index 3fd5a17a2..7ee595576 100644
--- a/beast/config/ConfigCheck.h
+++ b/beast/config/ConfigCheck.h
@@ -55,10 +55,6 @@
# endif
#endif
-#ifndef BEAST_CATCH_UNHANDLED_EXCEPTIONS
-#define BEAST_CATCH_UNHANDLED_EXCEPTIONS 0
-#endif
-
#if BEAST_DEBUG && ! defined (BEAST_CHECK_MEMORY_LEAKS)
#define BEAST_CHECK_MEMORY_LEAKS 1
#endif
diff --git a/beast/utility/impl/Debug.cpp b/beast/utility/impl/Debug.cpp
index 0265f7996..d3a26e0aa 100644
--- a/beast/utility/impl/Debug.cpp
+++ b/beast/utility/impl/Debug.cpp
@@ -329,15 +329,6 @@ public:
#endif
}
- static int beastCatchExceptions ()
- {
- #ifdef BEAST_CATCH_UNHANDLED_EXCEPTIONS
- return BEAST_CATCH_UNHANDLED_EXCEPTIONS;
- #else
- return 0;
- #endif
- }
-
void runTest ()
{
beginTestCase ("diagnostics");
@@ -346,7 +337,6 @@ public:
logMessage ("_DEBUG = " + String::fromNumber (envDebug ()));
logMessage ("BEAST_DEBUG = " + String::fromNumber (beastDebug ()));
logMessage ("BEAST_FORCE_DEBUG = " + String::fromNumber (beastForceDebug ()));
- logMessage ("BEAST_CATCH_UNHANDLED_EXCEPTIONS = " + String::fromNumber (beastCatchExceptions ()));
logMessage ("sizeof(std::size_t) = " + String::fromNumber (sizeof(std::size_t)));
bassertfalse;
diff --git a/config/BeastConfig.h b/config/BeastConfig.h
index 4c8e9aa1c..ee6a48375 100644
--- a/config/BeastConfig.h
+++ b/config/BeastConfig.h
@@ -74,16 +74,6 @@
//#define BEAST_COMPILER_CHECKS_SOCKET_OVERRIDES 1
#endif
-/** Config: BEAST_CATCH_UNHANDLED_EXCEPTIONS
- This will wrap thread entry points with an exception catching block.
- A customizable hook is provided to get called when unhandled exceptions
- are thrown.
- @see ProtectedCall
-*/
-#ifndef BEAST_CATCH_UNHANDLED_EXCEPTIONS
-//#define BEAST_CATCH_UNHANDLED_EXCEPTIONS 1
-#endif
-
//------------------------------------------------------------------------------
//
// Libraries
diff --git a/modules/beast_core/beast_core.cpp b/modules/beast_core/beast_core.cpp
index a24524820..7e6e3ac23 100644
--- a/modules/beast_core/beast_core.cpp
+++ b/modules/beast_core/beast_core.cpp
@@ -141,7 +141,6 @@ namespace beast
#include "diagnostic/FatalError.cpp"
#include "diagnostic/FPUFlags.cpp"
#include "diagnostic/LeakChecked.cpp"
-#include "diagnostic/ProtectedCall.cpp"
#include "diagnostic/SemanticVersion.cpp"
#include "diagnostic/UnitTest.cpp"
#include "diagnostic/UnitTestUtilities.cpp"
diff --git a/modules/beast_core/beast_core.h b/modules/beast_core/beast_core.h
index 881856bab..ab92ed63f 100644
--- a/modules/beast_core/beast_core.h
+++ b/modules/beast_core/beast_core.h
@@ -163,7 +163,6 @@ class FileOutputStream;
#include "memory/SharedObject.h"
#include "memory/SharedPtr.h"
#include "memory/SharedFunction.h"
-#include "diagnostic/ProtectedCall.h"
#include "containers/AbstractFifo.h"
#include "text/Identifier.h"
#include "containers/Variant.h"
diff --git a/modules/beast_core/threads/Thread.cpp b/modules/beast_core/threads/Thread.cpp
index 6a573dd66..f3ab1eb2b 100644
--- a/modules/beast_core/threads/Thread.cpp
+++ b/modules/beast_core/threads/Thread.cpp
@@ -99,7 +99,7 @@ void Thread::threadEntryPoint()
// used to wrap the incoming call from the platform-specific code
void BEAST_API beast_threadEntryPoint (void* userData)
{
- ProtectedCall (&Thread::threadEntryPoint, static_cast (userData));
+ static_cast (userData)->threadEntryPoint();
}
//==============================================================================