Occasionally I observe such header guards:
#ifndef FOO
#define FOO 1
...
#endif // FOO
But I learned it this way:
#ifndef FOO
#define FOO
...
#endif // FOO
Is the define to 1
an old relict to some compiler?, does it do any harm nowadays? What is the way to do it now?