https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96915
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- /* A switch on a constant should have been optimized in tree-cfg-cleanup. */ gcc_checking_assert (!TREE_CONSTANT (m_index_expr)); guess a POLY_INT_CST isn't really a constant so this check needs adjustment (using TREE_CONSTANT is odd anyway). The question is what goes wrong when m_index_expr is constant? I hope nothing.