Stdint.h определяет UINT32_MAX следующим образом:
#define UINT32_MAX (4294967295U)
Обратите внимание на U в конце. Это ограничивает UINT32_MAX целым числом без знака. Добавление минуса перед ним установит его в 1.
Следовательно, не рекомендуется использовать UINT32_MAX для проверки ограничений на int64_t.
Я отредактировал вопрос, проверяемая переменная - это int64_t, поэтому диапазон в порядке, мой плохой
Обновил ответ.
В -(UINT32_MAX) отрицание выполняется в типе uint32_t (скобки не действуют). Отрицание внутри типа uint32_t оборачивает по модулю 232, поэтому получается 1. Чтобы действительно отрицать UINT32_MAX, сделайте это в более широком типе, как в - (int64_t) UINT32_MAX.
Какой тип x?