Index: libcfa/src/iostream.cfa
===================================================================
--- libcfa/src/iostream.cfa	(revision dc5072f8f70045aebca1bf13bc1ce5575a631e61)
+++ libcfa/src/iostream.cfa	(revision 65240bbf85edbcb53a5d3c3101d0486d5b11f3bb)
@@ -10,6 +10,6 @@
 // Created On       : Wed May 27 17:56:53 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Jun 13 17:21:10 2019
-// Update Count     : 812
+// Last Modified On : Fri Jul 12 12:04:13 2019
+// Update Count     : 819
 //
 
@@ -30,5 +30,5 @@
 
 
-//*********************************** Ostream ***********************************
+//*********************************** ostream ***********************************
 
 
@@ -40,5 +40,5 @@
 	} // ?|?
 	void ?|?( ostype & os, zero_t z ) {
-		(ostype &)(os | z); nl( os );
+		(ostype &)(os | z); ends( os );
 	} // ?|?
 
@@ -49,5 +49,5 @@
 	} // ?|?
 	void ?|?( ostype & os, one_t o ) {
-		(ostype &)(os | o); nl( os );
+		(ostype &)(os | o); ends( os );
 	} // ?|?
 
@@ -58,5 +58,5 @@
 	} // ?|?
 	void ?|?( ostype & os, bool b ) {
-		(ostype &)(os | b); nl( os );
+		(ostype &)(os | b); ends( os );
 	} // ?|?
 
@@ -67,5 +67,5 @@
 	} // ?|?
 	void ?|?( ostype & os, char c ) {
-		(ostype &)(os | c); nl( os );
+		(ostype &)(os | c); ends( os );
 	} // ?|?
 
@@ -76,5 +76,5 @@
 	} // ?|?
 	void ?|?( ostype & os, signed char sc ) {
-		(ostype &)(os | sc); nl( os );
+		(ostype &)(os | sc); ends( os );
 	} // ?|?
 
@@ -85,5 +85,5 @@
 	} // ?|?
 	void ?|?( ostype & os, unsigned char usc ) {
-		(ostype &)(os | usc); nl( os );
+		(ostype &)(os | usc); ends( os );
 	} // ?|?
 
@@ -94,5 +94,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, short int si ) {
-		(ostype &)(os | si); nl( os );
+		(ostype &)(os | si); ends( os );
 	} // ?|?
 
@@ -103,5 +103,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, unsigned short int usi ) {
-		(ostype &)(os | usi); nl( os );
+		(ostype &)(os | usi); ends( os );
 	} // ?|?
 
@@ -112,5 +112,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, int i ) {
-		(ostype &)(os | i); nl( os );
+		(ostype &)(os | i); ends( os );
 	} // ?|?
 
@@ -121,5 +121,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, unsigned int ui ) {
-		(ostype &)(os | ui); nl( os );
+		(ostype &)(os | ui); ends( os );
 	} // ?|?
 
@@ -130,5 +130,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, long int li ) {
-		(ostype &)(os | li); nl( os );
+		(ostype &)(os | li); ends( os );
 	} // ?|?
 
@@ -139,5 +139,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, unsigned long int uli ) {
-		(ostype &)(os | uli); nl( os );
+		(ostype &)(os | uli); ends( os );
 	} // ?|?
 
@@ -148,5 +148,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, long long int lli ) {
-		(ostype &)(os | lli); nl( os );
+		(ostype &)(os | lli); ends( os );
 	} // ?|?
 
@@ -157,5 +157,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, unsigned long long int ulli ) {
-		(ostype &)(os | ulli); nl( os );
+		(ostype &)(os | ulli); ends( os );
 	} // ?|?
 
@@ -180,5 +180,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, float f ) {
-		(ostype &)(os | f); nl( os );
+		(ostype &)(os | f); ends( os );
 	} // ?|?
 
@@ -189,5 +189,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, double d ) {
-		(ostype &)(os | d); nl( os );
+		(ostype &)(os | d); ends( os );
 	} // ?|?
 
@@ -198,5 +198,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, long double ld ) {
-		(ostype &)(os | ld); nl( os );
+		(ostype &)(os | ld); ends( os );
 	} // ?|?
 
@@ -210,5 +210,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, float _Complex fc ) {
-		(ostype &)(os | fc); nl( os );
+		(ostype &)(os | fc); ends( os );
 	} // ?|?
 
@@ -222,5 +222,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, double _Complex dc ) {
-		(ostype &)(os | dc); nl( os );
+		(ostype &)(os | dc); ends( os );
 	} // ?|?
 
@@ -234,5 +234,5 @@
 	} // ?|?
 	void & ?|?( ostype & os, long double _Complex ldc ) {
-		(ostype &)(os | ldc); nl( os );
+		(ostype &)(os | ldc); ends( os );
 	} // ?|?
 
