firebox build fails post clang-3.4 merge
Don Lewis
truckman at FreeBSD.org
Fri Feb 28 07:39:29 UTC 2014
On 26 Feb, Benjamin Kaduk wrote:
> On Wed, 26 Feb 2014, Don Lewis wrote:
>
>> On 26 Feb, Michael Butler wrote:
>>> On 02/18/14 12:10, Michael Butler wrote:
>>>> Is anyone else seeing firefox failing to install after the clang-3.4
>>>> merge? As in xpcshell dumping core ..
>>>
>>> An update ..
>>>
>>> Recompiling with GCC48 on -current yields the same result. Seems to run
>>> correctly when invoked from the command-line but seg-faults with "errno
>>> = 4" (invalid instruction) from the build
>>>
>>> Giving up and using the Linux port .. :-(
>>
>> I've also seen this problem with clang-3.4 on i386. It looks like a
>> clang bug to me. Clang is putting ud2 instructions in its output which
>> are guaranteed to fault when it compiles nsAppRunner.cpp. See
>> <http://www.freebsd.org/cgi/query-pr.cgi?pr=187103>.
>
> That would seem to indicate that clang believes the source code in
> question is exercising a case which is explicitly listed as giving
> undefined behavior in the language specification. Presumably that means we
> need a C++ language lawyer to look over the code in question.
After spending the last couple of days pounding my head on my desk, I
managed to come up with a standalone test case that reproduces this
problem. The source is still on the hefty side because of all the C++
template goo (but more than an order of magnitude smaller than when I
started) but the assembly code is fairly small. If updated my PR with
the relevant info.
More information about the freebsd-current
mailing list