外部静态声明 - K&R2

External static declaration - K&R2

我正在阅读 "The C Programming Language," 第二版,作者 K&R,第 83 页,第 4.6 节 "Static Variables" K&R 状态:

The static declaration, applied to an external variable or function, limits the scope of that object to the rest of the source file being compiled.

K&R 是否真的在这里犯了一个错误,为外部静态声明提供了错误的语义?将静态应用于外部变量或函数不会改变作用域。在我看来,上面的句子和第80页第4.4节的句子完全一样 "Scope Rules":

The scope of an external variable or a function lasts from the point at which it is declared to the end of the file being compiled.

在第 227 页,K&R 描述了两种作用域:词法作用域和与外部链接关联的作用域。因此,他们将“范围”用作比当前 C 标准更通用的术语。它们的词法作用域是当前 C 标准所说的“作用域”,而它们更广泛的作用域是当前 C 标准所说的链接。