add local-inference to if expressions
fix else when parsing 'if