Remove __STDC_LIMIT_MACROS macro and use std::numeric_limits