<div dir="ltr">Can you build LLVM with just-built Clang and -DLLVM_ENABLE_WERROR=ON?<div>I'm not sure why the behavior has changed, though. I also can't reproduce the first error on the buildbot locally for now.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jul 30, 2015 at 6:07 PM, Eric Fiselier <span dir="ltr"><<a href="mailto:eric@efcs.ca" target="_blank">eric@efcs.ca</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">These warnings were occuring before my patch though. I'm not sure why<br>
they are causing issues now.<br>
<div class="HOEnZb"><div class="h5"><br>
On Thu, Jul 30, 2015 at 9:00 PM, Alexey Samsonov <<a href="mailto:vonosmas@gmail.com">vonosmas@gmail.com</a>> wrote:<br>
> Some of this is caused by -Werror: when we boostrap LLVM with just-built<br>
> Clang, we pass LLVM_ENABLE_WERROR, and looks like it fires a warning for<br>
> libc++:<br>
><br>
> /mnt/b/sanitizer-buildbot1/sanitizer-x86_64-linux/build/llvm/projects/libcxx/include/locale:1879:29:<br>
> error: 'std::__1::__time_get_c_storage<char>' has virtual functions but<br>
> non-virtual destructor [-Werror,-Wnon-virtual-dtor]<br>
> class _LIBCPP_TYPE_VIS_ONLY __time_get_c_storage<br>
><br>
><br>
> On Thu, Jul 30, 2015 at 5:35 PM, Eric Fiselier <<a href="mailto:eric@efcs.ca">eric@efcs.ca</a>> wrote:<br>
>><br>
>> Looks like the updated commit broke the sanitizer build again. I'm<br>
>> looking into it but I'm having trouble reproducing.<br>
>> If anybody has access to the logs I would like to see them.<br>
>><br>
>> On Thu, Jul 30, 2015 at 6:33 PM, Eric Fiselier <<a href="mailto:eric@efcs.ca">eric@efcs.ca</a>> wrote:<br>
>> > FYI I recommitted the working parts of this patch as r243698. I<br>
>> > removed the "HandleLLVMOptions.cmake" include which was causing all of<br>
>> > the problems. Please let me know if anything comes up.<br>
>> ><br>
>> > /Eric<br>
>> ><br>
>> ><br>
>> > On Thu, Jul 30, 2015 at 4:26 PM, Eric Fiselier <<a href="mailto:eric@efcs.ca">eric@efcs.ca</a>> wrote:<br>
>> >>> What would/does `-DLLVM_USE_SANITIZER=Thread` do differently than<br>
>> >>> `-DCMAKE_CXX_FLAGS=-<br>
>> >>> fsanitize=thread` here?<br>
>> >><br>
>> >> Using LLVM_USE_SANITIZER will prevent LLVM from adding certain link<br>
>> >> flags such as '-Wl,-z,defs', '-ffunction-sections' and<br>
>> >> '-fdata-sections' and it will force LLVM to provide some level of<br>
>> >> debug information in RELEASE mode.<br>
>> >><br>
>> >> For sanitizers other than Thread, LLVM_USE_SANITIZER will add extra<br>
>> >> flags such as '-fsanitize-no-recover'.<br>
>> >><br>
>> >> Also, for libc++, using LLVM_USE_SANITIZER sets the testsuite up to<br>
>> >> run with the sanitizers as well.<br>
>> >><br>
>> >> On Thu, Jul 30, 2015 at 4:09 PM, Jonathan Roelofs<br>
>> >> <<a href="mailto:jonathan@codesourcery.com">jonathan@codesourcery.com</a>> wrote:<br>
>> >>><br>
>> >>><br>
>> >>> On 7/30/15 12:47 PM, Alexey Samsonov wrote:<br>
>> >>>><br>
>> >>>> I actually support the idea of including LLVM CMake modules from<br>
>> >>>> libc++ CMake: the logic for building instrumented LLVM and building<br>
>> >>>> instrumented libc++ should better be listed in a single place, and be<br>
>> >>>> controlled by LLVM_USE_SANITIZER options: i.e. when we configure<br>
>> >>>> libc++ from compiler-rt, we should pass -DLLVM_USE_SANITIZER=Thread<br>
>> >>>> rather than -DCMAKE_CXX_FLAGS=-fsanitize=thread. It's not possible to<br>
>> >>>> do this right now, though (for instance we build two different<br>
>> >>>> versions of MSan-libc++), but I think I'd be able to work on that<br>
>> >>>> once your patch lands and the dust settles.<br>
>> >>>><br>
>> >>><br>
>> >>> What would/does `-DLLVM_USE_SANITIZER=Thread` do differently than<br>
>> >>> `-DCMAKE_CXX_FLAGS=-fsanitize=thread` here?<br>
>> >>><br>
>> >>><br>
>> >>> Jon<br>
>> >>><br>
>> >>><br>
>> >>> --<br>
>> >>> Jon Roelofs<br>
>> >>> <a href="mailto:jonathan@codesourcery.com">jonathan@codesourcery.com</a><br>
>> >>> CodeSourcery / Mentor Embedded<br>
><br>
><br>
><br>
><br>
> --<br>
> Alexey Samsonov<br>
> <a href="mailto:vonosmas@gmail.com">vonosmas@gmail.com</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Alexey Samsonov<br><a href="mailto:vonosmas@gmail.com" target="_blank">vonosmas@gmail.com</a></div></div>
</div>