Package: adios
Version: 1.3-7
Severity: important
Tags: patch
User: debian-h...@lists.debian.org
Usertags: hurd

Hi,

currently[1], adios does not build on GNU/Hurd.

The problem is that in src/adios_error.{c,h}, "errno" is used as
parameter name, which is conflicting with the definition of the global
"errno" variable.
The easy fix (attached) is to rename the parameter (I chose "aerrno").

[1] 
https://buildd.debian.org/status/fetch.php?pkg=adios&arch=hurd-i386&ver=1.3-7&stamp=1329682847

Thanks,
-- 
Pino
--- a/src/adios_error.c
+++ b/src/adios_error.c
@@ -29,19 +29,19 @@
     return aerr; 
 }
 
-void adios_error (enum ADIOS_ERRCODES errno, char *fmt, ...) 
+void adios_error (enum ADIOS_ERRCODES aerrno, char *fmt, ...) 
 {
     va_list ap;
-    adios_errno = (int)errno;
+    adios_errno = (int)aerrno;
     va_start(ap, fmt);
     (void) vsnprintf(aerr, ERRMSG_MAXLEN, fmt, ap);
     va_end(ap);
 }
 
-void adios_error_at_line (enum ADIOS_ERRCODES errno, const char* filename, unsigned int linenum, char *fmt, ...)
+void adios_error_at_line (enum ADIOS_ERRCODES aerrno, const char* filename, unsigned int linenum, char *fmt, ...)
 {
     va_list ap;
-    adios_errno = (int)errno;
+    adios_errno = (int)aerrno;
     va_start(ap, fmt);
     (void) vsnprintf(aerr, ERRMSG_MAXLEN, fmt, ap);
     va_end(ap);
--- a/src/adios_error.h
+++ b/src/adios_error.h
@@ -35,8 +35,8 @@
     ,err_unspecified
 };
 
-void adios_error (enum ADIOS_ERRCODES errno, char *fmt, ...);
-void adios_error_at_line (enum ADIOS_ERRCODES errno, const char* filename, unsigned int linenum, char *fmt, ...);
+void adios_error (enum ADIOS_ERRCODES aerrno, char *fmt, ...);
+void adios_error_at_line (enum ADIOS_ERRCODES aerrno, const char* filename, unsigned int linenum, char *fmt, ...);
 
 const char* adios_get_last_errmsg (void);
 

Reply via email to