| Summary: | Compiler errors with GCC6 (building libreoffice) | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | coypu | ||||
| Component: | gcc | Assignee: | Jakub Jelinek <jakub> | ||||
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 24 | CC: | davejohansen, jakub, jwakely, law, mpolacek | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2016-02-27 08:48:20 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: | |||||
| Attachments: |
|
||||||
|
Description
coypu
2016-02-02 21:23:58 UTC
Woops, the source code is of the wrong file, but it is the right commit. Here's the right file: http://cgit.freedesktop.org/libreoffice/core/tree/sc/source/filter/oox/autofiltercontext.cxx?id=773da02e8d2fc369c42eb2a799b41bf586acb4f5 (In reply to coypu from comment #0) > However I find it hard to believe that this bug is with the software, > considering compilation worked without this flag previously, and upstream > has not corrected this in any way (though they made some file changes). GCC in rawhide now defaults to -std=gnu++14 > 2. Wrong abs ends up being used, but cannot correct by using using #include > <cstdio> and specifying std::abs in sax/source/tools/converter.cxx as > follows: abs is overloaded in C++, so if you want abs(int) to be called not abs(double) then you need to call it with an argument of type int, not an argument of type double. For the ICE, we need preprocessed source, not original source (use -save-temps, or -E instead of -c, or -freport-bug, but that should be the default), and full command line to reproduce it. (In reply to Jakub Jelinek from comment #3) > For the ICE, we need preprocessed source, not original source (use > -save-temps, or -E instead of -c, or -freport-bug, but that should be the > default), and full command line to reproduce it. I've attached a file which I think is the preprocessed source, is it not the right thing? (In reply to Jonathan Wakely from comment #2) > (In reply to coypu from comment #0) > > However I find it hard to believe that this bug is with the software, > > considering compilation worked without this flag previously, and upstream > > has not corrected this in any way (though they made some file changes). > > GCC in rawhide now defaults to -std=gnu++14 > > > 2. Wrong abs ends up being used, but cannot correct by using using #include > > <cstdio> and specifying std::abs in sax/source/tools/converter.cxx as > > follows: > > abs is overloaded in C++, so if you want abs(int) to be called not > abs(double) then you need to call it with an argument of type int, not an > argument of type double. OK, that part is definitely not a bug. Sorry about that. Thanks for the information regarding -std=gnu++14. (In reply to coypu from comment #4) > I've attached a file which I think is the preprocessed source, is it not the > right thing? Sorry, missed that. Tracking the ICE upstream now: PR69649. This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle. Changing version to '24'. More information and reason for this action is here: https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase This should be fixed in gcc-6.0.0-0.12.fc24. |