This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/78480] New: m68k-rtems compile error in libgfortran
- From: "joel at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 22 Nov 2016 19:30:18 +0000
- Subject: [Bug target/78480] New: m68k-rtems compile error in libgfortran
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78480
Bug ID: 78480
Summary: m68k-rtems compile error in libgfortran
Product: gcc
Version: 7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: joel at gcc dot gnu.org
Target Milestone: ---
$ ./gcc/xgcc --version
xgcc (GCC) 7.0.0 20161121 (experimental)
I think the key is -mcpu=5206 has double and long double to be the same but
_LDBL_EQ_DBL. Craig Howland suggested adding this to newlib's ieeefp.h which
detected that it wasn't defined.
#if (DBL_MANT_DIG == LDBL_MANT_DIG) && (LDBL_MIN_EXP == DBL_MIN_EXP) && \
(LDBL_MAX_EXP == DBL_MAX_EXP)
#define _LDBL_EQ_DBL
#else
#error "LDBL != DBL"
#endif
#endif
m68k-rtems4.12/sys-include -DHAVE_CONFIG_H -I. -I../../../../gcc/libgfortran
-iquote../../../../gcc/libgfortran/io -I../../../../gcc/libgfortran/../gcc
-I../../../../gcc/libgfortran/../gcc/config -I../../.././gcc
-I../../../../gcc/libgfortran/../libgcc -I../../libgcc
-I../../../../gcc/libgfortran/../libbacktrace -I../../libbacktrace
-I../libbacktrace -std=gnu11 -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition -Wextra -Wwrite-strings
-Werror=implicit-function-declaration -Werror=vla -fcx-fortran-rules
-ffunction-sections -fdata-sections -g -O2 -mcpu=5206 -MT single.lo -MD -MP -MF
.deps/single.Tpo -c ../../../../gcc/libgfortran/caf/single.c -o single.o
In file included from ../../../../gcc/libgfortran/libgfortran.h:81:0,
from ../../../../gcc/libgfortran/caf/libcaf.h:33,
from ../../../../gcc/libgfortran/caf/single.c:26:
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:152:2: error: #error
"double and long double are the same size but LDBL_EQ_DBL is not defined"
#error "double and long double are the same size but LDBL_EQ_DBL is not
defined"
^~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:195:3: error: unknown type
name '__ieee_ext_field_type'
__ieee_ext_field_type ext_fracl : EXT_FRACLBITS;
^~~~~~~~~~~~~~~~~~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:195:38: error:
'EXT_FRACLBITS' undeclared here (not in a function); did you mean
'EXT_FRACBITS'?
__ieee_ext_field_type ext_fracl : EXT_FRACLBITS;
^~~~~~~~~~~~~
EXT_FRACBITS
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:195:26: error: bit-field
'ext_fracl' width not an integer constant
__ieee_ext_field_type ext_fracl : EXT_FRACLBITS;
^~~~~~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:196:3: error: unknown type
name '__ieee_ext_field_type'
__ieee_ext_field_type ext_frach : EXT_FRACHBITS;
^~~~~~~~~~~~~~~~~~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:196:38: error:
'EXT_FRACHBITS' undeclared here (not in a function); did you mean
'EXT_FRACLBITS'?
__ieee_ext_field_type ext_frach : EXT_FRACHBITS;
^~~~~~~~~~~~~
EXT_FRACLBITS
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:196:26: error: bit-field
'ext_frach' width not an integer constant
__ieee_ext_field_type ext_frach : EXT_FRACHBITS;
^~~~~~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:197:3: error: unknown type
name '__ieee_ext_field_type'
__ieee_ext_field_type ext_exp : EXT_EXPBITS;
^~~~~~~~~~~~~~~~~~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:197:38: error:
'EXT_EXPBITS' undeclared here (not in a function); did you mean 'EXT_EXP_BIAS'?
__ieee_ext_field_type ext_exp : EXT_EXPBITS;
^~~~~~~~~~~
EXT_EXP_BIAS
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:197:26: error: bit-field
'ext_exp' width not an integer constant
__ieee_ext_field_type ext_exp : EXT_EXPBITS;
^~~~~~~
/home/joel/test-gcc/gcc/newlib/libc/include/ieeefp.h:198:3: error: unknown type
name '__ieee_ext_field_type'
__ieee_ext_field_type ext_sign : 1;
^~~~~~~~~~~~~~~~~~~~~