Index: include/IMP/log.h
===================================================================
--- include/IMP/log.h	(revision 658)
+++ include/IMP/log.h	(working copy)
@@ -179,7 +179,20 @@
   LogTarget target_;
 };
 
+namespace internal {
+  //! This is just here so you can catch errors more easily in the debugger
+  /**
+     Break on Log.cpp:19 to catch assertion failures.
+   */
+  IMPDLLEXPORT void assert_fail();
 
+  //! Here so you can catch check failures more easily in the debugger
+  /**
+     Break on Log.cpp:22 to catch check failures. 
+   */
+  IMPDLLEXPORT void check_fail();
+}
+
 } // namespace IMP
 
 #ifndef IMP_DISABLE_LOGGING
@@ -255,7 +268,7 @@
 #define IMP_assert(expr, message) \
   if (!(expr)) { \
     IMP_ERROR(message); \
-    throw IMP::ErrorException(); \
+    IMP::internal::assert_fail();               \
   }
 #else
 #define IMP_assert(expr, message)
Index: src/Log.cpp
===================================================================
--- src/Log.cpp	(revision 658)
+++ src/Log.cpp	(working copy)
@@ -13,4 +13,13 @@
 /* Initialize singleton pointer to NULL */
 Log* Log::logpt_ = NULL;
 
+
+namespace internal {
+  void assert_fail() {
+    throw ErrorException();
+  }
+
+  void check_fail() {
+  }
+}
 } // namespace IMP