OK.
On Thu, Oct 11, 2018 at 1:59 PM Jakub Jelinek <ja...@redhat.com> wrote:
>
> On Mon, Sep 24, 2018 at 12:48:56PM +0200, Paolo Carlini wrote:
> > as explained in the audit trail, the gcc_assert added by Nathan triggers
> > during error-recovery too, when add_method correctly returns false because
> > it failed to add the method. Thus it seems that we should simply loosen a
> > bit the assertion. Tested x86_64-linux.
>
> Testcase fails with check-c++-all:
> FAIL: g++.dg/cpp0x/pr85070.C  -std=c++17 (test for excess errors)
> FAIL: g++.dg/cpp0x/pr85070.C  -std=c++2a (test for excess errors)
> FAIL: g++.dg/cpp0x/pr85070.C  -std=c++17 -fconcepts (test for excess errors)
>
> Any reason why you've used c++14_only effective target, rather than c++14?
> If I use the latter, i.e. expect c++17/2a/17 + concepts to behave like c++14
> in this case, there are no failures.
>
> Tested with make check-c++-all RUNTESTFLAGS=dg.exp=pr85070.C, ok for trunk?
>
> 2018-10-11  Jakub Jelinek  <ja...@redhat.com>
>
>         PR c++/85070
>         * g++.dg/cpp0x/pr85070.C: Change effective target for diagnostics from
>         c++14_only to c++14.
>
> --- gcc/testsuite/g++.dg/cpp0x/pr85070.C.jj     2018-09-25 15:14:43.205270858 
> +0200
> +++ gcc/testsuite/g++.dg/cpp0x/pr85070.C        2018-10-11 19:55:17.795180058 
> +0200
> @@ -4,10 +4,10 @@ struct A;
>
>  struct B
>  {
> -  constexpr A & operator= (const A &);  // { dg-warning "used" "" { target 
> c++14_only } }
> +  constexpr A & operator= (const A &);  // { dg-warning "used" "" { target 
> c++14 } }
>  };
>
> -struct A : B  // { dg-error "cannot be overloaded" "" { target c++14_only } }
> +struct A : B  // { dg-error "cannot be overloaded" "" { target c++14 } }
>  {
>    using B::operator=;
>  } a { a = a };
>
>
>         Jakub

Reply via email to