C++ Logo

liaison

Advanced search

Re: [wg14/wg21 liaison] [isocpp-ext] Implementer concerns with Defect Report issue 2538 (Can standard attributes be syntactically ignored?) in P2710R0

From: Hubert Tong <hubert.reinterpretcast_at_[hidden]>
Date: Sat, 12 Nov 2022 15:20:42 -0500
On Sat, Nov 12, 2022 at 11:37 AM Aaron Ballman via Ext <ext_at_[hidden]>
wrote:

> Further, we are not convinced the effects of this paper are in the
> best interests of users. The result of voting in favor of this
> proposal is for this code to be diagnosed in C++11 mode:
>
> [[deprecated("this has a reason")]] int foo;
> [[nodiscard("this also has a reason")]] int func();
>
> because this proposes, as a DR, to require an implementation to
> diagnose the syntactic violation of providing an attribute argument
> list when the grammar does not allow one for these attributes in that
> language mode.
>

[re-post for ext reflector and liaison mailing list; apologies to those
getting duplicates]

Implementations are free to (and probably should) make such a case issue a
diagnostic only when strict conformance is requested.

Users requesting strict conformance arguably are well-served by being told
that they are using a feature from a newer standard. It might motivate them
to actually move to the newer standard.

Received on 2022-11-12 20:21:12