Inappropriate loops behaviour <for(), foreach(), break, continue>, segmentation fault while producing stacktrace #62
标签
未选择里程碑
未指派成员
1 名参与者
通知
到期时间
未设置到期时间。
依赖工单
没有设置依赖项。
参考:aerscript/Aer#62
正在加载...
在新工单中引用
没有提供说明。
删除分支 %!s(<nil>)
删除分支是永久的。虽然已删除的分支在实际被删除前有可能会短时间存在,但这在大多数情况下无法撤销。是否继续?
AerScript Information
ab36234ff3
Your problem description
I have written another test - sudoku solver. It causes AerScript interpreter to fail. Sometimes it simply results in no solution, sometimes throws segmentation fault. When investigating issue, I realized this is connected with LOOP frames. After modifying code, to not declare variables repeatedly inside loops and removing OP_LOOP_START and OP_LOOP_START calls from PH7_CompileFor(), PH7_CompileBreak() and PH7_CompileContinue(), attached script has begun to work properly. Additionally, during investigation I have found another problem with for() loop statement:
Expected results
Current results
Attached affected script.
Revisions
c730082fa0
and709b5971c6
fixes the segmentation fault problem. There is still a need to investigate and resolve problem of variables scopes.Sudoku solver test added in
3eb82e632b
.