feat: validate comparison operand types
Fixes #1026.
My read of the IEC spec is that comparison is not defined when the operands data types do not match. So this adds a validation that disallows all comparisons where the data types of the two operands are not the same.
Hello @nturley-copia, Thank you for the PR! It seems that the new validation caused some buggy tests to fail. I'm saying buggy because at first glance, the = should have been an assignment on both of these tests. I would recommend you fix these tests in a commit without your changes, and then rebase your changes on that fix, this way you can be certain your commit is starting from a clean state and you don't have to fix the tests directly in the commit doing the change.
To do this, you can either open a PR with only the fixes and wait for us to merge it, or you can start from a master state on the repo, do the commit that fixes the tests, run cargo test --workspace to make sure everything is still green, and then rebase.
Alternatively, I can upload the fix and you can rebase on that :)
Gotcha. I'll post a PR that fixes the tests today.
Closing this due to inactivity, feel free to re-open if that is not the case