Index: libcfa/src/concurrency/actor.hfa
===================================================================
--- libcfa/src/concurrency/actor.hfa	(revision 2856044a458ffcb609400db7e869d2a1b0030058)
+++ libcfa/src/concurrency/actor.hfa	(revision 858350aeda11d90bc7dba1d54c8df962b4643ed5)
@@ -662,12 +662,14 @@
 
 // Default messages to send to any actor to change status
-// struct __DeleteMsg { inline message; } DeleteMsg;
-// void ?{}( __DeleteMsg & this ) { ((message &) this){ Finished }; }
-// struct __DestroyMsg { inline message; } DestroyMsg;
-// void ?{}( __DestroyMsg & this ) { ((message &) this){ Finished }; }
-// struct __FinishedMsg { inline message; } FinishedMsg;
-// void ?{}( __FinishedMsg & this ) { ((message &) this){ Finished }; }
-
-// Allocation receive( actor & this, __DeleteMsg & msg ) { return Delete; }
-// Allocation receive( actor & this, __DestroyMsg & msg ) { return Destroy; }
-// Allocation receive( actor & this, __FinishedMsg & msg ) { return Finished; }
+// assigned at creation to __base_msg_finished to avoid unused message warning
+message __base_msg_finished @= { .allocation_ : Finished };
+struct __DeleteMsg { inline message; } DeleteMsg = __base_msg_finished;
+struct __DestroyMsg { inline message; } DestroyMsg = __base_msg_finished;
+struct __FinishedMsg { inline message; } FinishedMsg = __base_msg_finished;
+void ?{}( __DeleteMsg & this, Allocation status ) { ((message &) this){ status }; }
+void ?{}( __DestroyMsg & this, Allocation status ) { ((message &) this){ status }; }
+void ?{}( __FinishedMsg & this, Allocation status ) { ((message &) this){ status }; }
+
+Allocation receive( actor & this, __DeleteMsg & msg ) { return Delete; }
+Allocation receive( actor & this, __DestroyMsg & msg ) { return Destroy; }
+Allocation receive( actor & this, __FinishedMsg & msg ) { return Finished; }
