Bug#978943: clang-check dumps stack trace with no CLI args

John Scott jscott at posteo.net
Thu Dec 31 22:37:45 GMT 2020


Package: clang-tools-11
Version: 1:11.0.0-5+b1
Severity: minor

For some reason clang-check raises SIGABRT if it's not given any
command-line arguments. gdb gives me a backtrace like this

#0  __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007fffefd05537 in __GI_abort () at abort.c:79
#2  0x00007ffff0cf2c48 in report_fatal_error ()
    at /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/llvm/lib/Support/ErrorHandling.cpp:126
#3  0x00007ffff0cf2c67 in report_fatal_error ()
    at /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/llvm/lib/Support/ErrorHandling.cpp:87
#4  0x00007ffff73c2eb6 in CommonOptionsParser ()
    at /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/clang/lib/Tooling/CommonOptionsParser.cpp:173
#5  0x0000000000405eb3 in CommonOptionsParser ()
    at /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/clang/include/clang/Tooling/CommonOptionsParser.h:78
#6  main () at /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/clang/tools/clang-check/ClangCheck.cpp:163

but running clang-check with the debugging symbols installed is much more
noisy; unfortunately it looks like usrmerge confusion caused it to omit the
interesting bit:

 #0 0x00007f6476cd9e7f llvm::sys::PrintStackTrace(llvm::raw_ostream&) /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/llvm/lib/Support/Unix/Signals.inc:564:13
 #1 0x00007f6476cd81b2 llvm::sys::RunSignalHandlers() /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/llvm/lib/Support/Signals.cpp:69:18
 #2 0x00007f6476cda355 SignalHandler /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/llvm/lib/Support/Unix/Signals.inc:0:3
 #3 0x00007f647dead140 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14140)
 #4 0x00007f6475c52c81 raise ./signal/../sysdeps/unix/sysv/linux/raise.c:51:1
 #5 0x00007f6475c3c537 abort ./stdlib/abort.c:81:7
 #6 0x00007f6476c29c48 (/lib/x86_64-linux-gnu/libLLVM-11.so.1+0xb20c48)
 #7 0x00007f6476c29c67 (/lib/x86_64-linux-gnu/libLLVM-11.so.1+0xb20c67)
 #8 0x00007f647d2f9eb6 (/lib/x86_64-linux-gnu/libclang-cpp.so.11+0x20f4eb6)
 #9 0x0000000000405eb3 _M_ptr /usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/unique_ptr.h:173:42
#10 0x0000000000405eb3 get /usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/unique_ptr.h:422:21
#11 0x0000000000405eb3 operator* /usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/unique_ptr.h:408:10
#12 0x0000000000405eb3 getCompilations /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/clang/include/clang/Tooling/CommonOptionsParser.h:103:12
#13 0x0000000000405eb3 main /build/llvm-toolchain-11-eHqKZY/llvm-toolchain-11-11.0.0/clang/tools/clang-check/ClangCheck.cpp:164:32
#14 0x00007f6475c3dd0a __libc_start_main ./csu/../csu/libc-start.c:308:16
#15 0x0000000000405b7a (/usr/lib/llvm-11/bin/clang-check+0x405b7a)

Although clang-check is technically-oriented, just as assertion checks are
no substitute for proper error handling, I don't think basically dumping
core is a sound thing to do, if this is intentional.

-- System Information:
Debian Release: bullseye/sid
  APT prefers testing
  APT policy: (500, 'testing'), (2, 'unstable'), (1, 'testing-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.9.0-5-amd64 (SMP w/2 CPU threads)
Kernel taint flags: TAINT_USER, TAINT_FIRMWARE_WORKAROUND
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages clang-tools-11 depends on:
ii  clang-11        1:11.0.0-5+b1
ii  libc6           2.31-6
ii  libclang-cpp11  1:11.0.0-5+b1
ii  libclang1-11    1:11.0.0-5+b1
ii  libgcc-s1       10.2.1-3
ii  libllvm11       1:11.0.0-5+b1
ii  libstdc++6      10.2.1-3
ii  python3         3.9.0-4

clang-tools-11 recommends no packages.

clang-tools-11 suggests no packages.

-- no debconf information
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: This is a digitally signed message part.
URL: <http://alioth-lists.debian.net/pipermail/pkg-llvm-team/attachments/20201231/4239c3c1/attachment.sig>


More information about the Pkg-llvm-team mailing list