diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8d6a8dcc51743b271a2f9626a7c9212bebc77d5a..2e12adcc32c89341994f30ec20049a32dfbf2a1e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -150,13 +150,11 @@ CHECK_CXX_SOURCE_COMPILES("
 
 # SFINAE on variadic template constructors within template classes
 CHECK_CXX_SOURCE_COMPILES("
-  #include <cassert>
   #include <functional>
 
   template<typename... U>
   struct A
   {
-
     template<typename... T,
              typename = typename std::enable_if<(sizeof...(T) < 2)>::type
             >
@@ -181,8 +179,7 @@ CHECK_CXX_SOURCE_COMPILES("
 
   int main(void)
   {
-    assert(A<int>().i + A<int>(2).i + A<int>(\"foo\",3.4).i + A<int>({2,5,6},'a',A<int>()).i == 0);
-    return 0;
+    return (A<int>().i + A<int>(2).i + A<int>("foo",3.4).i + A<int>(8,'a',A<int>()).i == 0 ? 0 : 1);
   }
 " HAVE_VARIADIC_CONSTRUCTOR_SFINAE
 )