https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256524
Bug ID: 256524
Summary: Does FreeBSD 12.2-RELEASE amd64 support
-fsanitize=leak?
Product: Base System
Version: 12.2-RELEASE
Hardware: amd64
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: bin
Assignee: [email protected]
Reporter: [email protected]
Looking at
/usr/src/contrib/llvm-project/clang/lib/Driver/ToolChains/FreeBSD.cpp, amd64
seems to support while i386 does not for clang10, on 12.2-RELEASE:
SanitizerMask Res = ToolChain::getSupportedSanitizers();
Res |= SanitizerKind::Address;
Res |= SanitizerKind::PointerCompare;
Res |= SanitizerKind::PointerSubtract;
Res |= SanitizerKind::Vptr;
if (IsX86_64 || IsMIPS64) {
Res |= SanitizerKind::Leak;
Res |= SanitizerKind::Thread;
}
if (IsX86 || IsX86_64) {
Res |= SanitizerKind::Function;
Res |= SanitizerKind::SafeStack;
Res |= SanitizerKind::Fuzzer;
Res |= SanitizerKind::FuzzerNoLink;
}
However, amd64 mach gives me "No such file" error while linking.
amd64% clang++ -fsanitize=leak address_sanitizer.cpp
ld: error: cannot open
/usr/lib/clang/10.0.1/lib/freebsd/libclang_rt.lsan-x86_64
.a: No such file or directory
clang++: error: linker command failed with exit code 1 (use -v to see
invocation
)
i386 explicitly says it is not supported.
i386% clang++ -fsanitize=leak address_sanitizer.cpp
clang++: error: unsupported option '-fsanitize=leak' for target
'i386-unknown-freebsd13.0'
Given Clang 13 document, https://clang.llvm.org/docs/LeakSanitizer.html,
doesn't say FreeBSD is supported, I'm not sure if amd64 case is unsupported or
an error.
I only have 12.2 RELEASE for amd64 and cannot experiment other FreeBSD version.
% cat address_sanitizer.cpp
int main()
{
int *i = new int( 1 );
*i = 0;
}
--
You are receiving this mail because:
You are the assignee for the bug.