Converted to partially specialized templates to further separate the overflow checking functions from the original non-checking forms.

svn path=/sandbox/; revision=83291