According to the printf(3) man page, which also documents snprintf(): "If an output error is encountered, a negative value is returned." There is no mention of errno, so we'd need to use some generic code like EIO.
I don't know if a negative return value is actually possible for snprintf() in practice.
If we decide to check for negative return values, we should probably create a wrapper function and possibly assert. Checking after each snprintf() call is too tedious.