Re: [PATCH] c++, contracts: Only defer contracts that use an undeduced result binding [PR125537]

Jason Merrill <[email protected]>
Newsgroups gmane.comp.gcc.patches
Message-ID <[email protected]>
On 8/14/26 4:33 PM, Wang Jinghao wrote:
> For precondition and postcondition without a result binding, whether
> the return type is auto is irrelevant to the condition expression, so
> type conversions should be completed immediately.
> 
> 	PR c++/125537
> 
> gcc/cp/ChangeLog:
> 
> 	* pt.cc (tsubst_contract): Keep template processing enabled
> 	only for postconditions with an undeduced result binding.

Hmm, I notice this is still a different condition from 
cp_parser_late_contract_condition and rebuild_postconditions, which only 
check whether there's a result binding, not whether it's auto.  They 
ought to agree on the condition for treating the postcondition as a 
pseudo-template.
> gcc/testsuite/ChangeLog:
> 
> 	* g++.dg/contracts/cpp26/pr125537.C: New test.

Please name tests by what they are testing, not just by PR number.  So 
this could be template-post1.C.

Jason
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.