Fixed some cases of enum comparison combined with branching.

Hi, I found a few more cases where enum comparison wouldn't work.
Specifically when combining them with branches.

(x == TestEnum.Bar) || (x == TestEnum.Foo) <= This example would fail

Have fixed the issue and added test.

:)