Index: libcfa/src/exception.c
===================================================================
--- libcfa/src/exception.c	(revision c34bb1f97a307c6584d454c750e314f5eb433522)
+++ libcfa/src/exception.c	(revision 57fd66d2309b6cb82d553a6c4079aa5410565b14)
@@ -123,5 +123,5 @@
 
 // Creates a copy of the indicated exception and sets current_exception to it.
-static void __cfaehm_allocate_exception( exception_t * except ) {
+void __cfaehm_allocate_exception( exception_t * except ) {
 	struct exception_context_t * context = this_exception_context();
 
@@ -239,5 +239,5 @@
 
 // The exception that is being thrown must already be stored.
-static void __cfaehm_begin_unwind(void(*defaultHandler)(exception_t *)) {
+void __cfaehm_begin_unwind(void(*defaultHandler)(exception_t *)) {
 	struct exception_context_t * context = this_exception_context();
 	if ( NULL == context->current_exception ) {
Index: libcfa/src/exception.h
===================================================================
--- libcfa/src/exception.h	(revision c34bb1f97a307c6584d454c750e314f5eb433522)
+++ libcfa/src/exception.h	(revision 57fd66d2309b6cb82d553a6c4079aa5410565b14)
@@ -50,4 +50,9 @@
 void __cfaehm_rethrow_terminate() __attribute__((noreturn));
 void __cfaehm_throw_resume(exception_t * except, void (*)(exception_t *));
+
+// Used in non-local ehm (see coroutine.cfa)
+void __cfaehm_allocate_exception( exception_t * except );
+void __cfaehm_begin_unwind(void(*defaultHandler)(exception_t *));
+
 
 // Function catches termination exceptions.
