Зачем ему возвращать значение с использованием беззнакового пробела?
Давайте рассмотрим 8-битные числа со знаком и без знака. Если у вас есть -128, результат не определен ... Я думаю, что stdlib не хочет слишком сильно тормозить. Если вы думаете, что у вас может быть число в этом диапазоне, тогда вам нужно использовать что-то еще.
Если вы считаете, что в подписанном символе может быть значение больше 127, то вы ошибаетесь.
Следовательно, необязательно, чтобы значение могло содержать значение больше 127, а сохранение его в подписи ничего не теряет. Если вы хотите сделать это без знака, продолжайте. Так как раньше это было целое число со знаком, есть вероятность, что вы снова будете выполнять математику со знаком. Лично я думаю, что предпочел бы, чтобы тип оставался подписанным, поскольку я редко хочу иметь дело с неподписанным, и я не выполняю битовые операции.
Но, может быть, кто-то еще сможет почерпнуть некоторые заметки из комитета по стандартам.