Michael

Results 71 issues of Michael

**Is your feature request related to a problem? Please describe.** Currently, trying to call a method without `()` will simply generate a `GEP`-instruction and have no further effect. The method...

validation

**Describe the bug** When trying to assign a literal string-array (e.g. `['a', 'b', 'c']` to an `ARRAY[0..2] OF STRING`, `inkwell` will panic with the following message: ``` thread '' panicked...

bug

#1379 has resulted in a regression when evaluating `ELSIF` conditions if said condition contains a call to a function with aggregate return types. Due to the way the AST is...

bug
regression

``` FUNCTION foo VAR_IN_OUT in : ARRAY[0..1] OF STRING; END_VAR in[0] := 'hello'; in[1] := 'world'; END_FUNCTION FUNCTION main VAR bar : ARRAY[0..1] OF STRING; END_VAR foo(bar); printf('%s %s$n', REF(bar[0]),...

bug
high-priority

When trying to compile the following snippet: ``` VAR_GLOBAL CONSTANT x: DINT := 4; END_VAR FUNCTION main VAR y : REF_TO DINT; END_VAR y := REF(x); END_FUNCTION ``` the compiler...

bug

When writing an external C function with an aggregate return type to be used in a PLC program, our API-guideline requires the return type to be passed as a pointer...

enhancement
validation

Moving the validation step before lowering the user-written AST would remove the need for multiple safe-guards in the lowering-stage. Additionally, it would ensure only user-written code is validated. The drawback...

We currently do not have a validation in place to safeguard against initializing a variable with `__VOID`. Since the `void` type does not exist outside of return-types in LLVM, the...

low-priority

When initializing an alias or reference to variable, we only check for the inner type, but not if the actual indirection-level matches the declaration. ```Haskell FUNCTION main VAR s1: REF_TO...

bug

When compiling with optimization, LLVM will sometimes optimize out faulty IR we generated. The same IR can lead to segfaults when compiling without optimizations - this leaves quite a large...