On Mon, Aug 19, 2024 at 10:51:28PM +0200, Gerald Pfeifer wrote:
> On Wed, 12 Oct 2022, Marek Polacek via Gcc-patches wrote:
> > +<p>
> > +The two overload resolutions approach was complicated and quirky, so users
> > +should transition to the newer model.  This change means that code that
> > +previously didn't compile in C++17 will now compile, for example:</p>
> 
> I looked at this recently and am wondering whether there is a word
> missing: "two overload" -> "two-stage overload"?
> 
> If so, the patch below addresses that
> 
> On the way, I changed "[code] will now compile" to "[code] may now 
> compile", since not every code that failed to compile before will now 
> compile (e.g., syntactically incorrect code).
> 
> What do you think?

LGTM, thanks.
 
> diff --git a/htdocs/gcc-13/porting_to.html b/htdocs/gcc-13/porting_to.html
> index c727d66f..e595e120 100644
> --- a/htdocs/gcc-13/porting_to.html
> +++ b/htdocs/gcc-13/porting_to.html
> @@ -82,9 +82,10 @@ not in C++17).  Then C++23 <a 
> href="https://wg21.link/p2266";>P2266</a>
>  removed the fallback overload resolution, and changed the implicit move
>  rules once again.</p>
>  
> -<p>The two overload resolutions approach was complicated and quirky, so users
> -should transition to the newer model.  This change means that code that
> -previously didn't compile in C++17 will now compile, for example:</p>
> +<p>The two-stage overload resolutions approach was complicated and
> +quirky, so users should transition to the newer model.  This change
> +means that code that previously didn't compile in C++17 may now
> +compile, for example:</p>
>  
>  <pre><code>
>     struct S1 { S1(S1 &&); };
> 

Marek

Reply via email to