Index: libcfa/src/concurrency/select.cfa
===================================================================
--- libcfa/src/concurrency/select.cfa	(revision 42cd67b8648af20aa32a5f7d56a2b08e64eb70ad)
+++ libcfa/src/concurrency/select.cfa	(revision fd3be4230b6d38c4539c48fe911f24ac2dcd99e7)
@@ -10,7 +10,7 @@
 // Author           : Colby Alexander Parsons
 // Created On       : Thu Apr 21 19:46:50 2023
-// Last Modified By :
-// Last Modified On :
-// Update Count     :
+// Last Modified By : Kyoung Seo
+// Last Modified On : Wed Mar 19 12:00:00 2025
+// Update Count     : 1
 //
 
@@ -51,9 +51,2 @@
 bool on_selected( select_timeout_node & this, select_node & node ) { return true; }
 
-// Gateway routine to wait on duration
-select_timeout_node timeout( Duration duration ) {
-	select_timeout_node node{ duration, timeout_handler_select_cast };
-    return node;
-}
-select_timeout_node sleep( Duration duration ) { return timeout( duration ); }
-
Index: libcfa/src/concurrency/select.hfa
===================================================================
--- libcfa/src/concurrency/select.hfa	(revision 42cd67b8648af20aa32a5f7d56a2b08e64eb70ad)
+++ libcfa/src/concurrency/select.hfa	(revision fd3be4230b6d38c4539c48fe911f24ac2dcd99e7)
@@ -10,7 +10,7 @@
 // Author           : Colby Alexander Parsons
 // Created On       : Thu Jan 21 19:46:50 2023
-// Last Modified By :
-// Last Modified On :
-// Update Count     :
+// Last Modified By : Kyoung Seo
+// Last Modified On : Wed Mar 19 12:00:00 2025
+// Update Count     : 1
 //
 
@@ -214,6 +214,4 @@
 select_timeout_node __CFA_select_get_type( select_timeout_node this );
 
-// Gateway routines to waituntil on duration
-select_timeout_node timeout( Duration duration );
-select_timeout_node sleep( Duration duration );
-
+// Timer macro for waituntil
+#define _timeout(D) (select_timeout_node) { D, timeout_handler_select_cast }
Index: tests/concurrency/waituntil/all_types.cfa
===================================================================
--- tests/concurrency/waituntil/all_types.cfa	(revision 42cd67b8648af20aa32a5f7d56a2b08e64eb70ad)
+++ tests/concurrency/waituntil/all_types.cfa	(revision fd3be4230b6d38c4539c48fe911f24ac2dcd99e7)
@@ -39,5 +39,5 @@
         or when( i % 4 < 2 ) waituntil( B ) { consume_b_val( myTotal ); }
         or waituntil( c << C ) { if ( c == -1 ) break; myTotal += c; }
-        or when( i % 3 ) waituntil( timeout( 1`ms ) ) {}
+        or when( i % 3 ) waituntil( _timeout( 1`ms ) ) {}
         or when( i % 8 < 4 ) else {}
     }
@@ -53,5 +53,5 @@
         or waituntil( c << C ) { if ( c == -1 ) break; myTotal += c; }
         or waituntil( B ) { consume_b_val( myTotal ); }
-        or waituntil( timeout( 100`ns ) ) { }
+        or waituntil( _timeout( 100`ns ) ) { }
     }
     __atomic_fetch_add( &globalTotal, myTotal, __ATOMIC_SEQ_CST );
@@ -99,5 +99,5 @@
                 or when( j % 4 < 2 ) waituntil( B ) { produce_b_val( total ); }
                 and when( j % 8 < 4 ) waituntil( C << j ) { total += j; }
-                and waituntil( timeout( 1`ns ) ) {}
+                and waituntil( _timeout( 1`ns ) ) {}
                 if ( j == numtimes / 2 )
                     fulfil( F, val_to_deliver );
Index: tests/concurrency/waituntil/timeout.cfa
===================================================================
--- tests/concurrency/waituntil/timeout.cfa	(revision 42cd67b8648af20aa32a5f7d56a2b08e64eb70ad)
+++ tests/concurrency/waituntil/timeout.cfa	(revision fd3be4230b6d38c4539c48fe911f24ac2dcd99e7)
@@ -6,14 +6,14 @@
 
 int main() {
-    waituntil( sleep( 1`ms ) ) { printf("timeout\n"); }
-    waituntil( timeout( 1`s ) ) { printf("timeout\n"); } or waituntil( timeout( 2`s ) ) { printf("timeout\n"); }
-    waituntil( timeout( 100`s ) ) { printf("timeout 1\n"); } or else { printf("else\n"); }
-    waituntil( timeout( 1`ns ) ) { printf("timeout\n"); } and waituntil( timeout( 2`s ) ) { printf("timeout\n"); }
+    waituntil( _timeout( 1`ms ) ) { printf("timeout\n"); }
+    waituntil( _timeout( 1`s ) ) { printf("timeout\n"); } or waituntil( _timeout( 2`s ) ) { printf("timeout\n"); }
+    waituntil( _timeout( 100`s ) ) { printf("timeout 1\n"); } or else { printf("else\n"); }
+    waituntil( _timeout( 1`ns ) ) { printf("timeout\n"); } and waituntil( _timeout( 2`s ) ) { printf("timeout\n"); }
     int count = 0;
     for ( i; 1000 )
-        waituntil( timeout( 1`ns ) ) { count++; } or else { count++; }
+        waituntil( _timeout( 1`ns ) ) { count++; } or else { count++; }
 
     assert( count == 1000 );
-    sleep( 1`ms );
+    _timeout( 1`ms );
     printf("done\n");
 }
