https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102831

--- Comment #8 from Peter Bergner <bergner at gcc dot gnu.org> ---
(In reply to Martin Sebor from comment #7)
> (In reply to Peter Bergner from comment #6)
> 
> If it's reliably reproducible (ideally with a cross), can you attach a
> translation unit and the options to use to reproduce it with?

It's somewhat repeatable. :-(  If I cd into $BUILD_DIR/gcc and execute the
command from my build log that ICEs, that will 100% always ICE.  However, if I
add -save-temps it will not ICE and adding -E and compiling the resulting .ii
file will not ICE either.  In addition, if I cd to my home dir and execute the
failing command line, with only changing the -I. options to -I/$BUILD_DIR/gcc,
then it also does not ICE.  It seems only executing the command in the correct
build directory seems to work.  I have been able to recreate the issue on the
gcc compile farm machine gcc135.  You can recreate the ICE with the following
command.  I believe you should be able to access that directory.

[bergner@gcc135 gcc]$ pwd
/home/bergner/gcc/build/gcc-fsf-mainline-pr103127-base-regtest-2/gcc

[bergner@gcc135 gcc]$
/home/bergner/gcc/build/gcc-fsf-mainline-pr103127-base-regtest-2/./prev-gcc/xg++
-B/home/bergner/gcc/build/gcc-fsf-mainline-pr103127-base-regtest-2/./prev-gcc/
-nostdinc++
-I/home/bergner/gcc/build/gcc-fsf-mainline-pr103127-base-regtest-2/prev-powerpc64le-linux/libstdc++-v3/include/powerpc64le-linux

-I/home/bergner/gcc/build/gcc-fsf-mainline-pr103127-base-regtest-2/prev-powerpc64le-linux/libstdc++-v3/include
 -I/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/libstdc++-v3/libsupc++
-fno-PIE -S -g -O2 -fno-checking -gtoggle -DIN_GCC     -fno-exceptions
-fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute
-Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros
-Wno-overlength-strings -Werror -fno-common  -DHAVE_CONFIG_H -I./
-I/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/.
-I/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/../include
-I/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/../libcpp/include 
/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/lra-lives.c

In file included from
/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/lra-lives.c:43:
/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/lra-lives.c: In function
‘bool process_bb_lives(basic_block, int&, bool)’:
/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/sparseset.h:215:20: error:
suggest parentheses around assignment used as truth value [-Werror=parentheses]
  215 |        && (((ITER) = sparseset_iter_elm (SPARSESET)) || 1);            
\
      |            ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/bergner/gcc/gcc-fsf-mainline-pr103127-base/gcc/lra-lives.c:1033:7: note:
in expansion of macro ‘EXECUTE_IF_SET_IN_SPARSESET’
 1033 |       EXECUTE_IF_SET_IN_SPARSESET (unused_set, j)
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~

Reply via email to