<div dir="auto"><div><br><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Sat, 8 Aug 2026, 16:23 Pietro Monteiro, <<a href="mailto:pietro@sociotechnical.xyz">pietro@sociotechnical.xyz</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Building on recent OpenBSD fails because the mask macros have been<br>
redefined. Use the new macros if available.<br>
<br>
libstdc++-v3/ChangeLog:<br>
<br>
* config/os/bsd/openbsd/ctype_base.h:<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">OK for trunk and active release branches.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Signed-off-by: Pietro Monteiro <<a href="mailto:pietro@sociotechnical.xyz" target="_blank" rel="noreferrer">pietro@sociotechnical.xyz</a>><br>
---<br>
libstdc++-v3/config/os/bsd/openbsd/ctype_base.h | 16 ++++++++++++++++<br>
1 file changed, 16 insertions(+)<br>
<br>
diff --git a/libstdc++-v3/config/os/bsd/openbsd/ctype_base.h b/libstdc++-v3/config/os/bsd/openbsd/ctype_base.h<br>
index c86c77e60fc..e1d982f81cd 100644<br>
--- a/libstdc++-v3/config/os/bsd/openbsd/ctype_base.h<br>
+++ b/libstdc++-v3/config/os/bsd/openbsd/ctype_base.h<br>
@@ -42,6 +42,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION<br>
// on the mask type. Because of this, we don't use an enum.<br>
typedef char mask;<br>
<br>
+#ifdef _CTYPE_S<br>
+ // OpenBSD 7.5 uses this style of define.<br>
+ static const mask upper = _CTYPE_U;<br>
+ static const mask lower = _CTYPE_L;<br>
+ static const mask alpha = _CTYPE_U | _CTYPE_L;<br>
+ static const mask digit = _CTYPE_N;<br>
+ static const mask xdigit = _CTYPE_N | _CTYPE_X;<br>
+ static const mask space = _CTYPE_S;<br>
+ static const mask print = _CTYPE_P | _CTYPE_U | _CTYPE_L | _CTYPE_N | _CTYPE_B;<br>
+ static const mask graph = _CTYPE_P | _CTYPE_U | _CTYPE_L | _CTYPE_N;<br>
+ static const mask cntrl = _CTYPE_C;<br>
+ static const mask punct = _CTYPE_P;<br>
+ static const mask alnum = _CTYPE_U | _CTYPE_L | _CTYPE_N;<br>
+#else<br>
+ // Older versions use this style.<br>
static const mask upper = _U;<br>
static const mask lower = _L;<br>
static const mask alpha = _U | _L;<br>
@@ -53,6 +68,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION<br>
static const mask cntrl = _C;<br>
static const mask punct = _P;<br>
static const mask alnum = _U | _L | _N;<br>
+#endif<br>
#if __cplusplus >= 201103L<br>
static const mask blank = space;<br>
#endif<br>
-- <br>
2.54.0<br>
<br>
</blockquote></div></div></div>