ERROR translating statement 'DeclStmt'
- Dominant language
- OCaml
- Stars
- 15.7k
- Forks
- 2.1k
- Avg merge
- 19h 36m
- Merged PRs (30d)
- 13
Description
I'm trying to run `infer` on the linux kernel, however, the following error is preventing the progress.
```
ERROR translating statement 'DeclStmt'
```
Manually checking some of the files shows that there is a problem with the `container_of` macro used here for example:
https://github.com/torvalds/linux/blob/50dffbf771802c4db88de2cb942affa0ada43ad0/virt/kvm/kvm_main.c#L537-L540
The definition of `container_of` can be found here:
https://github.com/torvalds/linux/blob/50dffbf771802c4db88de2cb942affa0ada43ad0/scripts/mod/list.h#L18-L23
Please include the following information:
- The version of infer: `Infer version v1.2.0-889c0e7e`
- Operating system and version: Docker `ubuntu:22.04`
- Command: `infer capture --keep-going -- make LLVM=1 -j 10`
Output
```log
make[3]: *** [scripts/Makefile.build:250: arch/x86/kvm/../../../virt/kvm/async_pf.o] Error 1
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:605:11: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:605:11: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:605:11: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:605:11: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:605:11: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:526:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:948:20: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:948:20: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1009:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1292:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1009:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1009:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1292:2: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:986:2: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:986:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1451:9: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:1007:15: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:1054:16: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:1007:15: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:986:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:1451:9: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:1646:10: ERROR translating statement 'DeclStmt'
include/linux/kvm_host.h:1646:10: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5628:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5645:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5628:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5645:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5628:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5664:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5681:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5664:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5681:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5664:2: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5797:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5797:9: ERROR translating statement 'DeclStmt'
virt/kvm/kvm_main.c:5797:9: ERROR translating statement 'DeclStmt'
Error: the following clang command did not run successfully:
/infer/lib/infer/facebook-clang-plugins/clang/install/bin/clang-18
@/work/infer/tmp/clang_command_.tmp.00f74f.txt ++Contents of '/work/infer/tmp/clang_command_.tmp.00f74f.txt':
"-cc1" "-load"
"/infer/lib/infer/infer/bin/../../facebook-clang-plugins/libtooling/build/FacebookClangPlugin.dylib"
"-add-plugin"
"BiniouASTExporter"
"-plugin-arg-BiniouASTExporter"
"-"
"-plugin-arg-BiniouASTExporter"
"PREPEND_CURRENT_DIR=1"
"-plugin-arg-BiniouASTExporter"
"MAX_STRING_SIZE=65535"
"-cc1" "-triple"
"x86_64-unknown-linux-gnu"
"-emit-obj"
"-disable-free"
"-clear-ast-before-backend"
"-disable-llvm-verifier"
"-discard-value-names"
"-main-file-name"
"kvm_main.c"
"-mrelocation-model"
"static"
"-fno-delete-null-pointer-checks"
"-fwarn-stack-size=4096"
"-mframe-pointer=none"
"-relaxed-aliasing"
"-fmath-errno"
"-ffp-contract=on"
"-fno-rounding-math"
"-mconstructor-aliases"
"-mcmodel=kernel"
"-target-cpu" "x86-64"
"-target-feature"
"+retpoline-indirect-calls"
"-target-feature"
"+retpoline-indirect-branches"
"-target-feature"
"-sse"
"-target-feature"
"-mmx"
"-target-feature"
"-sse2"
"-target-feature"
"-3dnow"
"-target-feature"
"-avx"
"-target-feature"
"-x87"
"-target-feature"
"+retpoline-external-thunk"
"-disable-red-zone"
"-tune-cpu" "generic"
"-debugger-tuning=gdb"
"-fdebug-compilation-dir=/src"
"-fcoverage-compilation-dir=/src"
"-nostdsysteminc"
"-nobuiltininc"
"-resource-dir"
"/infer/lib/infer/facebook-clang-plugins/clang/install/lib/clang/18"
"-dependency-file"
"arch/x86/kvm/../../../virt/kvm/.kvm_main.o.d"
"-MT"
"arch/x86/kvm/../../../virt/kvm/kvm_main.o"
"-include"
"./include/linux/compiler-version.h"
"-include"
"./include/linux/kconfig.h"
"-include"
"./include/linux/compiler_types.h"
"-include"
"/infer/lib/infer/infer/bin/../lib/clang_wrappers/global_defines.h"
"-I"
"./arch/x86/include"
"-I"
"./arch/x86/include/generated"
"-I" "./include" "-I"
"./arch/x86/include/uapi"
"-I"
"./arch/x86/include/generated/uapi"
"-I" "./include/uapi"
"-I"
"./include/generated/uapi"
"-D" "__KERNEL__" "-I"
"./arch/x86/kvm" "-D"
"KBUILD_MODFILE=\"arch/x86/kvm/kvm\""
"-D"
"KBUILD_BASENAME=\"kvm_main\""
"-D"
"KBUILD_MODNAME=\"kvm\""
"-D"
"__KBUILD_MODNAME=kmod_kvm"
"-O2" "-Wall" "-Wundef"
"-Werror=strict-prototypes"
"-Wno-trigraphs"
"-Werror=implicit-function-declaration"
"-Werror=implicit-int"
"-Werror=return-type"
"-Wno-format-security"
"-Werror=unknown-warning-option"
"-Werror=ignored-optimization-argument"
"-Wno-sign-compare"
"-Wframe-larger-than=4096"
"-Wno-gnu"
"-Wdeclaration-after-statement"
"-Wvla"
"-Wno-pointer-sign"
"-Werror"
"-Werror=date-time"
"-Wno-initializer-overrides"
"-Wno-sign-compare"
"-Wno-tautological-constant-out-of-range-compare"
"-Wno-ignored-optimization-argument"
"-Wno-everything"
"-std=gnu11"
"-ferror-limit" "19"
"-fwrapv"
"-fwchar-type=short"
"-fno-signed-wchar"
"-fgnuc-version=4.2.1"
"-fskip-odr-check-in-gmf"
"-vectorize-loops"
"-vectorize-slp" "-o"
"arch/x86/kvm/../../../virt/kvm/kvm_main.o"
"-x" "c"
"arch/x86/kvm/../../../virt/kvm/kvm_main.c"
"-O0" "-fno-builtin"
"-include"
"/infer/lib/infer/infer/bin/../lib/clang_wrappers/global_defines.h"
"-Wno-everything"
```
Contributor guide
Assessment
This issue has not been assessed yet.