Date: Fri, 27 Dec 2013 13:52:29 +0200 From: Markiyan Kushnir <markiyan.kushnir@gmail.com> To: freebsd-hackers@freebsd.org Subject: clang lacks undefined behavior sanitizer (ubsan) on FreeBSD? Message-ID: <CACvtUJcujNRgJAdh-TPXApQbrbKW5gEfdbakOQozfKdMt7Qyhw@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Trying to make benefit out of -fsanitize=undefined and failing on 11-CURRENT r259742. A minimal test case: 13:45:tmp$ cat ttt.c #include <stdio.h> int main(void) { int i, j = 0xffffffff; for (i = 0; i < 2; ++i) { j <<= 1; printf("j=%x\n", j); } return 0; } 13:45:tmp$ clang -Qunused-arguments -fcolor-diagnostics -g -O0 -fsanitize=undefined -Wall -Wextra -Werror -std=c99 ttt.c /tmp/ttt-RJPqDj.o: In function `main': /tmp/ttt.c:9: undefined reference to `__ubsan_handle_shift_out_of_bounds' /tmp/ttt.c:8: undefined reference to `__ubsan_handle_add_overflow' clang: error: linker command failed with exit code 1 (use -v to see invocation) The ports version (both clang33 and clang34) neither seems to take care of it, as I could see in llvm.src/tools/clang/runtime/compiler-rt/Makefile Am I missing anything? -- Markiyan.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACvtUJcujNRgJAdh-TPXApQbrbKW5gEfdbakOQozfKdMt7Qyhw>