I can remember that during the discussion about general attributes which finally lead to the new contextual keywords `override` and `final` it was suggested that compiler support for these ore some **may be optional** (I guess it would read in the standard text as "behavior is implementation-specific). But I can not find any trace about this optionality in the FDIS and the corrections afterwards.

But since not finding it is not proof, I have to ask: **Is the support** as described in 2.11p2, 9.2 and 10.3 of the FDIS **for `override` and `final` obligatory for a conforming compiler?**

Is it for example required that a *conforming compiler* rejects

```
class Foo {
    void func() override; // Error: not virtual, 9.2p9
};

```

Or is it still conforming by ignoring *override*?