In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/fa2e45943e2b6ce22cf70dba5b47afe73c8c7c80?hp=1be62ab994fa349db4cbecfda4ab8309b68c5361>
- Log ----------------------------------------------------------------- commit fa2e45943e2b6ce22cf70dba5b47afe73c8c7c80 Author: Tony Cook <t...@develop-help.com> Date: Wed Aug 2 16:15:06 2017 +1000 (perl #131786) avoid a duplicate symbol error on _LIB_VERSION For -flto -mieee-fp builds, the _LIB_VERSION definition in perl.c and in libieee conflict, causing a build failure. The test we perform in Configure checks only that such a variable exists (and is declared), it doesn't check that we can *define* such a variable, which the code in pp.c tried to do. So rather than trying to define the variable, just initialize it during our normal interpreter initialization. ----------------------------------------------------------------------- Summary of changes: perl.c | 8 ++++++++ pp.c | 8 -------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/perl.c b/perl.c index 4370f48d48..563fb3ba51 100644 --- a/perl.c +++ b/perl.c @@ -286,6 +286,14 @@ perl_construct(pTHXx) PL_localpatches = local_patches; /* For possible -v */ #endif +#if defined(LIBM_LIB_VERSION) + /* + * Some BSDs and Cygwin default to POSIX math instead of IEEE. + * This switches them over to IEEE. + */ + _LIB_VERSION = _IEEE_; +#endif + #ifdef HAVE_INTERP_INTERN sys_intern_init(); #endif diff --git a/pp.c b/pp.c index 8e27eac244..46366c3bd2 100644 --- a/pp.c +++ b/pp.c @@ -39,14 +39,6 @@ extern Pid_t getpid (void); #endif -/* - * Some BSDs and Cygwin default to POSIX math instead of IEEE. - * This switches them over to IEEE. - */ -#if defined(LIBM_LIB_VERSION) - _LIB_VERSION_TYPE _LIB_VERSION = _IEEE_; -#endif - static const STRLEN small_mu_len = sizeof(GREEK_SMALL_LETTER_MU_UTF8) - 1; static const STRLEN capital_iota_len = sizeof(GREEK_CAPITAL_LETTER_IOTA_UTF8) - 1; -- Perl5 Master Repository