From aa2b79683b060898d0273f1c08e3c53dc4235e14 Mon Sep 17 00:00:00 2001 From: agra Date: Sun, 7 Jun 2026 09:51:57 +0300 Subject: [PATCH] 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. --- readme.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/readme.md b/readme.md index e491899..7054b44 100644 --- a/readme.md +++ b/readme.md @@ -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