Index: libcfa/prelude/builtins.c
===================================================================
--- libcfa/prelude/builtins.c	(revision b830e0466981dd421c92b9e5834460f65466cc05)
+++ libcfa/prelude/builtins.c	(revision 0a616e01964452b90204d19710c490e699c8ddce)
@@ -10,6 +10,6 @@
 // Created On       : Fri Jul 21 16:21:03 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Aug  5 21:40:38 2018
-// Update Count     : 20
+// Last Modified On : Sun Mar 10 10:52:50 2019
+// Update Count     : 31
 //
 
@@ -26,15 +26,19 @@
 // increment/decrement unification
 
-static inline forall( dtype T | { T& ?+=?( T&, one_t ); } )
-T& ++? ( T& x ) { return x += 1; }
+static inline forall( dtype T | { T & ?+=?( T &, one_t ); } )
+T & ++? ( T & x ) { return x += 1; }
 
-static inline forall( dtype T | sized(T) | { void ?{}( T&, T ); void ^?{}( T& ); T& ?+=?( T&, one_t ); } )
-T& ?++ ( T& x ) { T tmp = x; x += 1; return tmp; }
+static inline forall( dtype T | sized(T) | { void ?{}( T &, T ); void ^?{}( T & ); T & ?+=?( T &, one_t ); } )
+T & ?++ ( T & x ) { T tmp = x; x += 1; return tmp; }
 
-static inline forall( dtype T | { T& ?-=?( T&, one_t ); } )
-T& --? ( T& x ) { return x -= 1; }
+static inline forall( dtype T | { T & ?-=?( T &, one_t ); } )
+T & --? ( T & x ) { return x -= 1; }
 
-static inline forall( dtype T | sized(T) | { void ?{}( T&, T ); void ^?{}( T& ); T& ?-=?( T&, one_t ); } )
-T& ?-- ( T& x ) { T tmp = x; x -= 1; return tmp; }
+static inline forall( dtype T | sized(T) | { void ?{}( T &, T ); void ^?{}( T & ); T & ?-=?( T &, one_t ); } )
+T & ?-- ( T & x ) { T tmp = x; x -= 1; return tmp; }
+
+// universal typed pointer constant
+
+static inline forall( dtype T ) T * intptr( uintptr_t addr ) { return (T *)addr; }
 
 // exponentiation operator implementation
