Hi Arrigo,

Am 12. August 2026 09:04:38 MESZ schrieb Arrigo Marchiori <[email protected]>:
>Dear Peter, All,
>
>On Tue, Aug 11, 2026 at 07:58:27AM +0200, [email protected] wrote:
>
>> Hi Jim, all,
>> 
>> 
>> I switched a bit the target, and try to do a minimal change raise to Win 10
>> with modern compilers.
>> As cheap as possible.
>> 
>> I found following issue:
>> 
>> *An override may not make a weaker promise about throwing than the thing it
>> overrides* — because a caller holding a base pointer was told "this never
>> throws" and may rely on it.
>
>IMHO we should just get rid of all "throw" specifiers on methods and
>functions.
Good find. I will check and remove if possible.
>
>According to [1] and [2] they are a bad idea on all C++ versions
>supporting them, and they disseminate our code of hidden
>std::unexpected() and std::terminate() calls.
>
>They were deprecated in C++11 and removed in C++17.
>
>References:
> 1: http://www.gotw.ca/publications/mill22.htm
> 2: https://devblogs.microsoft.com/oldnewthing/20180928-00/?p=99855
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to