https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91828

            Bug ID: 91828
           Summary: gcc/fortran/check.c requires mpfr_set_z_2exp from MPFR
                    3.0.0, unavailable in mpfr-2.4.2
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dmalcolm at gcc dot gnu.org
  Target Milestone: ---

Along with other dependencies, trunk's gcc/docs/install.texi has:
  @item MPFR Library version 2.4.2 (or later)

I'm attempting to build trunk against that minimal version, mpfr-2.4.2, and the
build of fortran fails with:

../../../src/gcc/fortran/check.c: In function ‘void bin2real(gfc_expr*, int)’:
../../../src/gcc/fortran/check.c:257:7: error: ‘mpfr_set_z_2exp’ was not
declared in this scope; did you mean ‘mpfr_get_d_2exp’?
  257 |       mpfr_set_z_2exp (x->value.real, em, ie - t, GFC_RND_MODE);
      |       ^~~~~~~~~~~~~~~
      |       mpfr_get_d_2exp

This call to mpfr_set_z_2exp seems to have been added in
3d5ce34eb455518344e99966e87e7c44ed64d9da aka r274096 (for PR fortran/88227).

According to:
  https://gmplib.org/list-archives/gmp-discuss/2010-June/004197.html
mpfr_set_z_2exp was added in GNU MPFR 3.0.0:
  "New function mpfr_set_z_2exp (companion to mpfr_get_z_2exp, which
   was renamed from mpfr_get_z_exp in previous versions)."

Should the minimum required version of mpfr be updated, or this check.c be
rewritten?  (or am I misreading things)

Reply via email to