Доброго времени суток

Возник вопрос с... покажу в коде
//в плюсах main.cpp
#include <cstdio>
int main()
{
fprintf(stdout, "hi\n");
return 0;
}
не должен компилироваться, так как я не указал using namespace std;
но он компилируется (g++)
припоминается, что раньше такие вещи не проходили, так что же случилось, как так?