Is that LLVM Language Reference Manual's bug?

Dear list, says "A
symbol with internal or private linkage must have default visibility."
I think it should be protected visibility.

The statement in the LangRef is the one that's enforced. I can see why
it looks like "protected" is the closest to reality but I think what's
actually happening is that "internal" and "private" linkage make the
visibility specifiers meaningless, and what you get when you don't
specify one happens to be "default".

Since it'll never be printed anyway, there's not really any reason to
invent something like "internal_default" just to make the
documentation neater.



Thank you very much for your info ~