Cesium
Cesium copied to clipboard
C compiler for the CLI platform
Current Cesium think that this loop is never finished. ``` int test() { for(;;) { return 5; } } ```
Closes #534 Undefined variables will be now converted to `0`.
From #157: > Arithmetic conversions currently work only in mathematical and bitwise binary operators. There are several more places in the language where values are also promoted, e.g. assignment and...
Now this operators lowers using int constant, that will not work with floats
Following the REUSE spec will allow us to utilize [dotnet-licenses](https://github.com/ForNeVeR/dotnet-licenses) more efficiently, which is a crucial step to start properly publishing nuget packages.
Right now, after #647, for operator like `a = b++`, we emit codegen analogous to `b = b + 1; a = b - 1;` Let's check how C# implements...
_Originally posted by @ForNeVeR in https://github.com/ForNeVeR/Cesium/pull/617#discussion_r1740190291_ Currently, we have a global static counter, `CurrentIndex` in the `Cesium.CodeGen.Contexts.VariableInfo` record. https://github.com/ForNeVeR/Cesium/blob/f1b5204e9d1f0869ed8c4ee0caf3c3e41ad6a5a9/Cesium.CodeGen/Contexts/VariableInfo.cs#L7-L11 I'd like to have some sort of indexing that's tied to...