From 3e4981dd59d301f60bcc85f7c893db1ee4a21906 Mon Sep 17 00:00:00 2001 From: Tanzinul Islam Date: Sun, 25 Apr 2021 19:59:29 +0100 Subject: [PATCH] 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 Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/15025) --- e_os.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/e_os.h b/e_os.h index b19c4829de..8bfc1dcb10 100644 --- a/e_os.h +++ b/e_os.h @@ -108,7 +108,14 @@ */ # include # include -# include + /* + * 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 +# endif /* yes, they have to be #included prior to */ # endif # include -- 2.34.1