Summary
Expose direct recursion, mutual recursion, and larger procedure call cycles.
Detection categories
- direct self-recursion
- two-procedure mutual recursion
- multi-procedure cycles
- cycles crossing module boundaries
- cycles containing event handlers
- cycles containing application-state mutations
- cycles containing error suppression
- cycles containing workbook or file resource acquisition
Requirements
- Reuse existing call-graph cycle detection.
- Keep ordinary recursion informational by default.
- Increase severity when a cycle contains dangerous effects.
- Include the complete cycle path.
- Avoid reporting duplicate rotations of the same cycle.
- Represent unresolved calls as uncertainty.
Acceptance criteria
Summary
Expose direct recursion, mutual recursion, and larger procedure call cycles.
Detection categories
Requirements
Acceptance criteria