https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81160
Bug ID: 81160 Summary: arith.c:2009: bad statement order ? Product: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- trunk/gcc/fortran/arith.c:2009]: (style) Statements following return, break, continue, goto or throw will never be executed. Source code is static bool wprecision_int_real (mpz_t n, mpfr_t r) { mpz_t i; mpz_init (i); mpfr_get_z (i, r, GFC_RND_MODE); mpz_sub (i, i, n); return mpz_cmp_si (i, 0) != 0; mpz_clear (i); } Suggest either delete the mpz_clear or use it.