It appears that in C++ extern
(NOT followed by a language-linkage string literal) makes no difference on function declarations at namespace scope (Difference between declaration of function with extern and without it). But does it have any effect whatsoever on block scope function declarations? Or is a local function declaration without extern
always equivalent to one with extern
?
namespace {
void f() {
extern void g(); // has external linkage
g();
}
void f2() {
void g(); // always the same, as if, without extern
g();
}
}
Thanks!