Skip to content

phase2/02: TokenStream LexIdContext for typedef_name vs id - #93

Merged
rieske merged 2 commits into
masterfrom
phase2/02-lex-id-context
Jul 31, 2026
Merged

phase2/02: TokenStream LexIdContext for typedef_name vs id#93
rieske merged 2 commits into
masterfrom
phase2/02-lex-id-context

Conversation

@rieske

@rieske rieske commented Jul 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add two-state LexIdContext with closed roleAfter membership tables (AsType / AsIdentifier / keep).
  • Single reclassify choke point; live getCurrentToken reclassifies against the current registry.
  • Brace-scoped identifier shadows on TypedefRegistry; FA remains membership-only.

Stack

Phase 2 PR 2 of 6 (base: phase2/01-lexical-session).

Depends on #92.

Test plan

  • TokenStream policy tests (expression/type position, shadows, tag/member/star, const keep, after-int, colon non-restart, comma AsType)
  • Full ctest green on stack tip

Reclassify identifiers using a previous-token role machine and brace-scoped
shadows on TypedefRegistry so typedef spellings can be object/member/tag names.
@mergify

mergify Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

Base automatically changed from phase2/01-lexical-session to master July 30, 2026 08:31
@rieske
rieske merged commit 67c1abd into master Jul 31, 2026
4 checks passed
@rieske
rieske deleted the phase2/02-lex-id-context branch July 31, 2026 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant