https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71569

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-invalid-code
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-06-17
                 CC|                            |jason at gcc dot gnu.org,
                   |                            |msebor at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> ---
Confirmed.  The ICE was introduced in 5.0 via the following commit:

r218104 | jason | 2014-11-26 16:58:38 -0500 (Wed, 26 Nov 2014) | 14 lines

        Allow partial specialization of variable templates.
        * cp-tree.h (TINFO_USED_TEMPLATE_ID): New.
        * decl.c (duplicate_decls): Copy it.
        * error.c (dump_decl) [TEMPLATE_ID_EXPR]: Handle variables.
        * parser.c (cp_parser_decltype_expr): Do call finish_id_expression
        on template-ids.
        * pt.c (register_specialization): Remember variable template insts.
        (instantiate_template_1): Find the matching partial specialization.
        (check_explicit_specialization): Allow variable partial specialization.
        (process_partial_specialization): Likewise.
        (push_template_decl_real): Likewise.
        (more_specialized_partial_spec): Rename from more_specialized_class.
        (most_specialized_partial_spec): Rename from most_specialized_class.
        (get_partial_spec_bindings): Rename from get_class_bindings.

Reply via email to