8.5 --anachronisms, --no_anachronisms

Enables and disables anachronisms in C++.

Mode

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

Default

The default is --no_anachronisms.

Example

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.

Non-ConfidentialPDF file icon PDF versionARM DUI0472M
Copyright © 2010-2016 ARM Limited or its affiliates. All rights reserved.