Index: libcfa/src/concurrency/monitor.cfa
===================================================================
--- libcfa/src/concurrency/monitor.cfa	(revision 6cbc5a626cf54938256101fcd9c34533b8b3d28e)
+++ libcfa/src/concurrency/monitor.cfa	(revision e426c6fb27828da1fe14b9554c5f8c2b021ab84d)
@@ -10,6 +10,6 @@
 // Created On       : Thd Feb 23 12:27:26 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  4 22:03:41 2025
-// Update Count     : 82
+// Last Modified On : Thu Mar 26 22:37:42 2026
+// Update Count     : 91
 //
 
@@ -493,50 +493,42 @@
 }
 
-bool signal( condition & this ) libcfa_public {
-	if ( empty( this ) ) { return false; }
-
-	//Check that everything is as expected
-	verify( this.monitors );
-	verify( this.monitor_count != 0 );
-
-	//Some more checking in debug
-	__cfaabi_dbg_debug_do(
+bool signal( condition & this ) libcfa_public with( this ) {
+  if ( empty( this ) ) { return false; }
+
+	verifyf( monitors != 0p, "Waiting with no monitors (%p)", monitors );
+	verifyf( monitor_count != 0, "Waiting with 0 monitors (%"PRIiFAST16")", monitor_count );
+
+	__cfaabi_dbg_debug_do(								// more checking in debug
 		thread$ * this_thrd = active_thread();
-		if ( this.monitor_count != this_thrd->monitors.size ) {
-			abort( "Signal on condition %p made with different number of monitor(s), expected %zi got %zi", &this, this.monitor_count, this_thrd->monitors.size );
-		}
-
-		for ( i; this.monitor_count ) {
-			if ( this.monitors[i] != this_thrd->monitors[i] ) {
-				abort( "Signal on condition %p made with different monitor, expected %p got %p", &this, this.monitors[i], this_thrd->monitors[i] );
-			}
-		}
+		if ( monitor_count != this_thrd->monitors.size ) {
+			abort( "Signal on condition %p made with different number of monitor(s), expected %zi got %zi",
+				   &this, monitor_count, this_thrd->monitors.size );
+		} // if
+
+		for ( i; monitor_count ) {
+			if ( monitors[i] != this_thrd->monitors[i] ) {
+				abort( "Signal on condition %p made with different monitor, expected %p got %p",
+					   &this, monitors[i], this_thrd->monitors[i] );
+			} // if
+		} // for
 	);
 
-	__lock_size_t count = this.monitor_count;
-
-	// Lock all monitors
-	lock_all( this.monitors, 0p, count );
-
-	//Pop the head of the waiting queue
-	__condition_node_t * node = pop_head( this.blocked );
-
-	//Add the thread to the proper AS stack
-	for ( i; count ) {
+	__lock_size_t count = monitor_count;
+	lock_all( monitors, 0p, count );					// lock all monitors
+	__condition_node_t * node = pop_head( blocked );	// pop head of waiting queue
+
+	for ( i; count ) {									// add threads to the proper AS stack
 		__condition_criterion_t * crit = &node->criteria[i];
 		assert( ! crit->ready );
 		push( crit->target->signal_stack, crit );
-	}
-
-	//Release
-	unlock_all( this.monitors, count );
-
+	} // for
+
+	unlock_all( monitors, count );						// release
 	return true;
-}
+} // signal
 
 bool signal_block( condition & this ) libcfa_public {
-	if ( ! this.blocked.head ) { return false; }
-
-	//Check that everything is as expected
+  if ( empty( this ) ) { return false; }
+
 	verifyf( this.monitors != 0p, "Waiting with no monitors (%p)", this.monitors );
 	verifyf( this.monitor_count != 0, "Waiting with 0 monitors (%"PRIiFAST16")", this.monitor_count );
@@ -551,6 +543,5 @@
 	wait_ctx_primed( active_thread(), 0 )
 
-	//save contexts
-	monitor_save;
+	monitor_save;										// save contexts
 
 	//Find the thread to run
@@ -560,22 +551,16 @@
 	__cfaabi_dbg_print_buffer_decl( "Kernel : signal_block condition %p (s: %p)\n", &this, signallee );
 
-	// unlock all the monitors
-	unlock_all( locks, count );
-
-	// unpark the thread we signalled
-	unpark( signallee );
-
-	//Everything is ready to go to sleep
-	park();
-
-	// WE WOKE UP
+	unlock_all( locks, count );							// unlock all the monitors
+	unpark( signallee );								// unpark the thread we signalled
+	park();												// everything is ready to go to sleep
+
+	// WOKE UP
 
 	__cfaabi_dbg_print_buffer_local( "Kernel : signal_block returned\n" );
 
-	//We are back, restore the masks and recursions
-	monitor_restore;
+	monitor_restore;									// restore the masks and recursions
 
 	return true;
-}
+} // signal_block
 
 // Access the user_info of the thread waiting at the front of the queue
