https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89270
Bug ID: 89270 Summary: [9 regression] AVR ICE: verify_gimple failed Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gandalf at winds dot org Target Milestone: --- I get an ICE on the following code with GCC 9.0.1 20190209 (experimental) compiled for AVR. Works in GCC 8.x. void test() { extern const unsigned char __memx __data_load_end; __uint24 top=(__uint24)&__data_load_end; } # avr-gcc -v -save-temps -mmcu=atmega1284p -c test2.c -o test.o Using built-in specs. Reading specs from /usr/local/avr/lib/gcc/avr/9.0.1/device-specs/specs-atmega1284p COLLECT_GCC=avr-gcc Target: avr Configured with: ../configure --target=avr --prefix=/usr/local/avr --disable-nls --enable-languages=c --disable-bootstrap --disable-libssp Thread model: single gcc version 9.0.1 20190209 (experimental) (GCC) COLLECT_GCC_OPTIONS='-v' '-save-temps' '-c' '-o' 'test.o' '-specs=device-specs/specs-atmega1284p' '-mmcu=avr51' /usr/local/avr/libexec/gcc/avr/9.0.1/cc1 -E -quiet -v -imultilib avr51 -D__AVR_ATmega1284P__ -D__AVR_DEVICE_NAME__=atmega1284p test2.c -mn-flash=2 -mno-skip-bug -mmcu=avr51 -fpch-preprocess -o test2.i ignoring nonexistent directory "/usr/local/avr/lib/gcc/avr/9.0.1/../../../../avr/sys-include" #include "..." search starts here: #include <...> search starts here: /usr/local/avr/lib/gcc/avr/9.0.1/include /usr/local/avr/lib/gcc/avr/9.0.1/include-fixed /usr/local/avr/lib/gcc/avr/9.0.1/../../../../avr/include End of search list. COLLECT_GCC_OPTIONS='-v' '-save-temps' '-c' '-o' 'test.o' '-specs=device-specs/specs-atmega1284p' '-mmcu=avr51' /usr/local/avr/libexec/gcc/avr/9.0.1/cc1 -fpreprocessed test2.i -mn-flash=2 -mno-skip-bug -quiet -dumpbase test2.c -mmcu=avr51 -auxbase-strip test.o -version -o test2.s GNU C17 (GCC) version 9.0.1 20190209 (experimental) (avr) compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version none GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 GNU C17 (GCC) version 9.0.1 20190209 (experimental) (avr) compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version none GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 7a3227a0716f5444cb50a3b2fc4e4212 test2.c: In function 'test': test2.c:1:6: error: invalid types in nop conversion 1 | void test() | ^~~~ long int const <address-space-7> unsigned char * _1 = (long int) &__data_load_end; test2.c:1:6: internal compiler error: verify_gimple failed 0xc5df1d verify_gimple_in_seq(gimple*) ../../gcc/tree-cfg.c:5094 0x9f42f5 gimplify_body(tree_node*, bool) ../../gcc/gimplify.c:13701 0x9f44e4 gimplify_function_tree(tree_node*) ../../gcc/gimplify.c:13791 0x86ac77 cgraph_node::analyze() ../../gcc/cgraphunit.c:667 0x86d803 analyze_functions ../../gcc/cgraphunit.c:1126 0x86e4e2 symbol_table::finalize_compilation_unit() ../../gcc/cgraphunit.c:2834