NetBSD Problem Report #54277

From www@netbsd.org  Thu Jun  6 09:44:32 2019
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id B9B257A18A
	for <gnats-bugs@gnats.NetBSD.org>; Thu,  6 Jun 2019 09:44:31 +0000 (UTC)
Message-Id: <20190606094430.B44F47A1DB@mollari.NetBSD.org>
Date: Thu,  6 Jun 2019 09:44:30 +0000 (UTC)
From: ng0@n0.is
Reply-To: ng0@n0.is
To: gnats-bugs@NetBSD.org
Subject: firefox 67.0.1 clang(base+pkgsrc): /usr/include/c++/cmath:393:12: error: use of undeclared identifier '__isinf'
X-Send-Pr-Version: www-1.0

>Number:         54277
>Category:       pkg
>Synopsis:       firefox 67.0.1 clang(base+pkgsrc): /usr/include/c++/cmath:393:12: error: use of undeclared identifier '__isinf'
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    ryoon
>State:          feedback
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jun 06 09:45:00 +0000 2019
>Closed-Date:    
>Last-Modified:  Tue Oct 13 03:39:17 +0000 2020
>Originator:     ng0
>Release:        current
>Organization:
>Environment:
NetBSD uptimegirl 8.99.42 NetBSD 8.99.42 (GENERIC) amd64

>Description:
This system runs both pkgsrc and base with clang from base.
While building firefox from pkgsrc, this error is encountered.

In file included from /usr/work/www/firefox/work/firefox-67.0.1/mfbt/decimal/Decimal.cpp:32:
In file included from /usr/work/www/firefox/work/firefox-67.0.1/mfbt/decimal/moz-decimal-utils.h:16:
In file included from /usr/work/www/firefox/work/build/dist/include/mozilla/FloatingPoint.h:15:
In file included from /usr/work/www/firefox/work/build/dist/include/mozilla/MathAlgorithms.h:15:
In file included from /usr/work/www/firefox/work/build/dist/system_wrappers/cmath:3:
/usr/include/c++/cmath:393:12: error: use of undeclared identifier '__isinf'
    return isinf(__lcpp_x);
           ^
/usr/include/math.h:484:20: note: expanded from macro 'isinf'
#define isinf(__x)      __isinf(__x)
                        ^
/usr/include/c++/cmath:403:12: note: in instantiation of function template specialization '__libcpp_isinf<double>' requested here
    return __libcpp_isinf((typename std::__promote<_A1>::type)__lcpp_x);
           ^
/usr/work/www/firefox/work/firefox-67.0.1/mfbt/decimal/Decimal.cpp:698:14: note: in instantiation of function template specialization 'isinf<double>' requested here
    if (std::isinf(doubleValue))
             ^
1 error generated.
gmake[3]: *** [/usr/work/www/firefox/work/firefox-67.0.1/config/rules.mk:807: Decimal.o] Error 1
gmake[3]: Leaving directory '/usr/work/www/firefox/work/build/mfbt'
gmake[2]: *** [/usr/work/www/firefox/work/firefox-67.0.1/config/recurse.mk:74: mfbt/target] Error 2
gmake[2]: Leaving directory '/usr/work/www/firefox/work/build'
gmake[1]: *** [/usr/work/www/firefox/work/firefox-67.0.1/config/recurse.mk:34: compile] Error 2
gmake[1]: Leaving directory '/usr/work/www/firefox/work/build'
gmake: *** [/usr/work/www/firefox/work/firefox-67.0.1/config/rules.mk:400: all] Error 2
*** Error code 2

Stop.
make[1]: stopped in /usr/pkgsrc/www/firefox
*** Error code 1

Stop.
make: stopped in /usr/pkgsrc/www/firefox

>How-To-Repeat:

>Fix:

>Release-Note:

>Audit-Trail:
From: Tobias Nygren <tnn@NetBSD.org>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: pkg/54277: firefox 67.0.1 clang(base+pkgsrc):
 /usr/include/c++/cmath:393:12: error: use of undeclared identifier
 '__isinf'
Date: Thu, 6 Jun 2019 13:57:51 +0200

 I've had this patch in my localpatches for a long time.
 Not a correct fix but works for me.

 --- config/make-system-wrappers.py.orig 2019-01-24 18:48:39.000000000 +0000
 +++ config/make-system-wrappers.py
 @@ -6,6 +6,7 @@ import os
  from mozbuild.util import FileAvoidWrite

  header_template = '''#pragma GCC system_header
 +#define __isinf(x) __builtin_isinf(x)
  #pragma GCC visibility push(default)
  {includes}
  #pragma GCC visibility pop

Responsible-Changed-From-To: pkg-manager->ryoon
Responsible-Changed-By: ryoon@NetBSD.org
Responsible-Changed-When: Tue, 16 Jul 2019 05:11:23 +0000
Responsible-Changed-Why:
I will take this.


From: coypu@sdf.org
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: pkg/54277: firefox 67.0.1 clang(base+pkgsrc):
Date: Tue, 16 Jul 2019 09:06:55 +0000

 As a data point: this originates in netbsd's headers.

 #define	isinf(__x)	__isinf(__x)

 And libstdc++ will #undef isinf in some of its headers.

 Perhaps this macro should not be visible for C++. I'm not sure.

State-Changed-From-To: open->feedback
State-Changed-By: maya@NetBSD.org
State-Changed-When: Tue, 13 Oct 2020 03:39:17 +0000
State-Changed-Why:
Is it still a problem to install firefox with base libc++? this version of firefox is quite outdated.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.