C++ Logo

STD-PROPOSALS

Advanced search

Subject: Re: [std-proposals] This deduction and access control
From: Gašper Ažman (gasper.azman_at_[hidden])
Date: 2020-07-19 01:02:22


You are correct, it does not. You will have to mark the method as a friend
in derived.

On Sun, Jul 19, 2020, 05:33 Magnus Fromreide <magfr_at_[hidden]> wrote:

> Hello!
>
> I read P0847R4 and got curious about an edge case.
>
> Consider
>
> struct Base
> {
> int i = 0;
>
> template <class Self>
> auto& f(this Self&& self)
> {
> return forward<Self>(self).i;
> }
> };
>
> struct Derived: private Base
> {
> using Base::f;
> };
>
> Now, as I am reading the proposal the call
>
> Derived().f()
>
> should be ill-formed as it tries to access Derived.i but that is private in
> this context, or does the proposal change the access rules somehow?
>
> /MF
>



STD-PROPOSALS list run by herb.sutter at gmail.com

Standard Proposals Archives on Google Groups