Bug 327641
| Summary: | in devel gcc-compat-34 fails to build a program which works OK in F7 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | manuel wolfshant <manuel.wolfshant> | ||||||
| Component: | compat-gcc-34 | Assignee: | Jakub Jelinek <jakub> | ||||||
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | medium | ||||||||
| Version: | rawhide | CC: | nphilipp | ||||||
| Target Milestone: | --- | Keywords: | Regression | ||||||
| Target Release: | --- | ||||||||
| Hardware: | All | ||||||||
| OS: | Linux | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2007-10-15 07:40:57 UTC | Type: | --- | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Embargoed: | |||||||||
| Attachments: |
|
||||||||
|
Description
manuel wolfshant
2007-10-11 13:27:53 UTC
Created attachment 224271 [details]
failed build log (devel, x86_64)
Created attachment 224281 [details]
A small test case
Compile the attached testcase with the following command:
gcc34 -O2 -Wp,-D_FORTIFY_SOURCE=2 gcc34_memset.c -o gcc34_memset
Why do you use gcc34 to build the package? Appart from buggy configure* which checks for in_addr_t in a wrong header it compiles just fine. (In reply to comment #3) > Why do you use gcc34 to build the package? > Appart from buggy configure* which checks for in_addr_t in a wrong header > it compiles just fine. I've addressed that one already. Still, gcc34 doesn't like memset() if used with the options mentioned in comment #2 -- either this should work or mentioned somewhere with a big "don't do that", perhaps in the release notes? I am using gcc34 for the simple reason that it accepts the source file(s) unmodified. And the resulting binary works as advertised. Nils kindly provided a fix and I have also located an ugly hack which allow usage of gcc4. However the problem I see here is gcc34 failing (under certain circumstances) in F8 (but not in F7). The extremely limited fortification support in gcc34 could only work with macros (which were used in bits/string3.h and bits/stdio2.h, but no other fortification headers), now that we use inlines everywhere it can't work at all. I have turned off fortification support for gcc < 4.1 altogether, with a warning. That said, except for qemu nothing in F8 should be compiled with the compat compilers, so please don't even think of that as an alternative. |