Project

General

Profile

Actions

Bug #5681

closed

Conflcting types for rb_w32_inet_ntop caused by duplicate definition under MinGW

Added by luislavena (Luis Lavena) over 12 years ago. Updated over 12 years ago.

Status:
Closed
Target version:
-
ruby -v:
-
Backport:
[ruby-core:41370]

Description

MinGW 4.5.2 (TDM builds), building against trunk (r33885) is causing the following error:

compiling ../../../../../../ruby/ext/socket/option.c
../../../../../../ruby/ext/socket/option.c:441:1: error: conflicting types for 'rb_w32_inet_ntop'
../../../../../../ruby/include/ruby/win32.h:276:22: note: previous declaration of 'rb_w32_inet_ntop' was here
make[2]: *** [option.o] Error 1
make[2]: Leaving directory `/c/Users/Luis/Projects/oss/oneclick/rubyinstaller/sandbox/ruby19_build/ext/socket'
make[1]: *** [ext/socket/all] Error 2
make[1]: Leaving directory `/c/Users/Luis/Projects/oss/oneclick/rubyinstaller/sandbox/ruby19_build'
make: *** [build-ext] Error 2

All this triggered by recent refactoring of ruby/subst.h

Applying the following patch solves the issue:

diff --git a/ext/socket/option.c b/ext/socket/option.c
index 1f334bb..41765f9 100644
--- a/ext/socket/option.c
+++ b/ext/socket/option.c
@@ -436,7 +436,7 @@ inspect_timeval_as_interval(int level, int optname, VALUE data, VALUE ret)

  • it is not distinguishable by the size.
    */

-#ifndef HAVE_INET_NTOP
+#if !defined(HAVE_INET_NTOP) && !defined(_WIN32)
static char *
inet_ntop(int af, const void *addr, char *numaddr, size_t numaddr_len)
{

Can I apply?

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0