Interpreter: fix implicit multiplication LL(1) conflict and recursion handling
- Rewrite Term loop in Interpreter.atg to avoid deletable alternative causing '+'/'-' to be treated as '%'. - Support implicit multiplication by explicit adjacency checks without affecting additive parsing. - Add cycle-safe expression evaluation: track evaluation stack and collapse self/mutual recursion to zero via shared recursion scope. - Update StandardLibrary project reference casing to 'CSMic.Core.csproj'. All tests pass: 85/85.
This commit is contained in:
parent
135af2cc49
commit
6ed3ded0ed
3 changed files with 94 additions and 37 deletions
|
|
@ -12,7 +12,7 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Core\CsMic.Core.csproj" />
|
||||
<ProjectReference Include="..\Core\CSMic.Core.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="NuGetPublish.targets" Condition="Exists('NuGetPublish.targets')" />
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue