Ricently i was writing the code, and make a mistake like that:
int f ()
{
. . .
}
int g;
int main()
{
. . .
if (f) {
// this is actually true
}
}
Later, i've check and constructions like:
f;
g;
Does not give even any compiller errors. It is seems kind of logical, But what is the purpose of this? How it can be used? To check if some identifier is present? To force compiler not to optimize function or variable?
UPD: Just checked and behavior is the same using VS and minGW.