Serial.print ("Clock period is " STRINGIFY(CLOCK_NS) "ns\n");
...which should print: "Clock period is 40 ns\n"
but actually prints: "Clock period is (1000/25 ns\n")
This sort of thing can't be done in the preprocessor and it's too expensive to do at runtime. The only workaround seems to be to actually manually: #define CLOCK_NS_STR "40"
which is a bug just waiting to happen.