On 01/13/2013 09:11 AM, Tom G. Christensen wrote: > I think the proper fix would be to wrap the definition in !HAVE_NET_IF_H || > HAVE_IF_NAMEINDEX same as the code that uses it.
Thanks, I pushed this: --- ChangeLog | 8 ++++++++ tests/test-net_if.c | 7 ++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 79f857e..7cb6f97 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2013-01-13 Paul Eggert <egg...@cs.ucla.edu> + + net_if-tests: port to Solaris 7 + GCC 3.4.6 + Problem reported by Tom G. Christensen in + <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00091.html>. + * tests/test-net_if.c (ni): Move to next the code that uses it, + so that it's declared only if needed. + 2013-01-12 Paul Eggert <egg...@cs.ucla.edu> net_if-tests: port to older Solaris diff --git a/tests/test-net_if.c b/tests/test-net_if.c index 13ca82e..932f3e3 100644 --- a/tests/test-net_if.c +++ b/tests/test-net_if.c @@ -20,8 +20,6 @@ #include <net/if.h> -static struct if_nameindex ni; - /* We do not yet have replacements for if_* functions on systems that lack a native <net/if.h>. */ #if HAVE_NET_IF_H && HAVE_IF_NAMEINDEX @@ -90,7 +88,10 @@ main (int argc, char *argv[]) #endif /* HAVE_NET_IF_H */ #if !HAVE_NET_IF_H || HAVE_IF_NAMEINDEX - return !IF_NAMESIZE + ni.if_index + !!ni.if_name; + { + static struct if_nameindex ni; + return !IF_NAMESIZE + ni.if_index + !!ni.if_name; + } #else return 0; #endif -- 1.7.11.7