summaryrefslogtreecommitdiff
path: root/libffi
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-15 21:01:21 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-15 21:01:21 +0000
commit56568d5072ff5f344e3cc2cd9a82dc75dbd4b6c3 (patch)
tree3e581b4c4affc4ef16c9ae5451b149886357f878 /libffi
parentaae7465c1da1b83bb79f7d759524be7d7a548b4d (diff)
PR libffi/64572
* include/ffi.h.in (FFI_TYPE_LAST): Set to COMPLEX only if complex numbers are supported by the backend. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219688 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libffi')
-rw-r--r--libffi/ChangeLog6
-rw-r--r--libffi/include/ffi.h.in8
2 files changed, 13 insertions, 1 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index 6893ac5e9769..562e5383b7db 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -1,3 +1,9 @@
+2015-01-15 Richard Henderson <rth@redhat.com>
+
+ PR libffi/64572
+ * include/ffi.h.in (FFI_TYPE_LAST): Set to COMPLEX only if complex
+ numbers are supported by the backend.
+
2015-01-13 Kaz Kojima <kkojima@gcc.gnu.org>
* configure.host: Remove extra brackets for sh.
diff --git a/libffi/include/ffi.h.in b/libffi/include/ffi.h.in
index c43d52fd51fa..191aef7bd3fd 100644
--- a/libffi/include/ffi.h.in
+++ b/libffi/include/ffi.h.in
@@ -494,7 +494,13 @@ void ffi_call(ffi_cif *cif,
#define FFI_TYPE_COMPLEX 15
/* This should always refer to the last type code (for sanity checks) */
-#define FFI_TYPE_LAST FFI_TYPE_COMPLEX
+/* ??? Ideally, anyway. There are assembly files that still depend
+ on this not including COMPLEX. */
+#ifdef FFI_TARGET_HAS_COMPLEX_TYPE
+# define FFI_TYPE_LAST FFI_TYPE_COMPLEX
+#else
+# define FFI_TYPE_LAST FFI_TYPE_POINTER
+#endif
#ifdef __cplusplus
}