Opened 6 years ago

Closed 6 years ago

#47410 closed defect (fixed)

gcc48 @4.8.4_0, gcc49 @4.9.2_1: bootstrap comparison fails with clang-602.0.49 from Xcode 6.3

Reported by: howarth.at.macports@… Owned by: larryv (Lawrence Velázquez)
Priority: Normal Milestone:
Component: ports Version: 2.3.3
Keywords: Cc: jeremyhu (Jeremy Huddleston Sequoia), christopherbalz@…, pistopete@…, sears3@…, mww@…
Port: gcc49 libgcc gcc48

Description (last modified by ryandesign (Ryan Schmidt))

The new Xcode 6.3's clang 6.1 (3.6.0svn) compilers break the bootstrap of FSF gcc 4.9.2 and gcc 4.9.3svn due to configure leaving BUILD_CONFIG unset.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65733
https://llvm.org/bugs/show_bug.cgi?id=23192

This same issue occurs when the llvm 3.5.1, 3.5.2 or 3.6.0 compilers are used to bootstrap gcc. The current workaround is to explicitly pass --with-build-config=bootstrap-debug to configure when the newer clang compilers are in use.

Attachments (1)

Portfile.diff (549 bytes) - added by howarth.at.macports@… 6 years ago.
fix for https://llvm.org/bugs/show_bug.cgi?id=22046

Download all attachments as: .zip

Change History (17)

comment:1 Changed 6 years ago by ryandesign (Ryan Schmidt)

Cc: jeremyhu@… added; jeremyhu removed

Note that the Cc field requires complete email addresses.

comment:2 Changed 6 years ago by ryandesign (Ryan Schmidt)

Description: modified (diff)

comment:3 Changed 6 years ago by larryv (Lawrence Velázquez)

Cc: larryv@… added
Owner: changed from macports-tickets@… to mww@…
Summary: Xcode 6.3 breaks gcc 4.9.2 builds with bootstrap comparison failuresgcc49 @4.9.2_1: bootstrap comparison fails with Xcode 6.3

Changed 6 years ago by howarth.at.macports@…

Attachment: Portfile.diff added

comment:4 Changed 6 years ago by howarth.at.macports@…

Note that if you plan to support building FSF gcc with the llvm.org clang compilers in MacPorts the proposed patch needs to be extended to capture clang 3.5 and later.

comment:5 Changed 6 years ago by ryandesign (Ryan Schmidt)

Cc: christopherbalz@… added

Has duplicate #47419.

comment:6 Changed 6 years ago by ryandesign (Ryan Schmidt)

Cc: pistopete@… added
Port: libgcc added

Has duplicate #47417.

comment:7 Changed 6 years ago by howarth.at.macports@…

comment:8 Changed 6 years ago by howarth.at.macports@…

Just to be clear, this is considered a defect in both llvm.org and Apple clang so no hack will be forthcoming from the FSF gcc developers. Upstream lllvm.org needs to eliminate this regression in the improper setting of the CIE version in the absence of debug flags.

comment:9 Changed 6 years ago by sears3@…

So basically no gcc version can be compiled until it's handled upstream? Effectively, new installs of macports are not happening for a while then (as I just figured out). Anybody have a hack/workaround?

Last edited 6 years ago by sears3@… (previous) (diff)

comment:10 Changed 6 years ago by sears3@…

Cc: sears3@… added

Cc Me!

comment:11 in reply to:  4 ; Changed 6 years ago by larryv (Lawrence Velázquez)

Replying to howarth.at.macports@…:

Note that if you plan to support building FSF gcc with the llvm.org clang compilers in MacPorts the proposed patch needs to be extended to capture clang 3.5 and later.

Is there a reason we can’t apply the workaround universally?

comment:12 in reply to:  9 Changed 6 years ago by howarth.at.macports@…

Replying to sears3@…:

So basically no gcc version can be compiled until it's handled upstream? Effectively, new installs of macports are not happening for a while then (as I just figured out). Anybody have a hack/workaround?

No. You just have to explicitly pass '--with-build-config=bootstrap-debug' to configure when building with the clang 3.5 or later from llvm.org or with Apple clang 6.1. The code in configure that tests for proper debug code in object files is tripped up by this breakage in clang (where the wrong CIE version of dwarf 3 is emitted in the absence of debug flags).

comment:13 in reply to:  11 Changed 6 years ago by howarth.at.macports@…

Replying to larryv@…:

Replying to howarth.at.macports@…:

Note that if you plan to support building FSF gcc with the llvm.org clang compilers in MacPorts the proposed patch needs to be extended to capture clang 3.5 and later.

Is there a reason we can’t apply the workaround universally?

None other than it is completely unnecessary for the earlier clang compilers (and hopefully for later clang compilers once the bug is fixed). Gcc upstream is not going to work around the issue and expects llvm to fix their compilers.

comment:14 Changed 6 years ago by larryv (Lawrence Velázquez)

Cc: mww@… added; larryv@… removed
Owner: changed from mww@… to larryv@…
Port: gcc49, libgccgcc49 libgcc
Status: newassigned
Summary: gcc49 @4.9.2_1: bootstrap comparison fails with Xcode 6.3gcc49 @4.9.2_1: bootstrap comparison fails with clang-602.0.49 from Xcode 6.3

Taking over due to maintainer timeout.

comment:15 Changed 6 years ago by larryv (Lawrence Velázquez)

Port: gcc48 added
Summary: gcc49 @4.9.2_1: bootstrap comparison fails with clang-602.0.49 from Xcode 6.3gcc48 @4.8.4_0, gcc49 @4.9.2_1: bootstrap comparison fails with clang-602.0.49 from Xcode 6.3

Corroborated a comment on GCC PR bootstrap/65733 that gcc48 is also affected. gcc47 @4.7.4_3 and gcc5 @5-20150405 are not.

comment:16 Changed 6 years ago by larryv (Lawrence Velázquez)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.