diff options
author | Tanzinul Islam <tanzinul.islam@gmail.com> | 2021-04-25 19:59:29 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2021-04-27 10:09:26 +0200 |
commit | 3e4981dd59d301f60bcc85f7c893db1ee4a21906 (patch) | |
tree | 2f7b36bfe2ada69f85f8594fb22c8f3ccd140c3d /e_os.h | |
parent | c85c5e1a5327379306f4c3f8248ace740c64c338 (diff) |
Avoid #include with inline function on C++Builder
Commit 6b2978406 exposed a bug with C++Builder's Clang-based compilers,
which cause inline function definitions in C translation units to not
be found by the linker. Disable the inclusion of the triggering header.
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15025)
Diffstat (limited to 'e_os.h')
-rw-r--r-- | e_os.h | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -108,7 +108,14 @@ */ # include <winsock2.h> # include <ws2tcpip.h> -# include <wspiapi.h> + /* + * Clang-based C++Builder 10.3.3 toolchains cannot find C inline + * definitions at link-time. This header defines WspiapiLoad() as an + * __inline function. https://quality.embarcadero.com/browse/RSP-33806 + */ +# if !defined(__BORLANDC__) || !defined(__clang__) +# include <wspiapi.h> +# endif /* yes, they have to be #included prior to <windows.h> */ # endif # include <windows.h> |