You copied the Doc URL to your clipboard.

--anachronisms, --no_anachronisms

Enables and disables anachronisms in C++.


This option is effective only if the source language is C++.


The default is --no_anachronisms.


typedef enum { red, white, blue } tricolor;
inline tricolor operator++(tricolor c, int)
    int i = static_cast<int>(c) + 1;
    return static_cast<tricolor>(i);
void foo(void)
    tricolor c = red;
    c++; // okay
    ++c; // anachronism

Compiling this code with the option --anachronisms generates a warning message.

Compiling this code without the option --anachronisms generates an error message.