Bug 216647

Summary: devel/gcc-arm-embedded: fails to build with libc++ 4.0
Product: Ports & Packages Reporter: Jan Beich <jbeich>
Component: Individual Port(s)Assignee: Lev A. Serebryakov <lev>
Status: Closed FIXED    
Severity: Affects Only Me CC: dim
Priority: --- Keywords: needs-patch
Version: LatestFlags: bugzilla: maintainer-feedback? (lev)
Hardware: Any   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=212465
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=216266
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=216303
Bug Depends on:    
Bug Blocks: 216008    

Description Jan Beich freebsd_committer 2017-01-31 00:45:22 UTC
In file included from src/gcc/gcc/auto-profile.c:25:
In file included from /usr/include/c++/v1/map:446:
/usr/include/c++/v1/functional:1398:2: error: no member named 'fancy_abort' in namespace 'std::__1'; did you mean simply 'fancy_abort'?
        _VSTD::abort();
        ^~~~~~~
/usr/include/c++/v1/__config:390:15: note: expanded from macro '_VSTD'
#define _VSTD std::_LIBCPP_NAMESPACE
              ^
src/gcc/gcc/system.h:700:13: note: 'fancy_abort' declared here
extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
            ^

http://package18.nyi.freebsd.org/data/headamd64PR216008-default/2017-01-29_16h09m05s/logs/errors/gcc-arm-embedded-5.4.20160926.log
regressed by: https://github.com/llvm-mirror/libcxx/commit/14c09a2413ed
Comment 1 Jan Beich freebsd_committer 2017-01-31 00:51:37 UTC
Looks like bug 212465 except I don't understand why Dimitry claims it's specific to libc++ 3.9 when the port builds fine on /head at the moment.
Comment 2 Jan Beich freebsd_committer 2017-01-31 00:55:19 UTC
Ah, it was a typo.
Comment 3 Lev A. Serebryakov freebsd_committer 2017-01-31 12:41:11 UTC
I'm afraid, it is build environment unsupported by vendor…
Comment 4 Lev A. Serebryakov freebsd_committer 2017-01-31 20:18:33 UTC
I've updated port to latest release, which is 6.2.1. I'm not sure, is it still affected by this problem, as one of related bugs says "Newer gcc ports, such as gcc5 and gcc6 don't show this issue".
Comment 5 Dimitry Andric freebsd_committer 2017-01-31 21:02:01 UTC
(In reply to Lev A. Serebryakov from comment #4)
> I've updated port to latest release, which is 6.2.1. I'm not sure, is it
> still affected by this problem, as one of related bugs says "Newer gcc
> ports, such as gcc5 and gcc6 don't show this issue".

For gcc5 this is still an issue (see bug 216266), but for gcc6 it has been solved in a different way by upstream:

https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=235364

E.g. they now include any required C++ headers in gcc/system.h when INCLUDE_LIST, INCLUDE_MAP, etc are defined.
Comment 6 Jan Beich freebsd_committer 2017-02-01 01:20:19 UTC
I confirm, gcc-arm-embedded-6.2.20161216 built fine with clang/libc++ 4.0.