[llvm-dev] Potential problem with -Wunreachable-code
Ian Collins via llvm-dev
llvm-dev at lists.llvm.org
Thu Nov 21 19:28:54 PST 2019
Hello, hopefully this is the correct place to ask this...
We use distcc with clang++ and I have recently added -Wunreachable-code
to our set of warnings. The problem I am seeing is the compile fails
with (valid) unreachable code warnings on the slave, but passes (no
warning) locally. All machines have the same compiler version
clang version 8.0.1-svn369350-1~exp1~20190820121219.79 (branches/release_80)
Distcc takes the compile line, removes -o <output> and replaces it with
-E and sends the preprocessed result to the slave where it is compiled
without any -I, -isystem or -D options. Generating the preprocessed
output and compiling it locally finds the warnings. I'm concerned that
we are seeing a different result for the output of -E and the standard
compile.
The compiler options are:
-g
-Wall
-Werror
-Wno-strict-aliasing
-Wno-missing-braces
-m64
-Wno-switch
-fno-diagnostics-fixit-info
-fshow-overloads=best
-Wno-unknown-warning-option
-Wno-unknown-pragmas
-Wno-logical-op-parentheses
-Wno-tautological-undefined-compare
-Wno-tautological-unsigned-zero-compare
-Wno-tautological-unsigned-enum-zero-compare
-Wno-expansion-to-defined
-Wno-format-security
-Wnarrowing
-Warray-bounds-pointer-arithmetic
-Wduplicate-method-match
-Wmove
-Wunreachable-code
-Wno-return-std-move
-ftemplate-depth=512
-Wpessimizing-move
-gline-tables-only
-fprofile-instr-generate
-fcoverage-mapping
-Og
-std=c++14
-Wno-reorder
-Wno-literal-suffix
-Wcomma
-fPIC
Thanks,
Ian.
More information about the llvm-dev
mailing list