Index: driver/cfa.cc
===================================================================
--- driver/cfa.cc	(revision 893da07039c696d8bf1e6e895a30513b17778992)
+++ driver/cfa.cc	(revision 314dab6db5211064f247685abea3fd6b6211bde9)
@@ -10,6 +10,6 @@
 // Created On       : Tue Aug 20 13:44:49 2002
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Fri Jan 31 16:48:03 2020
-// Update Count     : 421
+// Last Modified On : Mon May 18 13:26:26 2020
+// Update Count     : 424
 //
 
@@ -301,8 +301,4 @@
 	} // for
 
-	#ifdef __x86_64__
-	args[nargs++] = "-mcx16";							// allow double-wide CAA
-	#endif // __x86_64__
-
 	#ifdef __DEBUG_H__
 	cerr << "args:";
@@ -419,4 +415,8 @@
 		args[nargs++] = "-lcfa";
 		args[nargs++] = "-Wl,--pop-state";
+		#ifdef __x86_64__
+		args[nargs++] = "-mcx16";						// allow double-wide CAS
+		args[nargs++] = "-latomic";
+		#endif // __x86_64__
 		args[nargs++] = "-pthread";
 		args[nargs++] = "-ldl";
Index: libcfa/src/Makefile.am
===================================================================
--- libcfa/src/Makefile.am	(revision 893da07039c696d8bf1e6e895a30513b17778992)
+++ libcfa/src/Makefile.am	(revision 314dab6db5211064f247685abea3fd6b6211bde9)
@@ -11,6 +11,6 @@
 ## Created On       : Sun May 31 08:54:01 2015
 ## Last Modified By : Peter A. Buhr
-## Last Modified On : Mon Mar 16 18:07:59 2020
-## Update Count     : 242
+## Last Modified On : Sun May 17 21:10:26 2020
+## Update Count     : 243
 ###############################################################################
 
@@ -42,5 +42,5 @@
 		bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa containers/list.hfa
 headers = fstream.hfa iostream.hfa iterator.hfa limits.hfa rational.hfa time.hfa stdlib.hfa common.hfa \
-		containers/maybe.hfa containers/pair.hfa containers/result.hfa containers/vector.hfa
+		containers/maybe.hfa containers/pair.hfa containers/result.hfa containers/stackLockFree.hfa containers/vector.hfa
 
 libsrc = startup.cfa interpose.cfa bits/debug.cfa assert.cfa exception.c virtual.c heap.cfa ${headers:.hfa=.cfa}
Index: libcfa/src/containers/stackLockFree.hfa
===================================================================
--- libcfa/src/containers/stackLockFree.hfa	(revision 893da07039c696d8bf1e6e895a30513b17778992)
+++ libcfa/src/containers/stackLockFree.hfa	(revision 314dab6db5211064f247685abea3fd6b6211bde9)
@@ -9,6 +9,6 @@
 // Created On       : Wed May 13 20:58:58 2020
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun May 17 20:53:37 2020
-// Update Count     : 48
+// Last Modified On : Mon May 18 13:30:08 2020
+// Update Count     : 55
 // 
 
@@ -23,9 +23,9 @@
 		uintptr_t count;						// count each push
 	};
-	#if _GLIBCXX_USE_INT128 == 1
+	#if __SIZEOF_INT128__ == 16
 	__int128									// gcc, 128-bit integer
 	#else
 	uint64_t									// 64-bit integer
-	#endif // _GLIBCXX_USE_INT128 == 1
+	#endif // __SIZEOF_INT128__ == 16
 	atom;
 }; // Link
@@ -44,5 +44,5 @@
 			for () {									// busy wait
 				*getNext( &n ) = stack;					// atomic assignment unnecessary, or use CAA
-				if ( __atomic_compare_exchange_n( &stack.atom, &getNext( &n )->atom, (Link(T))@{ {&n, getNext( &n )->count + 1} }.atom, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST ) ) break; // attempt to update top node
+			  if ( __atomic_compare_exchange_n( &stack.atom, &getNext( &n )->atom, (Link(T))@{ {&n, getNext( &n )->count + 1} }.atom, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST ) ) break; // attempt to update top node
 			} // for
 		} // push
