[PATCH rdma-core] verbs: Fix declaration of C++ include file in C-block

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

 



From: Leon Romanovsky <leonro@xxxxxxxxxxxx>

The include of limits.h in case of C++ application throws the following
error during the compilation.

/usr/include/c++/4.8.2/limits:303:3: error: template with C linkage
   template<typename _Tp>
   ^

The reason to such failure is the location of limits.c, it is supposed
to be included outside of C-block, so let's move it to avoid the error.

Fixes: 6a74285158a1 ("verbs: Fix C++ compilation break")
Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxxxx>
---
 libibverbs/verbs.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libibverbs/verbs.h b/libibverbs/verbs.h
index 4e2f338a..52c8e3c6 100644
--- a/libibverbs/verbs.h
+++ b/libibverbs/verbs.h
@@ -44,6 +44,10 @@
 #include <linux/types.h>
 #include <stdint.h>

+#ifdef __cplusplus
+#include <limits>
+#endif
+
 #ifdef __cplusplus
 #  define BEGIN_C_DECLS extern "C" {
 #  define END_C_DECLS   }
@@ -83,7 +87,6 @@ union ibv_gid {
 #define vext_field_avail(type, fld, sz) (offsetof(type, fld) < (sz))

 #ifdef __cplusplus
-#include <limits>
 #define __VERBS_ABI_IS_EXTENDED ((void *)std::numeric_limits<uintptr_t>::max())
 #else
 #define __VERBS_ABI_IS_EXTENDED ((void *)UINTPTR_MAX)
--
2.14.2

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux