On 03/05/2019 13:58, Stephan Bergmann wrote:
This is a heads up for anybody using Clang ASan/UBSan on Linux:
(1) If you are using Clang trunk (towards Clang 9), make sure you have
<https://github.com/llvm/llvm-project/commit/5745eccef54ddd3caca278d1d292a88b2281528b>
"Adapt -fsanitize=function to SANITIZER_NON_UNIQUE_TYPEINFO". Configure
now assumes that "Clang >= 9" implies that fix, and otherwise building
or running LO could fail.
(2) I want to eventually get rid of the legacy
NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY code, so if you are using an
older Clang, it would be great if you could upgrade as soon as
convenient for you (and once Clang 9 is even out).
* <https://ci.libreoffice.org/job/lo_ubsan/> is now using an appropriate
Clang trunk (see
<https://gerrit.libreoffice.org/plugins/gitiles/lode/+/2c94cfcf1377c4bb1808473d8163b23e6b62f4eb%5E%21/>
"Bump ASan/UBSan bot to Clang trunk towards Clang 9").
* The fuzzer machinery was already using Clang trunk and appears to not
be negatively affected by the below
9a7aa3326d087c79879e435179e359dd76aa5e0a "The -fvisibility-ms-compat
hack is no longer needed for UBSan on Linux..." (Caolán, correct me if
I'm wrong).
* <https://gerrit.libreoffice.org/72493> "Remove legacy
solenv/sanitizers/asan-suppressions support" will drop the legacy
NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY code (and the no longer needed
solenv/sanitizers/asan-suppressions, which people might still reference
from their ASAN_OPTIONS), I plan on submitting it in a week, say. Speak
up now if you still need non-trunk Clang supported for sanitizer builds!
On 03/05/2019 13:47, Stephan Bergmann (via logerrit) wrote:
New commits:
commit 9a7aa3326d087c79879e435179e359dd76aa5e0a
Author: Stephan Bergmann <sbergman@xxxxxxxxxx>
AuthorDate: Tue Apr 16 16:11:39 2019 +0200
Commit: Stephan Bergmann <sbergman@xxxxxxxxxx>
CommitDate: Fri May 3 13:46:25 2019 +0200
The -fvisibility-ms-compat hack is no longer needed for UBSan on
Linux...
...with latest Clang trunk towards Clang 9. All the no-longer
necessary hacks
are made conditional on new
NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY, which is
still set for UBSan builds with older Clang on Linux (but which
should
eventually be purged).
Various classes needed additional SAL_DLLPUBLIC_RTTI annotations,
as building
with UBSan instrumentation can generate references to RTTI
symbols from
additional places like outside a dynamic library that used to
hide those symbols
by default (but used to not hide them for old UBSan builds thanks
to the
-fvisibility-ms-compat hack).
The odr-violation suppressions in
solenv/sanitizers/asan-suppressions (which is
not referenced from anywhere in the code base, but meant to be
included in an
ASan/UBSan build's ASAN_OPTIONS env var) are also no longer
needed when
NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY is false.
Change-Id: I24ec3e388b0cbab50dbe2bf008d9569bff7bf25a
Reviewed-on: https://gerrit.libreoffice.org/70829
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@xxxxxxxxxx>
_______________________________________________
LibreOffice mailing list
LibreOffice@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/libreoffice