Всякий раз, когда вы хотите, чтобы компилятор группировал несколько вещей, но это не так, вы используете скобки, чтобы принудительно это сделать:
auto foo = (unsigned int)(0);
Обратите внимание, что как @ cpplearnern указывает, если вывместо этого используйте фигурные скобки, он считается составным литералом и не является допустимым C ++, хотя допустим C99:
auto foo = (unsigned int){0}; /* Not legal C++, though GCC and Clang support it. */
В любом случае, лучшим решением является использование целочисленные литералы :
auto foo = 0u;