https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83778
--- Comment #2 from David Malcolm <dmalcolm at gcc dot gnu.org> --- Presumably we should simply strip the location from arg, though there are some places with: /* Call get_element_number to validate arg1 if it is a constant. */ if (TREE_CODE (arg1) == INTEGER_CST) (void) get_element_number (TREE_TYPE (arg0), arg1); which suggests any such stripping needs to happen there.