Index: libcfa/prelude/builtins.c
===================================================================
--- libcfa/prelude/builtins.c	(revision 697e484d702da04c1cc5dd1d99c67dd6bda73a46)
+++ libcfa/prelude/builtins.c	(revision 8a30423a0b5ccbd381d8c3ea76663ae49568aa38)
@@ -10,6 +10,6 @@
 // Created On       : Fri Jul 21 16:21:03 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Mar 26 21:33:54 2019
-// Update Count     : 92
+// Last Modified On : Tue Mar 26 23:10:36 2019
+// Update Count     : 95
 //
 
@@ -27,19 +27,20 @@
 // increment/decrement unification
 
-static inline forall( dtype DT | { DT & ?+=?( DT &, one_t ); } )
-DT & ++?( DT & x ) { return x += 1; }
+static inline {
+	forall( dtype DT | { DT & ?+=?( DT &, one_t ); } )
+	DT & ++?( DT & x ) { return x += 1; }
 
-static inline forall( dtype DT | sized(DT) | { void ?{}( DT &, DT ); void ^?{}( DT & ); DT & ?+=?( DT &, one_t ); } )
-DT & ?++( DT & x ) { DT tmp = x; x += 1; return tmp; }
+	forall( dtype DT | sized(DT) | { void ?{}( DT &, DT ); void ^?{}( DT & ); DT & ?+=?( DT &, one_t ); } )
+	DT & ?++( DT & x ) { DT tmp = x; x += 1; return tmp; }
 
-static inline forall( dtype DT | { DT & ?-=?( DT &, one_t ); } )
-DT & --?( DT & x ) { return x -= 1; }
+	forall( dtype DT | { DT & ?-=?( DT &, one_t ); } )
+	DT & --?( DT & x ) { return x -= 1; }
 
-static inline forall( dtype DT | sized(DT) | { void ?{}( DT &, DT ); void ^?{}( DT & ); DT & ?-=?( DT &, one_t ); } )
-DT & ?--( DT & x ) { DT tmp = x; x -= 1; return tmp; }
+	forall( dtype DT | sized(DT) | { void ?{}( DT &, DT ); void ^?{}( DT & ); DT & ?-=?( DT &, one_t ); } )
+	DT & ?--( DT & x ) { DT tmp = x; x -= 1; return tmp; }
+} // distribution
 
 // universal typed pointer constant
-
-// Compiler issue: there is a problem with anonymous types that do not have  a size.
+// Compiler issue: there is a problem with anonymous types that do not have a size.
 static inline forall( dtype DT | sized(DT) ) DT * intptr( uintptr_t addr ) { return (DT *)addr; }
 
@@ -55,10 +56,12 @@
 } // extern "C"
 
-static inline float ?\?( float x, float y ) { return powf( x, y ); }
-static inline double ?\?( double x, double y ) { return pow( x, y ); }
-static inline long double ?\?( long double x, long double y ) { return powl( x, y ); }
-static inline float _Complex ?\?( float _Complex x, _Complex float y ) { return cpowf(x, y ); }
-static inline double _Complex ?\?( double _Complex x, _Complex double y ) { return cpow( x, y ); }
-static inline long double _Complex ?\?( long double _Complex x, _Complex long double y ) { return cpowl( x, y ); }
+static inline {
+	float ?\?( float x, float y ) { return powf( x, y ); }
+	double ?\?( double x, double y ) { return pow( x, y ); }
+	long double ?\?( long double x, long double y ) { return powl( x, y ); }
+	float _Complex ?\?( float _Complex x, _Complex float y ) { return cpowf(x, y ); }
+	double _Complex ?\?( double _Complex x, _Complex double y ) { return cpow( x, y ); }
+	long double _Complex ?\?( long double _Complex x, _Complex long double y ) { return cpowl( x, y ); }
+} // distribution
 
 #define __CFA_BASE_COMP_1__() if ( ep == 1 ) return 1
@@ -67,5 +70,5 @@
 
 #define __CFA_EXP__() \
-	if ( y == 0 ) return 1;								/* base case */ \
+	if ( y == 0 ) return 1;								/* convention */ \
 	__CFA_BASE_COMP_1__();								/* base case */ \
 	__CFA_BASE_COMP_2__();								/* special case, positive shifting for integral types */ \
@@ -78,20 +81,11 @@
 	return ep * op
 
-static inline long int ?\?( int ep, unsigned int y ) {
-	__CFA_EXP__();
-} // ?\?
-
-static inline long int ?\?( long int ep, unsigned long int y ) {
-	__CFA_EXP__();
-} // ?\?
-
-// unsigned computation may be faster and larger
-static inline unsigned long int ?\?( unsigned int ep, unsigned int y ) {
-	__CFA_EXP__();
-} // ?\?
-
-static inline unsigned long int ?\?( unsigned long int ep, unsigned long int y ) {
-	__CFA_EXP__();
-} // ?\?
+static inline {
+	long int ?\?( int ep, unsigned int y ) { __CFA_EXP__(); }
+	long int ?\?( long int ep, unsigned long int y ) { __CFA_EXP__(); }
+	// unsigned computation may be faster and larger
+	unsigned long int ?\?( unsigned int ep, unsigned int y ) { __CFA_EXP__(); }
+	unsigned long int ?\?( unsigned long int ep, unsigned long int y ) { __CFA_EXP__(); }
+} // distribution
 
 #undef __CFA_BASE_COMP_1__
@@ -102,13 +96,8 @@
 #define __CFA_EXP_OVERFLOW__()
 
-static inline forall( otype OT | { void ?{}( OT & this, one_t ); OT ?*?( OT, OT ); } )
-OT ?\?( OT ep, unsigned int y ) {
-	__CFA_EXP__();
-} // ?\?
-
-static inline forall( otype OT | { void ?{}( OT & this, one_t ); OT ?*?( OT, OT ); } )
-OT ?\?( OT ep, unsigned long int y ) {
-	__CFA_EXP__();
-} // ?\?
+static inline forall( otype OT | { void ?{}( OT & this, one_t ); OT ?*?( OT, OT ); } ) {
+	OT ?\?( OT ep, unsigned int y ) { __CFA_EXP__(); }
+	OT ?\?( OT ep, unsigned long int y ) { __CFA_EXP__(); }
+} // distribution
 
 #undef __CFA_BASE_COMP_1__
@@ -116,8 +105,10 @@
 #undef __CFA_EXP_OVERFLOW__
 
-static inline long int ?\=?( long int & x, unsigned long int y ) { x = x \ y; return x; }
-static inline unsigned long int ?\=?( unsigned long int & x, unsigned long int y ) { x = x \ y; return x; }
-static inline int ?\=?( int & x, unsigned long int y ) { x = x \ y; return x; }
-static inline unsigned int ?\=?( unsigned int & x, unsigned long int y ) { x = x \ y; return x; }
+static inline {
+	long int ?\=?( long int & x, unsigned long int y ) { x = x \ y; return x; }
+	unsigned long int ?\=?( unsigned long int & x, unsigned long int y ) { x = x \ y; return x; }
+	int ?\=?( int & x, unsigned long int y ) { x = x \ y; return x; }
+	unsigned int ?\=?( unsigned int & x, unsigned long int y ) { x = x \ y; return x; }
+} // distribution
 
 // Local Variables: //
