alloca doesn't set errno, so it's pointless to call strerror when it fails