maintainer-feedback requested: [Bug 255953] www/firefox-esr: Fix compile error with clang/libc++ 12

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon May 17 19:06:21 UTC 2021


Bugzilla Automation <bugzilla at FreeBSD.org> has asked freebsd-gecko (Nobody)
<gecko at FreeBSD.org> for maintainer-feedback:
Bug 255953: www/firefox-esr: Fix compile error with clang/libc++ 12
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255953



--- Description ---
During an exp-run for llvm 12 (see bug 255570), it turned out that
www/firefox-esr does not build with clang 12.0.0 [1]:

In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/firefox-78.10.1/media/webrtc/trunk/webr
tc/modules/audio_processing/beamformer/covariance_matrix_generator.cc:13:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/firefox-78.10.1/media/webrtc/trunk/webr
tc/modules/audio_processing/beamformer/covariance_matrix_generator.h:14:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/firefox-78.10.1/media/webrtc/trunk/webr
tc/modules/audio_processing/beamformer/complex_matrix.h:14:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/.build/dist/system_wrappers/complex:3:
In file included from /usr/include/c++/v1/complex:236:
In file included from /usr/include/c++/v1/stdexcept:46:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/.build/dist/system_wrappers/exception:3
:
In file included from /usr/include/c++/v1/exception:81:
In file included from /usr/include/c++/v1/__memory/base.h:14:
In file included from /usr/include/c++/v1/__debug:14:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/.build/dist/stl_wrappers/iosfwd:58:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/.build/dist/include/mozilla/mozalloc.h:
31:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/.build/dist/stl_wrappers/new:52:
In file included from
/wrkdirs/usr/ports/www/firefox-esr/work/.build/dist/system_wrappers/new:3:
/usr/include/c++/v1/new:127:14: error: expected class name
    : public exception
	     ^
1 error generated.

This is caused by firefox doing a lot of complex and fragile juggling with
system headers, and was reported upstream as
<https://bugzilla.mozilla.org/show_bug.cgi?id=1694575>, then fixed via
<https://hg.mozilla.org/mozilla-central/rev/f875a4ffd653>. 

Hopefully the next esr drop will have this fix included, but for now I propose
the attached patch.

[1]
http://package22.nyi.freebsd.org/data/mainamd64PR255570-default/2021-05-08_16h0
2m24s/logs/firefox-esr-78.10.1,1.log


More information about the freebsd-gecko mailing list