https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80018
Bug ID: 80018 Summary: ICE in expand_expr_addr_expr_1, at expr.c:7790 w/ -fsanitize=object-size Product: gcc Version: 7.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: sanitizer Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org, jakub at gcc dot gnu.org, kcc at gcc dot gnu.org, mpolacek at gcc dot gnu.org Target Milestone: --- Starting from GCC 4.9.0 (when object-size was added), we ICE: $ cat ice.c void a () { volatile register int b __asm__("rdx") = b; } $ gcc ice.c -c -fsanitize=object-size ice.c: In function ‘a’: ice.c:2:1: internal compiler error: in expand_expr_addr_expr_1, at expr.c:7790 a () ^ 0xad61af expand_expr_addr_expr_1 ../../gcc/expr.c:7790 0xad6a07 expand_expr_addr_expr ../../gcc/expr.c:7903 0xae404a expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) ../../gcc/expr.c:11035 0xad6e7e expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) ../../gcc/expr.c:8072 0xabde15 expand_expr ../../gcc/expr.h:276 0xad7cc5 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode, expand_modifier) ../../gcc/expr.c:8301 0x975b39 expand_gimple_stmt_1 ../../gcc/cfgexpand.c:3676 0x975d96 expand_gimple_stmt ../../gcc/cfgexpand.c:3737 0x97d5f6 expand_gimple_basic_block ../../gcc/cfgexpand.c:5744 0x97f0a6 execute ../../gcc/cfgexpand.c:6357