This is not so much about srfi-185 but more about srfi-118, but are these proceduresallowed to mutate an empty string?
R7RS says "empty strings, ..., which contain no locations, may or may not be newly allocated". Although string-copy etc. are defined to return a newly allocated string, It may return a singleton instance if the result is an empty string.
It might be nice to have a word that, in srfi-185, the caller can safely pass an empty string without worrying the singleton instance is destroyed.