Use of static in the context of that C snippet is deprecated in C++. One is supposed to use an unnamed namespace instead.
namespace {
int myfunc() {
return 5;
}
int x;
int y = 4;
int z = myfunc();
};
int main()
{}
In my opinion, his point is still valid.