With such low level operations such as Low and High etc, the compiler can never be at fault because it creates a few mnemonics that alter SFRs.

I've just tried the code:



Device =...