Re: competime_assert failure without -O3 optimization flag expected ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Make sens Jens. I did not get what you told me in the first place. Let
me know if this would fix it. It works for me with GCC 4.6 (patch file
is also attached):

diff --git a/fio-arh/compiler/compiler.h b/fio-arh/compiler/compiler.h
index 40e857c..c9f8776 100644
--- a/fio-arh/compiler/compiler.h
+++ b/fio-arh/compiler/compiler.h
@@ -1,5 +1,6 @@
 #ifndef FIO_COMPILER_H
 #define FIO_COMPILER_H
+#include <assert.h>

 #if __GNUC__ >= 4
 #include "compiler-gcc4.h"
@@ -33,6 +34,11 @@
  1; \
 })

+
+#if defined(CONFIG_STATIC_ASSERT)
+#define compiletime_assert(condition, msg) _Static_assert(condition, msg)
+
+#else
 #ifndef __compiletime_error
 #define __compiletime_error(message)
 #endif
@@ -55,4 +61,6 @@
 #define compiletime_assert(condition, msg) \
  _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)

+#endif
+
 #endif
diff --git a/fio-arh/configure b/fio-arh/configure
index e459d63..ab85936 100755
--- a/fio-arh/configure
+++ b/fio-arh/configure
@@ -1492,6 +1492,21 @@ if compile_prog "" "" "getmntinfo"; then
 fi
 echo "getmntinfo                    $getmntinfo"

+##########################################
+# Check whether we have _Static_assert
+static_assert="no"
+cat > $TMPC << EOF
+#include <assert.h>
+int main(int argc, char **argv)
+{
+  _Static_assert( 1 == 1 , "Check");
+  return 0 ;
+}
+EOF
+if compile_prog "" "" "static_assert"; then
+    static_assert="yes"
+fi
+echo "Static Assert                 $static_assert"
 #############################################################################

 if test "$wordsize" = "64" ; then
@@ -1671,6 +1686,9 @@ fi
 if test "$getmntinfo" = "yes" ; then
   output_sym "CONFIG_GETMNTINFO"
 fi
+if test "$static_assert" = "yes" ; then
+  output_sym "CONFIG_STATIC_ASSERT"
+fi

 if test "$zlib" = "no" ; then

Attachment: patch
Description: Binary data


[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux