KhronosGroup / KhronosGroup/glslang
Both "preVisit" and "inVisit" are set to true in TLiveTraverser
- Dominant language
- C++
- Stars
- 3.6k
- Forks
- 989
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 31
Description
Hi,
Class `TVarGatherTraverser` is a subclass of `TLiveTraverser`, thus it is also a sub-subclass of `TIntermTraverser`.
Why both its "preVisit" and "inVisit" member are both set to true? See pic below:
and

According to my understanding, only one of "preVisit", "inVisit", "postVisit" is set to true.
This is a bug? Thanks!
George
Contributor guide
Research direction
Start by reading the TLiveTraverser, TVarGatherTraverser, and TIntermTraverser definitions referenced in the report, then trace where preVisit and inVisit are assigned during traversal. Compare the observed state with the traversal contract and existing tests or callers. Done means confirming whether the flags violate the intended invariant and documenting or correcting the behavior with coverage if applicable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100