https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79315
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> --- The bogus location is on &__builtin_powf in _224 = __builtin_powf (_38, 1.809999942779541015625e+0); in wsm32d. It gets the location via #1 0x0000000000ff33a5 in move_stmt_op (tp=0x7ffff66b3a90, walk_subtrees=0x7fffffffd338, data=0x7fffffffd550) at /space/rguenther/src/svn/gcc-7-branch/gcc/tree-cfg.c:6642 6642 TREE_SET_BLOCK (t, p->new_block); ... #5 0x0000000000ff3ed7 in move_block_to_fn (dest_cfun=0x7ffff6a88160, bb=<basic_block 0x7ffff66f2618 (32)>, after=<basic_block 0x7ffff68ab4e0 (8)>, update_edge_count_p=true, d=0x7fffffffd6e0) at /space/rguenther/src/svn/gcc-7-branch/gcc/tree-cfg.c:6922 #6 0x0000000000ff5783 in move_sese_region_to_fn (dest_cfun=0x7ffff6a88160, (gdb) l 6637 { 6638 tree block = TREE_BLOCK (t); 6639 if (block == p->orig_block 6640 || (p->orig_block == NULL_TREE 6641 && block != NULL_TREE)) 6642 TREE_SET_BLOCK (t, p->new_block); 6643 else if (flag_checking && block != NULL_TREE) 6644 { 6645 while (block && TREE_CODE (block) == BLOCK && block != p->orig_block) 6646 block = BLOCK_SUPERCONTEXT (block); (gdb) p p->orig_bock There is no member named orig_bock. (gdb) p p->orig_block $18 = <tree 0x0> (gdb) p block $19 = <tree 0x0> (gdb) p p->new_block $20 = <block 0x7ffff6a94840> probably not a good idea to simply set TREE_BLOCK on a tree node that can be shared... (from a NULL TREE_BLOCK even).