Variable scope is typically confined to its context. Different files can have variables with the same name because they operate in different scopes (file scope, local scope, namespaces). The names only conflict if they're in the same scope or improperly shared across compilation units.