I'm able to keep in mind that throughout the discussion about general characteristics which finally result in the new contextual key phrases override and final it had been recommended that compiler support of these ore some might be optional (I suppose it might read within the standard text as "behavior is implementation-specific). But I am unable to find any trace relating to this optionality within the FDIS and also the corrections later on.

Consider not finding it's not proof, I must request: May be the support as referred to by 50 percent.11p2, 9.2 and 10.3 from the FDIS for override and final obligatory for any conforming compiler?

Could it be for instance needed that the conforming compiler rejects

class Foo 

Or perhaps is still it conforming by disregarding override?

Yes, it's needed that override isn't overlooked with a conforming implementation. First, override are only able to come in the promise of an online member function.


[...] A virt-specifier-seq shall appear only within the promise of an online member function.

Second, an online function which does not override an associate purpose of basics class but is marked override helps make the program ill-created.


If your virtual function is marked using the virt-specifier override and doesn't override an associate purpose of basics class, this program is ill-created.

As both of them are diagnosable rules from the standard it's illegal for any conforming compiler to disregard violations. (1.4/1)

Exactly the same reasoning is applicable to final and also the relevant needs have been in 9 [class]/3 and 10.3 [class.virtual]/4.

The use of override and final is optional for that programmer, but nowhere will it state that the compiler can ignore them.

This may have been different for that earlier plans which used characteristics rather than key phrases. Characteristics leave much more freedom towards the compiler.