Why interrupt is not triggered?
When RC6 = !RC6; is used, first high on RB5 makes RC6 high. At this point no changes can be made to RC6 after making RB5 high or low.

When I use RC6 = RB5; I can observe interruptions.