пишу вот такую конструкцию: Код (Text): #define MAX_UNSIGNED_TYPE_VAL(t) ((1 << 8 * sizeof(t)) - 1) компилятор выдаёт предупреждение: warning C4293: '<<' : shift count negative or too big, undefined behavior всё, вроде работает, но закралась у меня подозрение - может на гцц работать не будет или для некоторых больших типов, типа unsigned __int128. вот и думаю - насколько это черевато последствиями.