path: root/ev.h
diff options
authorMarc Alexander Lehmann <>2014-09-09 21:51:35 +0000
committerMarc Alexander Lehmann <>2014-09-09 21:51:35 +0000
commitcae6cecf28b18663626b49cf0c822b2c71b2ca09 (patch)
tree3bba3ec27564920830ecf92073f2a6a32a0aa945 /ev.h
parent13a2c71b599b45f63f0496ff16026f80fc017e79 (diff)
c++ should die
Diffstat (limited to 'ev.h')
1 files changed, 2 insertions, 9 deletions
diff --git a/ev.h b/ev.h
index e37edc2..0600586 100644
--- a/ev.h
+++ b/ev.h
@@ -48,14 +48,6 @@
#define EV_THROW EV_CPP(throw())
-/* apple's proprietary clang fork errors out with exception specifications */
-/* in all sorts of places, so let's not even bother with them */
-/* users are strongly advised to install clang or gcc */
-#if __APPLE__ && __clang__
-# undef EV_THROW
-# define EV_THROW
EV_CPP(extern "C" {)
@@ -668,7 +660,8 @@ EV_API_DECL void ev_set_userdata (EV_P_ void *data) EV_THROW;
EV_API_DECL void *ev_userdata (EV_P) EV_THROW;
typedef void (*ev_loop_callback)(EV_P);
EV_API_DECL void ev_set_invoke_pending_cb (EV_P_ ev_loop_callback invoke_pending_cb) EV_THROW;
-EV_API_DECL void ev_set_loop_release_cb (EV_P_ ev_loop_callback EV_THROW release, ev_loop_callback EV_THROW acquire) EV_THROW;
+/* C++ doesn't allow the use of the ev_loop_callback typedef here, so we need to spell it out*/
+EV_API_DECL void ev_set_loop_release_cb (EV_P_ void (*release)(EV_P) EV_THROW, void (*acquire)(EV_P) EV_THROW) EV_THROW;
EV_API_DECL unsigned int ev_pending_count (EV_P) EV_THROW; /* number of pending events, if any */
EV_API_DECL void ev_invoke_pending (EV_P); /* invoke all pending watchers */