From 811de1a68863f7903341288a113b8c0ac7aa9c0e Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 4 Jan 2017 18:12:14 +0000 Subject: Fix MicroBlaze bits/setjmp.h for C++. For MicroBlaze, setjmp/check-installed-headers-cxx fails with: ../setjmp/setjmp.h:34:8: error: '__jmp_buf_tag' has a field '__jmp_buf_tag::__jmpbuf' whose type depends on the type '' which has no linkage [-Werror=subobject-linkage] This patch fixes this in the same way as for some other architectures: the struct used for the internal __jmp_buf type is given the tag __jmp_buf_internal_tag. Tested (compilation tests) with build-many-glibcs.py. * sysdeps/microblaze/bits/setjmp.h (__jmp_buf): Give struct tag __jmp_buf_internal_tag. --- ChangeLog | 3 +++ sysdeps/microblaze/bits/setjmp.h | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 0278dff..7ab73a7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2017-01-04 Joseph Myers + * sysdeps/microblaze/bits/setjmp.h (__jmp_buf): Give struct tag + __jmp_buf_internal_tag. + * sysdeps/mips/mips32/sfp-machine.h (_FP_CHOOSENAN): Always preserve NaN payload if [__mips_nan2008]. * sysdeps/mips/mips64/sfp-machine.h (_FP_CHOOSENAN): Likewise. diff --git a/sysdeps/microblaze/bits/setjmp.h b/sysdeps/microblaze/bits/setjmp.h index d54db9c..fd175da 100644 --- a/sysdeps/microblaze/bits/setjmp.h +++ b/sysdeps/microblaze/bits/setjmp.h @@ -25,7 +25,7 @@ # error "Never include directly; use instead." #endif -typedef struct +typedef struct __jmp_buf_internal_tag { /* There are 21 4-byte registers that should be saved: r1, r2, r13-r31. Actually, there seems no need to save -- cgit v1.1