Index: src/tests/.expect/literals.x64.txt
===================================================================
--- src/tests/.expect/literals.x64.txt	(revision 0a2168f70d19fcd419798e37c616d95122265421)
+++ src/tests/.expect/literals.x64.txt	(revision ea46db7297c45707f04194d6fafa0612eaa4f569)
@@ -522,4 +522,28 @@
 signed int __main__Fi___1(){
     __attribute__ ((unused)) signed int ___retval_main__i_1;
+    ((void)0b01101011);
+    ((void)0b01101011u);
+    ((void)0b01101011l);
+    ((void)0b01101011ll);
+    ((void)0b01101011ul);
+    ((void)0b01101011lu);
+    ((void)0b01101011ull);
+    ((void)0b01101011llu);
+    ((void)(+0b01101011));
+    ((void)(+0b01101011u));
+    ((void)(+0b01101011l));
+    ((void)(+0b01101011ll));
+    ((void)(+0b01101011ul));
+    ((void)(+0b01101011lu));
+    ((void)(+0b01101011ull));
+    ((void)(+0b01101011llu));
+    ((void)(-0b01101011));
+    ((void)(-0b01101011u));
+    ((void)(-0b01101011l));
+    ((void)(-0b01101011ll));
+    ((void)(-0b01101011ul));
+    ((void)(-0b01101011lu));
+    ((void)(-0b01101011ull));
+    ((void)(-0b01101011llu));
     ((void)01234567);
     ((void)01234567u);
@@ -1017,4 +1041,34 @@
     ((void)(-0X0123456789.0123456789P-09F));
     ((void)(-0X0123456789.0123456789P-09L));
+    ((void)((signed char )0b01101011));
+    ((void)((signed short int )0b01101011));
+    ((void)((signed int )0b01101011));
+    ((void)((signed long int )0b01101011));
+    ((void)((__int128 )0b01101011));
+    ((void)((unsigned char )0b01101011u));
+    ((void)((signed short int )0b01101011u));
+    ((void)((unsigned int )0b01101011u));
+    ((void)((signed long int )0b01101011u));
+    ((void)((__int128 )0b01101011u));
+    ((void)(+((signed int )((signed char )0b01101011))));
+    ((void)(+((signed int )((signed short int )0b01101011))));
+    ((void)(+((signed int )0b01101011)));
+    ((void)(+((signed long int )0b01101011)));
+    ((void)(+((float )((__int128 )0b01101011))));
+    ((void)(+((signed int )((unsigned char )0b01101011u))));
+    ((void)(+((signed int )((signed short int )0b01101011u))));
+    ((void)(+((unsigned int )0b01101011u)));
+    ((void)(+((signed long int )0b01101011u)));
+    ((void)(+((float )((__int128 )0b01101011u))));
+    ((void)(-((signed int )((signed char )0b01101011))));
+    ((void)(-((signed int )((signed short int )0b01101011))));
+    ((void)(-((signed int )0b01101011)));
+    ((void)(-((signed long int )0b01101011)));
+    ((void)(-((float )((__int128 )0b01101011))));
+    ((void)(-((signed int )((unsigned char )0b01101011u))));
+    ((void)(-((signed int )((signed short int )0b01101011u))));
+    ((void)(-((unsigned int )0b01101011u)));
+    ((void)(-((signed long int )0b01101011u)));
+    ((void)(-((float )((__int128 )0b01101011u))));
     ((void)((signed char )01234567));
     ((void)((signed short int )01234567));
Index: src/tests/.expect/user_literals.txt
===================================================================
--- src/tests/.expect/user_literals.txt	(revision 0a2168f70d19fcd419798e37c616d95122265421)
+++ src/tests/.expect/user_literals.txt	(revision ea46db7297c45707f04194d6fafa0612eaa4f569)
@@ -1,8 +1,9 @@
 11.0714285714286
-11.07225
+15
 11.0714285714286
+24.8
+11.248
 11.0714285714286
-11.0714285714286
-22.0457142857143
+28.0657142857143
 secs 1
 secs 23
Index: src/tests/literals.c
===================================================================
--- src/tests/literals.c	(revision 0a2168f70d19fcd419798e37c616d95122265421)
+++ src/tests/literals.c	(revision ea46db7297c45707f04194d6fafa0612eaa4f569)
@@ -10,6 +10,6 @@
 // Created On       : Sat Sep  9 16:34:38 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Mon Sep 25 20:26:00 2017
-// Update Count     : 132
+// Last Modified On : Sun Mar  4 10:41:31 2018
+// Update Count     : 134
 // 
 
@@ -31,4 +31,9 @@
 // integer literals
 
+	// binary
+	 0b01101011;   0b01101011u;   0b01101011l;   0b01101011ll;   0b01101011ul;   0b01101011lu;   0b01101011ull;   0b01101011llu;
+	+0b01101011;  +0b01101011u;  +0b01101011l;  +0b01101011ll;  +0b01101011ul;  +0b01101011lu;  +0b01101011ull;  +0b01101011llu;
+	-0b01101011;  -0b01101011u;  -0b01101011l;  -0b01101011ll;  -0b01101011ul;  -0b01101011lu;  -0b01101011ull;  -0b01101011llu;
+
 	// octal
 	 01234567;   01234567u;   01234567l;   01234567ll;   01234567ul;   01234567lu;   01234567ull;   01234567llu;
@@ -148,4 +153,9 @@
 #ifdef __CFA__
 // fixed-size length
+
+	// binary
+	 0b01101011_l8;   0b01101011_l16;   0b01101011_l32;   0b01101011_l64;   0b01101011_l128;   0b01101011_l8u;   0b01101011_ul16;   0b01101011_l32u;   0b01101011_ul64;   0b01101011_ul128;
+	+0b01101011_l8;  +0b01101011_l16;  +0b01101011_l32;  +0b01101011_l64;  +0b01101011_l128;  +0b01101011_l8u;  +0b01101011_ul16;  +0b01101011_l32u;  +0b01101011_ul64;  +0b01101011_ul128;
+	-0b01101011_l8;  -0b01101011_l16;  -0b01101011_l32;  -0b01101011_l64;  -0b01101011_l128;  -0b01101011_l8u;  -0b01101011_ul16;  -0b01101011_l32u;  -0b01101011_ul64;  -0b01101011_ul128;
 
 	// octal
Index: src/tests/user_literals.c
===================================================================
--- src/tests/user_literals.c	(revision 0a2168f70d19fcd419798e37c616d95122265421)
+++ src/tests/user_literals.c	(revision ea46db7297c45707f04194d6fafa0612eaa4f569)
@@ -10,6 +10,6 @@
 // Created On       : Wed Sep  6 21:40:50 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Dec  7 09:12:36 2017
-// Update Count     : 50
+// Last Modified On : Sun Mar  4 11:14:02 2018
+// Update Count     : 52
 // 
 
@@ -31,30 +31,31 @@
 
 
-struct Weight {
-	double stones;
-};
-void ?{}( Weight & w ) { w.stones = 0; }				// operations
+struct Weight { double stones; };
+void ?{}( Weight & w ) { w.stones = 0; }
 void ?{}( Weight & w, double w ) { w.stones = w; }
-Weight ?+?( Weight l, Weight r ) { return (Weight){ l.stones + r.stones }; }
+Weight ?+?( Weight l, Weight r ) {
+	return (Weight){ l.stones + r.stones };
+}
 ofstream & ?|?( ofstream & os, Weight w ) { return os | w.stones; }
 
 Weight ?`st( double w ) { return (Weight){ w }; }		// backquote for user literals
 Weight ?`lb( double w ) { return (Weight){ w / 14.0 }; }
-Weight ?`kg( double w ) { return (Weight) { w * 0.1575}; }
-
+Weight ?`kg( double w ) { return (Weight) { w * 0.16 }; }
 
 int main() {
-	Weight w, hw = { 14 };								// 14 stone
-	w = 11`st + 1`lb;
+	Weight w, heavy = { 20 };							// 20 stone
+	w = 155`lb;
+	sout | w | endl;
+	w = 0b_1111`st;
+	sout | w | endl;
+	w = 0_233`lb;										// octal weight (155)
+	sout | w | endl;
+	w = 0x_9b_u`kg;
 	sout | w | endl;
 	w = 70.3`kg;
 	sout | w | endl;
-	w = 155`lb;
+	w = 11`st + 1`lb;
 	sout | w | endl;
-	w = 0x_9b_u`lb;										// hexadecimal unsigned weight (155)
-	sout | w | endl;
-	w = 0_233`lb;										// octal weight (155)
-	sout | w | endl;
-	w = 5`st + 8`kg + 25`lb + hw;
+	w = 5`st + 8`kg + 25`lb + heavy;
 	sout | w | endl;
 
