docs(readme): scope ns-only bare-visibility claim to values/functions [stdlib B attempt-7]

Phase B tightened bare VALUE/FUNCTION visibility through a namespaced-only
import (isNameVisible/isCImportVisible -> 'not visible'). Bare TYPE names
from such an import still resolve today; type-name visibility tightens in a
later resolver phase. Correct the README so it no longer claims all bare
names from a namespaced import error.
This commit is contained in:
agra
2026-06-07 09:51:57 +03:00
parent 0369cb001f
commit aa2b79683b

View File

@@ -399,10 +399,13 @@ function in the caller's module (or in its single flat import that provides it).
A bare call to a name that two or more flat imports both provide is ambiguous and
is rejected; qualify it with a namespaced import (`m :: #import …; m.fn()`).
A **namespaced** import only binds its alias: the module's names are reachable
solely as `m.name`. A bare reference to one of those names errors with `'name'
is not visible; #import the module that declares it` — bare-name visibility joins
over flat (`#import "…"`) imports only, never over a namespaced alias.
A **namespaced** import only binds its alias: reach the module's members as
`m.name`. A bare reference to a **value or function** from a namespaced-only
import errors with `'name' is not visible; #import the module that declares it` —
bare-name visibility for values and functions joins over flat (`#import "…"`)
imports only, never over a namespaced alias. (Bare **type** names from a
namespaced-only import still resolve today; tightening type-name visibility is a
later resolver phase.)
### Implicit Context