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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Patrick Palka <ppa...@gcc.gnu.org>:

https://gcc.gnu.org/g:9845b7b45621e3833aee47276cb111e43be0e48b

commit r11-1903-g9845b7b45621e3833aee47276cb111e43be0e48b
Author: Patrick Palka <ppa...@redhat.com>
Date:   Tue Jul 7 16:33:12 2020 -0400

    c++: wrong pretty printing of nested type [PR95303]

    In the testcase below, we pretty print the nested type A<int>::B as
    A<int>::B<int> because we don't check whether B is itself a class
    template before printing the innermost set of template arguments from
    B's TEMPLATE_INFO (which in this case belong to A).  This patch fixes
    this by checking PRIMARY_TEMPLATE_P beforehand.

    gcc/cp/ChangeLog:

            PR c++/95303
            * cxx-pretty-print.c (pp_cxx_unqualified_id): Check
            PRIMARY_TEMPLATE_P before printing the innermost template
            arguments.

    gcc/testsuite/ChangeLog:

            PR c++/95303
            * g++.dg/concepts/diagnostic14.C: New test.

Reply via email to