On Thu, Mar 13, 2014 at 10:46 AM, Nelson, Clark <clark.nelson@intel.com> wrote:
> From: Jens Maurer
> Sent: Saturday, February 22, 2014 8:09 AM
> To: features@open-std.org
> Subject: Re: [SG10] New draft of SD-6

> N3760 [[deprecated]]
> It's hard to see the need for a #define here, given that unknown
> attributes are ignores.  Otherwise fine with me.

That may seem a reasonable expectation, but the standard doesn't seem to say
it anywhere. (In contrast to pragmas.)

I agree that it would be nice to specify this explicitly, but I think the current rule and the "unknown attributes are ignored" rule are formally equivalent -- an implementation that ignores all unknown attributes is equivalent to one that claims to know all attributes, but for which most attributes have no effect. It seems to me that the primary effect of such a change would be a non-normative encouragement for implementations to ignore most attributes, which in practice they already do, albeit usually with a warning.