Files
cobol-java-v3/test-data
NB-076 d8176ea07b fix: generate_data constraint steering fully repaired
Root cause: IF condition and EVALUATE WHEN parsing swallowed entire
line including THEN-body (e.g. '50 MOVE BIG...' instead of just '50').

Fix:
1. Single-line IF cond_text truncated at COBOL statement-starting keywords
   (MOVE/DISPLAY/COMPUTE/ADD/...)
2. Multi-line IF continuation loop also breaks on these keywords (was
   missing DISPLAY, READ, WRITE, CLOSE, OPEN, SEARCH, ...)
3. EVALUATE WHEN raw_val truncated at same keyword set
4. All raw-string escape sequences fixed (Python 3.12 SyntaxWarning)

Verification:
- IF single-line A>50: A=51(true)/12(false) previously A=01/00
- IF multi-line X>50: X=51(true)/12(false) previously not steered
- EVALUATE WHEN 1/2/OTHER: C=1/2/4 previously C=0/0/0
- IF AND compound: (A<=10,B<20), (A>10,B<20), (A>10,B>=20)
- IF >75: A=76(true)/12(false) previously not steered

R11 tests updated: BUG documentation replaced with real assertions.
13 suites / 0 FAIL.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-22 09:10:21 +08:00
..