Files
2026-07-16 11:57:36 +07:00

64 lines
2.8 KiB
Python

#!/usr/bin/env python3
"""Fix extra closing brace before cmd_result == 9 dispatch."""
path = '/mnt/d/resonance-engine-active/cuda/khra_gixx_1024_v5_observer.cu'
with open(path, 'r', encoding='utf-8') as f:
lines = f.readlines()
# Find the problem: line with " }" followed by blank then " } else if (cmd_result == 9) {"
# We need to remove the extra " }" line that closes the if-else chain prematurely
# and de-indent the next line to continue the chain
for i, line in enumerate(lines):
# Find: health_check_pending = 1; } [extra }] } else if (cmd_result == 9)
if 'health_check_pending = 1;' in line:
# Next line should be " }" (closing the cmd_result==8 block)
# Then empty line ""
# Then " } else if (cmd_result == 9) {" <-- this extra } is wrong
# Fix: remove the empty line and the extra }, then change next line to " } else if (cmd_result == 9) {"
for j in range(i+1, min(i+5, len(lines))):
if ' } else if (cmd_result == 9) {' in lines[j]:
# This is the line with the extra brace
# Change it to be a proper else-if continuation
lines[j] = ' } else if (cmd_result == 9) {\n'
print(f"Fixed line {j+1}: removed extra brace, de-indented")
break
break
# Also need to remove any stray empty line + brace between cmd_result 8 and the ack section
# Let me find and clean up the structure
for i, line in enumerate(lines):
if ' } else if (cmd_result == 9) {' in line:
# Make sure there's no " }" line before this (except the one closing cmd_result 8)
for j in range(i-1, max(i-5, 0), -1):
stripped = lines[j].strip()
if stripped == '}':
if 'cmd_result' not in lines[j]:
# This is a stray closing brace — remove it
lines[j] = ''
print(f"Removed stray brace at line {j+1}")
elif stripped == '':
continue
else:
break
break
with open(path, 'w', encoding='utf-8') as f:
f.writelines(lines)
print("Fix applied. Verifying structure...")
with open(path, 'r', encoding='utf-8') as f:
content = f.read()
# Check that cmd_result == 9 is properly in the if-else chain
if ' } else if (cmd_result == 9) {' in content:
print("[OK] cmd_result == 9 is properly inside if-else chain")
else:
print("[WARN] cmd_result == 9 pattern not found with expected indentation")
# Verify no double-brace pattern
import re
matches = re.findall(r'\} else if.*\{', content[content.find('cmd_result == 8')-200:content.find('cmd_result == 9')+50])
print(f"Struct in region: found {len(matches)} } else if patterns")
for m in matches:
print(f" {m[:80]}")