Move examples/*.sx and their expected/ snapshots into per-category subfolders (examples/<category>/...). Folder = leading filename token, with ffi-objc/ffi-jni kept whole; filenames are unchanged. The corpus runner and LSP sweep now discover each category's expected/ dir, while issues/ stays flat. Example 1058's repo-root-relative companion import is made file-relative. Path strings embedded in 164 snapshots were regenerated (path-only changes). Test-layout docs in CLAUDE.md updated.
17 lines
941 B
Plaintext
17 lines
941 B
Plaintext
// Bare TYPE-ALIAS visibility under a NAMESPACED-only import — the alias sibling
|
|
// of 0743 (bare named type) and 0742 (bare const). A type ALIAS is a `const_decl`
|
|
// whose value resolved to a type, so it never registers a `findByName` named-type
|
|
// entry; the source-aware leaf must still treat it as a TYPE author (R4). `dep.sx`
|
|
// is imported only as `dep :: #import`, so its top-level `Secret :: i32` alias is
|
|
// reachable ONLY as `dep.Secret`. A BARE `Secret` in a type position must NOT
|
|
// resolve: bare-TYPE visibility joins over the FLAT import edges, and a namespaced
|
|
// alias is not a flat edge. Before the fix the ns-only alias was NOT a recognised
|
|
// type author, so the bare reference fell to the legacy empty-struct stub with NO
|
|
// diagnostic (the value silently came out 0). Regression (issue R4).
|
|
dep :: #import "0747-modules-namespaced-only-bare-alias-not-visible/dep.sx";
|
|
|
|
main :: () -> i32 {
|
|
x : Secret = 7;
|
|
x
|
|
}
|