Index: libcfa/src/collections/string.cfa
===================================================================
--- libcfa/src/collections/string.cfa	(revision 710d0c8c05c4f2ca495488e16910eebacf204c21)
+++ libcfa/src/collections/string.cfa	(revision cf191acabcbe38d3f82a9149c4febffefea40a9a)
@@ -10,6 +10,6 @@
 // Created On       : Fri Sep 03 11:00:00 2021
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Feb  7 21:17:06 2024
-// Update Count     : 259
+// Last Modified On : Mon Apr 15 21:56:28 2024
+// Update Count     : 260
 //
 
@@ -198,6 +198,5 @@
 	cstr[len] = '\0';									// terminate
 	_Ostream_Manip(const char *) cf @= { cstr, f.wd, f.pc, f.base, {f.all} };
-	os | cf | nonl;
-	return os;
+	return os | cf | nonl;
 } // ?|?
 
Index: libcfa/src/collections/string_res.cfa
===================================================================
--- libcfa/src/collections/string_res.cfa	(revision 710d0c8c05c4f2ca495488e16910eebacf204c21)
+++ libcfa/src/collections/string_res.cfa	(revision cf191acabcbe38d3f82a9149c4febffefea40a9a)
@@ -10,6 +10,6 @@
 // Created On       : Fri Sep 03 11:00:00 2021
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sat Feb 10 17:47:22 2024
-// Update Count     : 83
+// Last Modified On : Mon Apr 15 21:56:27 2024
+// Update Count     : 85
 //
 
@@ -200,6 +200,5 @@
 ofstream & ?|?(ofstream & out, const string_res & s) {
 	// CFA string is NOT null terminated, so print exactly lnth characters in a minimum width of 0.
-	out | wd( 0, s.Handle.lnth, s.Handle.s ) | nonl;
-	return out;
+	return out | wd( 0, s.Handle.lnth, s.Handle.s ) | nonl;
 }
 
Index: libcfa/src/stdlib.hfa
===================================================================
--- libcfa/src/stdlib.hfa	(revision 710d0c8c05c4f2ca495488e16910eebacf204c21)
+++ libcfa/src/stdlib.hfa	(revision cf191acabcbe38d3f82a9149c4febffefea40a9a)
@@ -10,6 +10,6 @@
 // Created On       : Thu Jan 28 17:12:35 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Mon Apr 15 10:51:38 2024
-// Update Count     : 815
+// Last Modified On : Mon Apr 15 22:11:51 2024
+// Update Count     : 817
 //
 
@@ -215,5 +215,5 @@
 	} // alloc_internal$
 
-	forall( TT... | { T * alloc_internal$( void *, T *, size_t, size_t, S_fill(T), TT ); } ) {
+	forall( TT ... | { T * alloc_internal$( void *, T *, size_t, size_t, S_fill(T), TT ); } ) {
 		T * alloc_internal$( void *, T *, size_t Align, size_t Dim, S_fill(T) Fill, T_resize Resize, TT rest ) {
 	        return alloc_internal$( Resize, (T*)0p, Align, Dim, Fill, rest);
@@ -267,5 +267,5 @@
 	free( (void *)ptr );								// C free
 } // free
-static inline forall( T &, TT... | { void free( TT ); } )
+static inline forall( T &, TT ... | { void free( TT ); } )
 void free( T * ptr, TT rest ) {
 	free( ptr );
@@ -274,5 +274,5 @@
 
 // CFA allocation/deallocation and constructor/destructor, non-array types
-static inline forall( T & | sized(T), TT... | { void ?{}( T &, TT ); } )
+static inline forall( T & | sized(T), TT ... | { void ?{}( T &, TT ); } )
 T * new( TT p ) {
 	return &(*(T *)malloc()){ p };						// run constructor
@@ -287,5 +287,5 @@
 	free( ptr );										// always call free
 } // delete
-static inline forall( T &, TT... | { void ^?{}( T & ); void delete( TT ); } )
+static inline forall( T &, TT ... | { void ^?{}( T & ); void delete( TT ); } )
 void delete( T * ptr, TT rest ) {
 	delete( ptr );
@@ -294,7 +294,7 @@
 
 // CFA allocation/deallocation and constructor/destructor, array types
-forall( T & | sized(T), TT... | { void ?{}( T &, TT ); } ) T * anew( size_t dim, TT p );
+forall( T & | sized(T), TT ... | { void ?{}( T &, TT ); } ) T * anew( size_t dim, TT p );
 forall( T & | sized(T) | { void ^?{}( T & ); } ) void adelete( T arr[] );
-forall( T & | sized(T) | { void ^?{}( T & ); }, TT... | { void adelete( TT ); } ) void adelete( T arr[], TT rest );
+forall( T & | sized(T) | { void ^?{}( T & ); }, TT ... | { void adelete( TT ); } ) void adelete( T arr[], TT rest );
 //---------------------------------------
 
Index: libcfa/src/time.hfa
===================================================================
--- libcfa/src/time.hfa	(revision 710d0c8c05c4f2ca495488e16910eebacf204c21)
+++ libcfa/src/time.hfa	(revision cf191acabcbe38d3f82a9149c4febffefea40a9a)
@@ -10,6 +10,6 @@
 // Created On       : Wed Mar 14 23:18:57 2018
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sat Oct  8 09:07:48 2022
-// Update Count     : 668
+// Last Modified On : Thu Apr 18 12:07:21 2024
+// Update Count     : 670
 //
 
@@ -84,10 +84,10 @@
 	Duration ?`m( int64_t min ) { return (Duration)@{ min * (60LL * TIMEGRAN) }; }
 	Duration ?`m( double min ) { return (Duration)@{ min * (60LL * TIMEGRAN) }; }
-	Duration ?`h( int64_t hours ) { return (Duration)@{ hours * (60LL * 60LL * TIMEGRAN) }; }
-	Duration ?`h( double hours ) { return (Duration)@{ hours * (60LL * 60LL * TIMEGRAN) }; }
-	Duration ?`d( int64_t days ) { return (Duration)@{ days * (24LL * 60LL * 60LL * TIMEGRAN) }; }
-	Duration ?`d( double days ) { return (Duration)@{ days * (24LL * 60LL * 60LL * TIMEGRAN) }; }
-	Duration ?`w( int64_t weeks ) { return (Duration)@{ weeks * (7LL * 24LL * 60LL * 60LL * TIMEGRAN) }; }
-	Duration ?`w( double weeks ) { return (Duration)@{ weeks * (7LL * 24LL * 60LL * 60LL * TIMEGRAN) }; }
+	Duration ?`h( int64_t hour ) { return (Duration)@{ hour * (60LL * 60LL * TIMEGRAN) }; }
+	Duration ?`h( double hour ) { return (Duration)@{ hour * (60LL * 60LL * TIMEGRAN) }; }
+	Duration ?`d( int64_t day ) { return (Duration)@{ day * (24LL * 60LL * 60LL * TIMEGRAN) }; }
+	Duration ?`d( double day ) { return (Duration)@{ day * (24LL * 60LL * 60LL * TIMEGRAN) }; }
+	Duration ?`w( int64_t week ) { return (Duration)@{ week * (7LL * 24LL * 60LL * 60LL * TIMEGRAN) }; }
+	Duration ?`w( double week ) { return (Duration)@{ week * (7LL * 24LL * 60LL * 60LL * TIMEGRAN) }; }
 
 	int64_t ?`ns( Duration dur ) { return dur.tn; }
