Index: src/libcfa/concurrency/preemption.c
===================================================================
--- src/libcfa/concurrency/preemption.c	(revision 8dbedfc9ed34c91b75dbb53a6977634c91f963be)
+++ src/libcfa/concurrency/preemption.c	(revision ed45af6f6acde96306cc96f68086405acdb80877)
@@ -161,5 +161,7 @@
 	void disable_interrupts() {
 		with( kernelTLS.preemption_state ) {
+			#if GCC_VERSION > 50000
 			static_assert(__atomic_always_lock_free(sizeof(enabled), &enabled), "Must be lock-free");
+			#endif
 
 			// Set enabled flag to false
@@ -190,5 +192,7 @@
 			// Check if we need to prempt the thread because an interrupt was missed
 			if( prev == 1 ) {
+				#if GCC_VERSION > 50000
 				static_assert(__atomic_always_lock_free(sizeof(enabled), &enabled), "Must be lock-free");
+				#endif
 
 				// Set enabled flag to true
@@ -217,5 +221,7 @@
 		verifyf( prev != 0u, "Incremented from %u\n", prev );                     // If this triggers someone is enabled already enabled interrupts
 		if( prev == 1 ) {
+			#if GCC_VERSION > 50000
 			static_assert(__atomic_always_lock_free(sizeof(kernelTLS.preemption_state.enabled), &kernelTLS.preemption_state.enabled), "Must be lock-free");
+			#endif
 			// Set enabled flag to true
 			// should be atomic to avoid preemption in the middle of the operation.
@@ -376,5 +382,7 @@
 
 	// Clear sighandler mask before context switching.
+	#if GCC_VERSION > 50000
 	static_assert( sizeof( sigset_t ) == sizeof( cxt->uc_sigmask ), "Expected cxt->uc_sigmask to be of sigset_t" );
+	#endif
 	if ( pthread_sigmask( SIG_SETMASK, (sigset_t *)&(cxt->uc_sigmask), NULL ) == -1 ) {
 		abort( "internal error, sigprocmask" );
