There is no normative requirement on the ranges of the integral types, although the footnote in 6.8.2 [basic.fundamental] paragraph 2 indicates the intent (for int, at least) that they match the values given in the <climits> header. Should there be an explicit requirement of some sort?
(See also paper N1693.)