@dekkzz76 circle of hell prospection
2 comments
@wim_v12e @dekkzz76 the types that tripped me the most were routines that passed items through the return stack, and the ones that don't return. I had this one super weird routine in drifblim that could BRK in a special case, which I had to refactor because it was just too hard to validate: https://git.sr.ht/~rabbits/drifblim/commit/fc475cc272231a1de4c56d28b3a43b52cf3fd2f1#src/drifblim.tal-2-23 For anything that does a jump to a dynamic value(LDA2 JSR2), I had to flag as unsafe. |
@neauoire I sympathise because i had to do most of what you did for my Uxntal-to-C compiler. The generated C code must be correctly typed so I had to infer the types of the Uxntal functions. The main difference is that I did some normalising transformations first to have far fewer function types.
@dekkzz76