https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85567
Bug ID: 85567 Summary: internal compiler error: in gimplify_modify_expr, at gimplify.c:5797 when using sincos() Product: gcc Version: 8.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: generic.du...@t-online.de Target Milestone: --- Created attachment 44036 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44036&action=edit preprocessed file Compiler fails with an internal compiler error in gimplify_modify_expr when using the builtin sincos() function. Error is reproducible with gcc 8.0.1, 7.3.0 and 7.2.0 with -O2 optimization, but is not triggered with reduced optimization (-O1) or applying std flags, e.g. -std=c18. Example is stripped down to the bare minimum still triggering the compiler error. # command line gcc -c -O2 bug.c # compiler output with gcc version 8.0.1 20180414 (experimental) [trunk revision 259383] (Debian 8-20180414-1) during GIMPLE pass: einline bug.c: In function ‘apply_sincos’: bug.c:11:2: internal compiler error: in gimplify_modify_expr, at gimplify.c:5797 f(x, sinx, cosx); ^~~~~~~~~~~~~~~~ 0x5858ef gimplify_modify_expr ../../src/gcc/gimplify.c:5796 0x81fc29 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../src/gcc/gimplify.c:11434 0x8223f6 gimplify_stmt(tree_node**, gimple**) ../../src/gcc/gimplify.c:6658 0x824128 gimplify_and_add(tree_node*, gimple**) ../../src/gcc/gimplify.c:441 0x824128 internal_get_tmp_var ../../src/gcc/gimplify.c:597 0x82153c get_initialized_tmp_var(tree_node*, gimple**, gimple**, bool) ../../src/gcc/gimplify.c:628 0x82153c gimplify_save_expr ../../src/gcc/gimplify.c:5931 0x82153c gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../src/gcc/gimplify.c:11734 0x81f515 gimplify_compound_lval ../../src/gcc/gimplify.c:2965 0x81f515 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../src/gcc/gimplify.c:11386 0x829853 gimplify_modify_expr ../../src/gcc/gimplify.c:5625 0x81fc29 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../src/gcc/gimplify.c:11434 0x8223f6 gimplify_stmt(tree_node**, gimple**) ../../src/gcc/gimplify.c:6658 0x822afb gimplify_compound_expr ../../src/gcc/gimplify.c:5885 0x81fc57 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../src/gcc/gimplify.c:11424 0x8223f6 gimplify_stmt(tree_node**, gimple**) ../../src/gcc/gimplify.c:6658 0x822442 gimplify_and_add(tree_node*, gimple**) ../../src/gcc/gimplify.c:441 0x7f6f3c gimplify_and_update_call_from_tree(gimple_stmt_iterator*, tree_node*) ../../src/gcc/gimple-fold.c:551 0x7ff4b6 gimple_fold_builtin ../../src/gcc/gimple-fold.c:3784 0x801f74 gimple_fold_call ../../src/gcc/gimple-fold.c:4150 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <file:///usr/share/doc/gcc-8/README.Bugs> for instructions. # compiler output with gcc version 7.3.0 (Debian 7.3.0-16) bug.c: In function ‘apply_sincos’: bug.c:11:2: internal compiler error: in gimplify_modify_expr, at gimplify.c:5645 f(x, sinx, cosx); ^~~~~~~~~~~~~~~~ Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions. # gcc-8 -v Using built-in specs. COLLECT_GCC=gcc-8 COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 8-20180414-1' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --with-as=/usr/bin/x86_64-linux-gnu-as --with-ld=/usr/bin/x86_64-linux-gnu-ld --program-suffix=-8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 8.0.1 20180414 (experimental) [trunk revision 259383] (Debian 8-20180414-1) # gcc-7 -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 7.3.0-16' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --with-as=/usr/bin/x86_64-linux-gnu-as --with-ld=/usr/bin/x86_64-linux-gnu-ld --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 7.3.0 (Debian 7.3.0-16)