Delegating initializers cannot be cyclic
vihanb opened this issue · 3 comments
vihanb commented
VSL currently detects recursive initializers however initializers in the form:
init^D_A -> init^D_B -> init^D_A
taylorhansen commented
This seems to fall under detecting infinite (mutual) recursion in general, which would likely need some serious AST analysis to do that.
vihanb commented
@CrazyGuy108 it is a form of mutual recursion but delegated initializers can't be within branches which means this isn't halting problem. you can also only have one per function so it's pretty trivial with state or stack based resolution
taylorhansen commented
Ok I see.