Sign extension bug. Not should be applied after the constant has been expanded to size_t. Thanks to Glenn Schrader.