A CI build error of GNU gettext on MSVC shows that the library
name-spacing of verror_at_line no longer works: The error.obj file
in libtextstyle defines 'libtextstyle_verror' (correct) and
'verror_at_line' (incorrect).

The cause is a typo in the "verror: allow library name-spacing of verror"
patch (2024-08-14). But it was masked by the '#ifndef verror_at_line'
condition. When I replaced that condition on 2026-04-28, the
'#define verror_at_line...' in error.h started to override the
'#define verror_at_line libtextstyle_verror_at_line' in config.h.

This patch fixes it.


2026-05-12  Bruno Haible  <[email protected]>

        error: Restore library name-spacing of verror_at_line.
        * lib/error.in.h (verror_at_line): Don't define as a macro if
        _GL_NO_INLINE_ERROR is defined.

diff --git a/lib/error.in.h b/lib/error.in.h
index 97bb96c74b..4a86b66314 100644
--- a/lib/error.in.h
+++ b/lib/error.in.h
@@ -239,7 +239,7 @@ extern void verror_at_line (int __status, int __errnum, 
const char *__fname,
                             va_list __args)
      _GL_ATTRIBUTE_COLD
      _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 5, 0));
-#ifdef _GL_NO_INLINE_ERROR
+#ifndef _GL_NO_INLINE_ERROR
 # if !GNULIB_defined_verror_at_line
 #  define verror_at_line(status, ...) \
      _gl_error_call (verror_at_line, status, __VA_ARGS__)




Reply via email to