Bug 1092622
Summary: | clang-3.4: unusable with libstdc++ from gcc 4.9 | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Igor Gnatenko <ignatenko> |
Component: | llvm | Assignee: | Adam Jackson <ajax> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | urgent | Docs Contact: | |
Priority: | urgent | ||
Version: | 22 | CC: | accounts+fedora, ajax, bos, bzf, dmalcolm, fabian.deutsch, fdeutsch, grs, ignatenko, jv+fedora, petersen, scottt.tw |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2016-03-20 20:30:36 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1105999 |
Description
Igor Gnatenko
2014-04-29 15:12:36 UTC
Hey, this is also blocking libclc updates, which basically prevents supporting newer AMD APUs in rawhide/f21. Probably is a fix: http://reviews.llvm.org/rL201729 yes. this patch applied by upstream, but have not backported to 3.4.1, so we should apply it ourself. https://github.com/llvm-mirror/clang/commit/88ede395cf896c0a14299be553b6084aa6a5e50d *** Bug 1120995 has been marked as a duplicate of this bug. *** This bug appears to have been reported against 'rawhide' during the Fedora 22 development cycle. Changing version to '22'. More information and reason for this action is here: https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora22 Another problem with clang and libstd++ on Fedora 22: main.cpp: example from http://en.cppreference.com/w/cpp/utility/functional/function/target $ clang++ -std=c++11 main.cpp main.cpp:9:13: error: no member named 'target' in 'std::function<int (int, int)>' if (arg.target<std::plus<int>>()) ~~~ ^ main.cpp:9:34: error: expected '(' for function-style cast or type construction if (arg.target<std::plus<int>>()) ~~~~~~~~~~~~~~^ [...] It compiles fine in their web interface with clang and c++11 enabled. G++ also works on Fedora 22. Seems that the __cpp_rtti #define is missing. Adding it manually makes the code compile. |