Build error with GCC13 + newlib 4.1.0 - error: 'float_t' undeclared
Chris Packham
judge.packham@gmail.com
Sun May 28 02:23:23 GMT 2023
On Sun, May 28, 2023 at 2:00 PM Chris Packham <judge.packham@gmail.com> wrote:
>
> On Sun, May 28, 2023 at 12:28 PM Joel Sherrill <joel@rtems.org> wrote:
> >
> >
> >
> > On Sat, May 27, 2023, 7:02 PM Chris Packham <judge.packham@gmail.com> wrote:
> >>
> >> Hello from CT-NG,
> >>
> >> I user reported the following build error with newlib after GCC13.1
> >> was added recently
> >
> >
> > By any chance did the default version of C change in 13 versus what worked.before?
> >
> > FWIW It looks.like the bleeding edge RTEMS tool builds in our farm have some issue with gdb. So I don't have a handy case to compare.
> >
>
> https://gcc.gnu.org/gcc-13/changes.html doesn't mention it explicitly
> but I wouldn't be surprised if it has.
>
> >>
> >> src/newlib/newlib/libm/math/wf_log2.c:34:22: error: 'float_t'
> >> undeclared (first use in this function); did you mean 'float'?
> >> 34 | return (logf(x) / (float_t) M_LN2);
> >> | ^~~~~~~
> >> | float
> >>
> >> From what I've been able to follow so far this may have something to
> >> do with how FLT_EVAL_METHOD is defined. It's not really mentioned in
> >> the GCC docs as something that has changed but I wonder if it is
> >> perhaps implied by a C standard the default of which probably has
> >> changed.
> >>
> >> Does this ring any bells for anyone?
>
> I'll also add that I've now double checked the same configuration
> works with GCC 12.2
Looks like the following two upstream newlb changes might help
https://sourceware.org/git?p=newlib-cygwin.git;a=commit;h=91f99d323b39dc0c06c40038791db9861d4b76b9
https://sourceware.org/git?p=newlib-cygwin.git;a=commit;h=27f0913c17c216548b2f5eea79037ee90038f375
Which leads into another question. ct-ng currently has newlib-4.1.0.
Looking at https://sourceware.org/ftp/newlib/index.html are the 4.2.0
and 4.3.0 dated snapshots the actual release or are they release
candidates?
More information about the Newlib
mailing list