summaryrefslogtreecommitdiff
path: root/mpi/mpi-inline.h
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2012-11-08 15:38:44 +0100
committerWerner Koch <wk@gnupg.org>2012-11-08 15:38:44 +0100
commit5abc06114e91beca0177331e1c79815f5fb6d7be (patch)
tree4daab5879ee734b7ff7e4efa78f235318b78abe6 /mpi/mpi-inline.h
parent8cbbad5f94f6e0429fffe66d689aea20f7e35957 (diff)
downloadlibgcrypt-5abc06114e91beca0177331e1c79815f5fb6d7be.tar.gz
Fix extern inline use for gcc > 4.3 in c99 mode
* mpi/mpi-inline.h [!G10_MPI_INLINE_DECL]: Take care of changed extern inline semantics in gcc. -- I am not use how this will work out with non-gcc. However, we had no problems in the past and thus this change is the least invasive for non-gcc compilers. GnuPG-bug-id: 1406, 1435
Diffstat (limited to 'mpi/mpi-inline.h')
-rw-r--r--mpi/mpi-inline.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/mpi/mpi-inline.h b/mpi/mpi-inline.h
index 88d9f56c..94e2aec8 100644
--- a/mpi/mpi-inline.h
+++ b/mpi/mpi-inline.h
@@ -28,8 +28,15 @@
#ifndef G10_MPI_INLINE_H
#define G10_MPI_INLINE_H
+/* Starting with gcc 4.3 "extern inline" conforms in c99 mode to the
+ c99 semantics. To keep the useful old semantics we use an
+ attribute. */
#ifndef G10_MPI_INLINE_DECL
-#define G10_MPI_INLINE_DECL extern __inline__
+# ifdef __GNUC_STDC_INLINE__
+# define G10_MPI_INLINE_DECL extern inline __attribute__ ((__gnu_inline__))
+# else
+# define G10_MPI_INLINE_DECL extern __inline__
+# endif
#endif
G10_MPI_INLINE_DECL mpi_limb_t