Date: Tue, 25 Mar 2025 11:44:31 +0100
The paper is mostly design-complete and EWG-approved; with just a small question open from CWG.
If you have suggestions that depart from the status quo of the paper,
I suggest you contact the paper author(s) at your earliest convenience
and try to convince them of your ideas.
Otherwise, it's unlikely a post to -proposals will have an effect
at this stage.
Thanks,
Jens
On 25/03/2025 10.25, Frederick Virchanza Gotham via Std-Proposals wrote:
> In Barry's paper, he gives the following example:
>
> struct A { int a; };
>
> struct B : A { int b; };
>
> // provide a way to name the base class
> auto b1 = B{.A={.a=1}, .b=2};
>
> I think "." should be used for members, and that "::" should be used
> for base classes, as follows:
>
> auto b1 = B{ A::={.a=1}, .b=2 };
>
> I am proposing this change for two reasons:
> 1) It is easier to see at a glance what is a base class and what is a member
> 2) It accommodates weird situations such as:
>
> struct Base { int a };
> struct Derived : Base { vector<int> Base; };
>
> In this situation we don't know if 'Base' is a member or a base class,
> and so the use of "." Vs "::" will clarify things.
If you have suggestions that depart from the status quo of the paper,
I suggest you contact the paper author(s) at your earliest convenience
and try to convince them of your ideas.
Otherwise, it's unlikely a post to -proposals will have an effect
at this stage.
Thanks,
Jens
On 25/03/2025 10.25, Frederick Virchanza Gotham via Std-Proposals wrote:
> In Barry's paper, he gives the following example:
>
> struct A { int a; };
>
> struct B : A { int b; };
>
> // provide a way to name the base class
> auto b1 = B{.A={.a=1}, .b=2};
>
> I think "." should be used for members, and that "::" should be used
> for base classes, as follows:
>
> auto b1 = B{ A::={.a=1}, .b=2 };
>
> I am proposing this change for two reasons:
> 1) It is easier to see at a glance what is a base class and what is a member
> 2) It accommodates weird situations such as:
>
> struct Base { int a };
> struct Derived : Base { vector<int> Base; };
>
> In this situation we don't know if 'Base' is a member or a base class,
> and so the use of "." Vs "::" will clarify things.
Received on 2025-03-25 10:44:35