why is double negation useful in shiftOut for example?

agreed - that's why few do so :slight_smile: but in some strongly typed languages that would bite you

fortunately we code in C/C++ :slight_smile: