[Bug 202662] Fix lang/go build with clang 3.7.0
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Aug 25 20:13:47 UTC 2015
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202662
Bug ID: 202662
Summary: Fix lang/go build with clang 3.7.0
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: jlaffaye at FreeBSD.org
Reporter: dim at FreeBSD.org
Assignee: jlaffaye at FreeBSD.org
Flags: maintainer-feedback?(jlaffaye at FreeBSD.org)
Created attachment 160360
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=160360&action=edit
Fix go's ldelf.c to not complain about unnamed symbols
During the exp-run in bug 201377, it was found that lang/go gives errors with a
recent clang 3.7.0 snapshot:
http://package18.nyi.freebsd.org/data/headi386PR201377-default/2015-07-31_12h04m22s/logs/errors/go-1.4.2,1.log
These errors, about unnamed symbols, are very similar to this upstream issue:
https://github.com/golang/go/issues/8876
I propose the attached patch for ldelf.c, which makes it ignore unnamed
symbols, similar to those starting with .Linfo_string*.
Even with this patch, on amd64, there is still another issue, where a few
negative numbers are left-shifted:
/usr/work/share/dim/ports/lang/go/work/go/src/cmd/6c/txt.c:995:28: error:
shifting a negative signed value is undefined [-Werror,-Wshift-negative-value]
f->vconst |= (vlong)~0 << 32;
~~~~~~~~~ ^
For this, I propose the next patch, for src/cmd/6c/txt.c, which just casts the
constant to uvlong. This should result in no functional change, but I am
unsure how to run any go test suite to verify.
Alternatively, the makefile(s) can be changed to squelch the warning, if you
like that better.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list