Index: libcfa/src/concurrency/clib/cfathread.cfa
===================================================================
--- libcfa/src/concurrency/clib/cfathread.cfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/concurrency/clib/cfathread.cfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -16,7 +16,8 @@
 // #define EPOLL_FOR_SOCKETS
 
-#include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
 #include <string.h>
 #include <errno.h>
+#include <unistd.h>
+#include <sys/socket.h>
 
 #include "fstream.hfa"
@@ -27,5 +28,5 @@
 #include "time.hfa"
 #include "stdlib.hfa"
-
+#include "iofwd.hfa"
 #include "cfathread.h"
 
@@ -470,8 +471,4 @@
 }
 
-#include <unistd.h>
-
-#include <iofwd.hfa>
-
 extern "C" {
 	//--------------------
Index: libcfa/src/concurrency/clib/cfathread.h
===================================================================
--- libcfa/src/concurrency/clib/cfathread.h	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/concurrency/clib/cfathread.h	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -10,12 +10,12 @@
 // Created On       : Tue Sep 22 15:31:20 2020
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Feb 16 12:00:32 2023
-// Update Count     : 5
+// Last Modified On : Sat Feb 25 17:39:20 2023
+// Update Count     : 6
 //
 
 #if defined(__cforall) || defined(__cplusplus)
-#include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
 #include <unistd.h>
 #include <errno.h>
+#include <sys/socket.h>
 
 extern "C" {
Index: libcfa/src/concurrency/io/call.cfa.in
===================================================================
--- libcfa/src/concurrency/io/call.cfa.in	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/concurrency/io/call.cfa.in	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -31,7 +31,7 @@
 Prelude = """#define __cforall_thread__
 
-#include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
 #include <unistd.h>
 #include <errno.h>
+#include <sys/socket.h>
 #include <time.hfa>
 
Index: libcfa/src/concurrency/iofwd.hfa
===================================================================
--- libcfa/src/concurrency/iofwd.hfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/concurrency/iofwd.hfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -16,6 +16,6 @@
 #pragma once
 
-#include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
 #include <unistd.h>
+#include <sys/socket.h>
 
 extern "C" {
Index: libcfa/src/concurrency/kernel/cluster.hfa
===================================================================
--- libcfa/src/concurrency/kernel/cluster.hfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/concurrency/kernel/cluster.hfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -146,7 +146,7 @@
 }
 
-static struct {
-	const unsigned readyq;
-	const unsigned io;
+const static struct {
+	unsigned readyq;
+	unsigned io;
 } __shard_factor = { 2, 1 };
 
Index: libcfa/src/concurrency/mutex_stmt.hfa
===================================================================
--- libcfa/src/concurrency/mutex_stmt.hfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/concurrency/mutex_stmt.hfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -4,5 +4,6 @@
 //-----------------------------------------------------------------------------
 // is_lock
-trait is_lock(L & | sized(L)) {
+forall(L & | sized(L))
+trait is_lock {
 	// For acquiring a lock
 	void lock( L & );
Index: libcfa/src/interpose.cfa
===================================================================
--- libcfa/src/interpose.cfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/interpose.cfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -10,6 +10,6 @@
 // Created On       : Wed Mar 29 16:10:31 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Feb 19 17:09:16 2023
-// Update Count     : 183
+// Last Modified On : Fri Feb 24 15:31:03 2023
+// Update Count     : 185
 //
 
@@ -101,9 +101,9 @@
 		preload_libgcc();
 
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
+		#pragma GCC diagnostic push
+		#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
 		INTERPOSE_LIBC( abort, version );
 		INTERPOSE_LIBC( exit , version );
-#pragma GCC diagnostic pop
+		#pragma GCC diagnostic pop
 
 		if(__cfathreadabi_interpose_startup) __cfathreadabi_interpose_startup( do_interpose_symbol );
@@ -273,14 +273,14 @@
 	va_start( args, fmt );
 	__abort( false, fmt, args );
-    // CONTROL NEVER REACHES HERE!
+	// CONTROL NEVER REACHES HERE!
 	va_end( args );
 }
 
 void abort( bool signalAbort, const char fmt[], ... ) {
-    va_list args;
-    va_start( args, fmt );
-    __abort( signalAbort, fmt, args );
-    // CONTROL NEVER REACHES HERE!
-    va_end( args );
+	va_list args;
+	va_start( args, fmt );
+	__abort( signalAbort, fmt, args );
+	// CONTROL NEVER REACHES HERE!
+	va_end( args );
 }
 
Index: libcfa/src/limits.cfa
===================================================================
--- libcfa/src/limits.cfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/limits.cfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -10,9 +10,8 @@
 // Created On       : Wed Apr  6 18:06:52 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Jan  8 18:53:17 2023
-// Update Count     : 86
+// Last Modified On : Fri Feb 17 12:25:39 2023
+// Update Count     : 87
 //
 
-// need _GNU_SOURCE to access long double M_*l in math.h
 #include <limits.h>
 #include <float.h>
Index: libcfa/src/vec/vec.hfa
===================================================================
--- libcfa/src/vec/vec.hfa	(revision ce44c5f70ab0a50322bed0d103a046e00bbadaa7)
+++ libcfa/src/vec/vec.hfa	(revision d964c39341a44901d924f02a9e01d5cf08df25cc)
@@ -18,35 +18,46 @@
 #include <math.hfa>
 
-trait fromint(T) {
+forall(T)
+trait fromint {
     void ?{}(T&, int);
 };
-trait zeroinit(T) {
+forall(T)
+trait zeroinit {
     void ?{}(T&, zero_t);
 };
-trait zero_assign(T) {
+forall(T)
+trait zero_assign {
     T ?=?(T&, zero_t);
 };
-trait subtract(T) {
+forall(T)
+trait subtract {
     T ?-?(T, T);
 };
-trait negate(T) {
+forall(T)
+trait negate {
     T -?(T);
 };
-trait add(T) {
+forall(T)
+trait add {
     T ?+?(T, T);
 };
-trait multiply(T) {
+forall(T)
+trait multiply {
     T ?*?(T, T);
 };
-trait divide(T) {
+forall(T)
+trait divide {
     T ?/?(T, T);
 };
-trait lessthan(T) {
+forall(T)
+trait lessthan {
     int ?<?(T, T);
 };
-trait equality(T) {
+forall(T)
+trait equality {
     int ?==?(T, T);
 };
-trait sqrt(T) {
+forall(T)
+trait sqrt {
     T sqrt(T);
 };
