Re: clang assertion failure+coredump in clang 3.4.1

From: Benjamin Kaduk <kaduk_at_MIT.EDU>
Date: Tue, 22 Jul 2014 15:05:58 -0400 (EDT)
Hi Dimitry,

On Tue, 22 Jul 2014, Dimitry Andric wrote:

> On 22 Jul 2014, at 00:34, Benjamin Kaduk <kaduk_at_MIT.EDU> wrote:
>> Building some out-of-tree software with a rather long set of compiler flags, I can reliably get our clang to crash.
>> The system is current as of r267362 (June 11), with clang reporting itself as FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
>> Target: x86_64-unknown-freebsd11.0
>> (freefall's clang crashes as well.)
>>
>> Unfortunately, I don't have debug symbols around for that clang binary.
>> If someone does have a clang with debug symbols handy, I'd be interested in seeing the backtrace.
>>
>> The processed source file and invocation shell script may be found at:
>> http://web.mit.edu/kaduk/Public/clang/dumptool-09e584.c    (1.1M)
>> http://web.mit.edu/kaduk/Public/clang/dumptool-09e584.sh
>
> Hi Ben,
>
> I was able to reproduce the assertion, even with clang trunk.  It is
> apparently caused by the implementation of the -Wconsumed warning, which
> is enabled in your case because you had used -Weverything.
>
> I have reported an upstream bug with a reduced test case here:
>
> http://llvm.org/PR20402

Thank you very much!  I was planning to try to reproduce on clang trunk 
and reduce the test case, but I think you are much more practiced at doing 
so than I am ;)

> Meanwhile, you can work around the assertion by adding -Wno-consumed to
> your compilation flags.

I will do so, thanks.
As you may have guessed from the compiler command line, I'm enabled 
-Weverything for development and am disabling the pieces that cause 
annoyance and/or too much spew.  The openafs build system interacts in an 
exciting way with bsd.kmod.mk, passing through my -Weverything and also 
taking the kernel's -Werror...

-Ben
Received on Tue Jul 22 2014 - 17:06:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:51 UTC