@@ -276,5 +276,5 @@
 	} // ?|?
 	void ?|?( ostype & os, const char * str ) {
-		(ostype &)(os | str); nl( os );
+		(ostype &)(os | str); ends( os );
 	} // ?|?
 
@@ -305,5 +305,5 @@
 	} // ?|?
 	void ?|?( ostype & os, const void * p ) {
-		(ostype &)(os | p); nl( os );
+		(ostype &)(os | p); ends( os );
 	} // ?|?
 
@@ -315,5 +315,5 @@
 	void ?|?( ostype & os, ostype & (* manip)( ostype & ) ) {
 		(ostype &)(manip( os ));
-		if ( getPrt( os ) ) nl( os );					// something printed ?
+		if ( getPrt( os ) ) ends( os );					// something printed ?
 		setPrt( os, false );							// turn off
 	} // ?|?
@@ -335,9 +335,4 @@
 	} // nl
 
-	void nl( ostype & os ) {
-		if ( getANL( os ) ) (ostype &)(nl( os ));		// implementation only
-		else setPrt( os, false );						// turn off
-	} // nl
-
 	ostype & nonl( ostype & os ) {
 		setPrt( os, false );							// turn off
@@ -386,10 +381,10 @@
 	} // ?|?
 	void ?|?( ostype & os, T arg, Params rest ) {
-		// (ostype &)(?|?( os, arg, rest )); nl( os );
+		// (ostype &)(?|?( os, arg, rest )); ends( os );
 		(ostype &)(os | arg);							// print first argument
 		sepSetCur( os, sepGetTuple( os ) );				// switch to tuple separator
 		(ostype &)(os | rest);							// print remaining arguments
 		sepSetCur( os, sepGet( os ) );					// switch to regular separator
-		nl( os );
+		ends( os );
 	} // ?|?
 } // distribution
@@ -408,7 +403,7 @@
 } // distribution
 
-//*********************************** Manipulators ***********************************
-
-//*********************************** Integral ***********************************
+//*********************************** manipulators ***********************************
+
+//*********************************** integral ***********************************
 
 static const char * shortbin[] = { "0", "1", "10", "11", "100", "101", "110", "111", "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" };
@@ -478,5 +473,5 @@
 		return os; \
 	} /* ?|? */ \
-	void ?|?( ostype & os, _Ostream_Manip(T) f ) { (ostype &)(os | f); nl( os ); } \
+	void ?|?( ostype & os, _Ostream_Manip(T) f ) { (ostype &)(os | f); ends( os ); } \
 } // distribution
 
@@ -492,5 +487,5 @@
 IntegralFMTImpl( unsigned long long int, 'u', "%    *ll ", "%    *.*ll " )
 
-//*********************************** Floating Point ***********************************
+//*********************************** floating point ***********************************
 
 #define PrintWithDP2( os, format, val, ... ) \
@@ -541,5 +536,5 @@
 		return os; \
 	} /* ?|? */ \
-	void ?|?( ostype & os, _Ostream_Manip(T) f ) { (ostype &)(os | f); nl( os ); } \
+	void ?|?( ostype & os, _Ostream_Manip(T) f ) { (ostype &)(os | f); ends( os ); } \
 } // distribution
 
@@ -547,5 +542,5 @@
 FloatingPointFMTImpl( long double, "%    *L ", "%    *.*L " )
 
-//*********************************** Character ***********************************
+//*********************************** character ***********************************
 
 forall( dtype ostype | ostream( ostype ) ) {
@@ -576,8 +571,8 @@
 		return os;
 	} // ?|?
-	void ?|?( ostype & os, _Ostream_Manip(char) f ) { (ostype &)(os | f); nl( os ); }
+	void ?|?( ostype & os, _Ostream_Manip(char) f ) { (ostype &)(os | f); ends( os ); }
 } // distribution
 
-//*********************************** C String ***********************************
+//*********************************** C string ***********************************
 
 forall( dtype ostype | ostream( ostype ) ) {
@@ -621,9 +616,9 @@
 		return os;
 	} // ?|?
-	void ?|?( ostype & os, _Ostream_Manip(const char *) f ) { (ostype &)(os | f); nl( os ); }
+	void ?|?( ostype & os, _Ostream_Manip(const char *) f ) { (ostype &)(os | f); ends( os ); }
 } // distribution
 
 
-//*********************************** Istream ***********************************
+//*********************************** istream ***********************************
 
 
@@ -771,5 +766,5 @@
 } // distribution
 
-//*********************************** Manipulators ***********************************
+//*********************************** manipulators ***********************************
 
 forall( dtype istype | istream( istype ) )
