From 600d157a2e9cf1cb25f893debd4d59c90857e4b9 Mon Sep 17 00:00:00 2001
From: Bruno Haible <bruno@clisp.org>
Date: Wed, 2 Apr 2025 20:58:17 +0200
Subject: [PATCH] getlocalename_l-unsafe: Avoid undefined behaviour on Solaris
 11.4.

* lib/getlocalename_l-unsafe.c (getlocalename_l_unsafe): On
Solaris 11.4, use "" as fallback.
---
 ChangeLog                    | 6 ++++++
 lib/getlocalename_l-unsafe.c | 2 ++
 2 files changed, 8 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 0166a1cdef..fc34d49e7a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2025-04-02  Bruno Haible  <bruno@clisp.org>
+
+	getlocalename_l-unsafe: Avoid undefined behaviour on Solaris 11.4.
+	* lib/getlocalename_l-unsafe.c (getlocalename_l_unsafe): On
+	Solaris 11.4, use "" as fallback.
+
 2025-04-01  Bruno Haible  <bruno@clisp.org>
 
 	dcomp-script: Handle gdc binaries named <host>-gdc.
diff --git a/lib/getlocalename_l-unsafe.c b/lib/getlocalename_l-unsafe.c
index 1f24f82ddb..6a72c81192 100644
--- a/lib/getlocalename_l-unsafe.c
+++ b/lib/getlocalename_l-unsafe.c
@@ -543,6 +543,8 @@ getlocalename_l_unsafe (int category, locale_t locale)
           default: /* We shouldn't get here.  */
             return (struct string_with_storage) { "", STORAGE_INDEFINITE };
           }
+      /* We shouldn't get here.  */
+      return (struct string_with_storage) { "", STORAGE_INDEFINITE };
 # else
       /* Solaris 11 OpenIndiana.
          For the internal structure of locale objects, see
-- 
2.39.5