char *ptr;
u32 mask, shift, val;
...
val = (*ptr & mask) >> shift;
Поскольку char может быть как со знаком так и без, какие сторонние «эффекты» могут быть при выполнении AND,OR или XOR когда один из операндов signed?
Я знаю что >> или << дают undefined behaviour в таких случаях, но не уверен насчет AND/OR.