Index: src/CodeGen/CodeGenerator.cc
===================================================================
--- src/CodeGen/CodeGenerator.cc	(revision 43c461da57a6b7e67b030127cc6b531975a67091)
+++ src/CodeGen/CodeGenerator.cc	(revision d7312acc807d400d254331f9acbad9eb4da91a8c)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Sep  3 20:42:52 2017
-// Update Count     : 490
+// Last Modified On : Sat May  5 09:08:32 2018
+// Update Count     : 494
 //
 #include "CodeGenerator.h"
@@ -370,5 +370,5 @@
 
 	void CodeGenerator::postvisit( Constant * constant ) {
-		output << constant->get_value() ;
+		output << constant->get_value();
 	}
 
@@ -587,5 +587,5 @@
 		output << "(";
 		if ( castExpr->get_result()->isVoid() ) {
-			output << "(void)" ;
+			output << "(void)";
 		} else {
 			// at least one result type of cast.
@@ -878,5 +878,5 @@
 			} // for
 		} // if
-		output << " );" ;
+		output << " );";
 	}
 
@@ -886,9 +886,9 @@
 		output << "( ";
 		if ( asmStmt->get_instruction() ) asmStmt->get_instruction()->accept( *visitor );
-		output << " )" ;
+		output << " )";
 	}
 
 	void CodeGenerator::postvisit( DirectiveStmt * dirStmt ) {
-		output << dirStmt->directive;
+		output << endl << dirStmt->directive;			// endl prevents spaces before directive
 	}
 
@@ -907,5 +907,5 @@
 
 	void CodeGenerator::postvisit( SwitchStmt * switchStmt ) {
-		output << "switch ( " ;
+		output << "switch ( ";
 		switchStmt->get_condition()->accept( *visitor );
 		output << " ) ";
@@ -933,5 +933,5 @@
 		++indent;
 		for ( std::list<Statement *>::iterator i = sts.begin(); i != sts.end();  i++) {
-			output << indent << printLabels( (*i)->get_labels() )  ;
+			output << indent << printLabels( (*i)->get_labels() ) ;
 			(*i)->accept( *visitor );
 			output << endl;
@@ -1070,7 +1070,7 @@
 	void CodeGenerator::postvisit( WhileStmt * whileStmt ) {
 		if ( whileStmt->get_isDoWhile() ) {
-			output << "do" ;
-		} else {
-			output << "while (" ;
+			output << "do";
+		} else {
+			output << "while (";
 			whileStmt->get_condition()->accept( *visitor );
 			output << ")";
@@ -1084,5 +1084,5 @@
 
 		if ( whileStmt->get_isDoWhile() ) {
-			output << " while (" ;
+			output << " while (";
 			whileStmt->get_condition()->accept( *visitor );
 			output << ");";
Index: src/libcfa/interpose.c
===================================================================
--- src/libcfa/interpose.c	(revision 43c461da57a6b7e67b030127cc6b531975a67091)
+++ src/libcfa/interpose.c	(revision d7312acc807d400d254331f9acbad9eb4da91a8c)
@@ -10,6 +10,6 @@
 // Created On       : Wed Mar 29 16:10:31 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Fri May  4 14:35:13 2018
-// Update Count     : 97
+// Last Modified On : Sat May  5 09:16:57 2018
+// Update Count     : 99
 //
 
@@ -85,6 +85,6 @@
 
 struct {
-	void (* exit)( int ) __attribute__ (( __noreturn__ ));
-	void (* abort)( void ) __attribute__ (( __noreturn__ ));
+	void (* exit)( int ) __attribute__(( __noreturn__ ));
+	void (* abort)( void ) __attribute__(( __noreturn__ ));
 } __cabi_libc;
 
@@ -94,6 +94,9 @@
 		const char *version = NULL;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
 		INTERPOSE_LIBC( abort, version );
 		INTERPOSE_LIBC( exit , version );
+#pragma GCC diagnostic pop
 
 		__cfaabi_sigaction( SIGSEGV, sigHandler_segv , SA_SIGINFO ); // Failure handler
@@ -112,13 +115,13 @@
 
 // Forward declare abort after the __typeof__ call to avoid ambiguities
-void exit( int status, const char fmt[], ... ) __attribute__ (( format(printf, 2, 3), __nothrow__, __leaf__, __noreturn__ ));
-void abort( const char fmt[], ... ) __attribute__ (( format(printf, 1, 2), __nothrow__, __leaf__, __noreturn__ ));
+void exit( int status, const char fmt[], ... ) __attribute__(( format(printf, 2, 3), __nothrow__, __leaf__, __noreturn__ ));
+void abort( const char fmt[], ... ) __attribute__(( format(printf, 1, 2), __nothrow__, __leaf__, __noreturn__ ));
 
 extern "C" {
-	void abort( void ) __attribute__ (( __nothrow__, __leaf__, __noreturn__ )) {
+	void abort( void ) __attribute__(( __nothrow__, __leaf__, __noreturn__ )) {
 		abort( NULL );
 	}
 
-	void __cabi_abort( const char fmt[], ... ) __attribute__ (( format(printf, 1, 2), __nothrow__, __leaf__, __noreturn__ )) {
+	void __cabi_abort( const char fmt[], ... ) __attribute__(( format(printf, 1, 2), __nothrow__, __leaf__, __noreturn__ )) {
 		va_list argp;
 		va_start( argp, fmt );
@@ -127,12 +130,12 @@
 	}
 
-	void exit( int status ) __attribute__ (( __nothrow__, __leaf__, __noreturn__ )) {
+	void exit( int status ) __attribute__(( __nothrow__, __leaf__, __noreturn__ )) {
 		__cabi_libc.exit( status );
 	}
 }
 
-void * kernel_abort    ( void ) __attribute__ (( __nothrow__, __leaf__, __weak__ )) { return NULL; }
-void   kernel_abort_msg( void * data, char * buffer, int size ) __attribute__ (( __nothrow__, __leaf__, __weak__ )) {}
-int kernel_abort_lastframe( void ) __attribute__ (( __nothrow__, __leaf__, __weak__ )) { return 4; }
+void * kernel_abort    ( void ) __attribute__(( __nothrow__, __leaf__, __weak__ )) { return NULL; }
+void   kernel_abort_msg( void * data, char * buffer, int size ) __attribute__(( __nothrow__, __leaf__, __weak__ )) {}
+int kernel_abort_lastframe( void ) __attribute__(( __nothrow__, __leaf__, __weak__ )) { return 4; }
 
 enum { abort_text_size = 1024 };
@@ -140,5 +143,5 @@
 static int abort_lastframe;
 
-void exit( int status, const char fmt[], ... ) __attribute__ (( format(printf, 2, 3), __nothrow__, __leaf__, __noreturn__ )) {
+void exit( int status, const char fmt[], ... ) __attribute__(( format(printf, 2, 3), __nothrow__, __leaf__, __noreturn__ )) {
     va_list args;
     va_start( args, fmt );
@@ -148,5 +151,5 @@
 }
 
-void abort( const char fmt[], ... ) __attribute__ (( format(printf, 1, 2), __nothrow__, __leaf__, __noreturn__ )) {
+void abort( const char fmt[], ... ) __attribute__(( format(printf, 1, 2), __nothrow__, __leaf__, __noreturn__ )) {
 	void * kernel_data = kernel_abort();			// must be done here to lock down kernel
 	int len;
Index: src/libcfa/time.c
===================================================================
--- src/libcfa/time.c	(revision 43c461da57a6b7e67b030127cc6b531975a67091)
+++ src/libcfa/time.c	(revision d7312acc807d400d254331f9acbad9eb4da91a8c)
@@ -10,6 +10,6 @@
 // Created On       : Tue Mar 27 13:33:14 2018
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Apr 12 14:41:00 2018
-// Update Count     : 22
+// Last Modified On : Sat May  5 09:04:51 2018
+// Update Count     : 36
 // 
 
@@ -17,4 +17,5 @@
 #include "iostream"
 #include <stdio.h>										// snprintf
+#include <assert.h>
 
 static char * nanomsd( long int ns, char * buf ) {		// most significant digits
@@ -87,6 +88,9 @@
 	time_t s = tv / TIMEGRAN;
 	tm tm;
-	gmtime_r( &s, &tm );
+	gmtime_r( &s, &tm );								// tm_mon <= 11, tm_mday <= 31
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-truncation"
 	snprintf( buf, 9, "%02d/%02d/%02d", tm.tm_year % 99, tm.tm_mon + 1, tm.tm_mday );
+#pragma GCC diagnostic pop
 	return buf;
 } // yy_mm_dd
@@ -95,6 +99,9 @@
 	time_t s = tv / TIMEGRAN;
 	tm tm;
-	gmtime_r( &s, &tm );
+	gmtime_r( &s, &tm );								// tm_mon <= 11, tm_mday <= 31
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-truncation"
 	snprintf( buf, 9, "%02d/%02d/%02d", tm.tm_mon + 1, tm.tm_mday, tm.tm_year % 99 );
+#pragma GCC diagnostic pop
 	return buf;
 } // mm_dd_yy
@@ -103,6 +110,9 @@
 	time_t s = tv / TIMEGRAN;
 	tm tm;
-	gmtime_r( &s, &tm );
+	gmtime_r( &s, &tm );								// tm_mon <= 11, tm_mday <= 31
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-truncation"
 	snprintf( buf, 9, "%02d/%02d/%02d", tm.tm_mday, tm.tm_mon + 1, tm.tm_year % 99 );
+#pragma GCC diagnostic pop
 	return buf;
 } // dd_mm_yy
