cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Many linker warnings regarding ws2tcpip.h and its inline functions.

From: Thorsten Schöning <tschoening_at_am-soft.de>
Date: Tue, 6 Oct 2015 14:35:38 +0200

Guten Tag Daniel Stenberg,
am Montag, 5. Oktober 2015 um 21:43 schrieben Sie:

> Yes, but only a rather simple thought. This is a mighty complicated #if
> expression!

Agreed, I didn't like it myself, but couldn't find any better
solution.

> Can we turn it into an unconditional define first, and then check for the
> particular compiler condition that would then undefine it?

Forcefully undefining based on the compiler seems harder to override:
My goal was to give people the chance to patch their Windows headers
and use those if they need IPv6. Using my patch that would be possible
by manually defining HAVE_WS2TCPIP_H, because it's never changed after
the automatic check. If it's forcefully undef'd based on the compiler,
that wouldn't work anymore, but instead another define would be needed
to say "Force the use of ws2tcpip even if I'm __CODEGEARC__ and you by
default wouldn't want to, because I know what I'm doing.".

The only other solution I thought of was switching to a whitelist and
defining for all compilers known to work, but that wouldn't be any
less complicated and may even break backwards compatibility.

I just don't see a good solution for reverting a forced undef, but
that's what I would need currently.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning       E-Mail: Thorsten.Schoening_at_AM-SoFT.de
AM-SoFT IT-Systeme      http://www.AM-SoFT.de/
Telefon...........05151-  9468- 55
Fax...............05151-  9468- 88
Mobil..............0178-8 9468- 04
AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html
Received on 2015-10-06