diff --git a/lib/url.c b/lib/url.c
index 3aa7bdcc2dde350eb6f67af9960fba4531f19696..10daab68734d53f16b1b5cc718b8f41bc250d189 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -2490,7 +2490,8 @@ static bool tld_check_name(struct SessionHandle *data,
   char *uc_name = NULL;
   int rc;
 #ifndef CURL_DISABLE_VERBOSE_STRINGS
-  char *tld_errmsg = (char *)"<no msg>";
+  char nomsg_str[] = "<no msg>";
+  char *tld_errmsg = nomsg_str;
 #else
   (void)data;
 #endif
@@ -2502,8 +2503,8 @@ static bool tld_check_name(struct SessionHandle *data,
 
   rc = tld_check_lz(uc_name, &err_pos, NULL);
 #ifndef CURL_DISABLE_VERBOSE_STRINGS
-  if (rc != TLD_SUCCESS)
 #ifdef HAVE_TLD_STRERROR
+  if (rc != TLD_SUCCESS)
     tld_errmsg = (char *)tld_strerror((Tld_rc)rc);
 #endif
   if (rc == TLD_INVALID)