ソースを参照

don't prototype strdup() for __clang_analyzer__ case in windows builds.

Fixes:  https://github.com/libsdl-org/SDL/issues/12948.
(cherry picked from commit 17bba029ba6717c3da460a2426fd81fd2772f66f)
Ozkan Sezer 2 ヶ月 前
コミット
5ac37a8ffc
1 ファイル変更4 行追加0 行削除
  1. 4 0
      include/SDL3/SDL_stdinc.h

+ 4 - 0
include/SDL3/SDL_stdinc.h

@@ -5974,8 +5974,12 @@ size_t wcslcpy(wchar_t *dst, const wchar_t *src, size_t size);
 size_t wcslcat(wchar_t *dst, const wchar_t *src, size_t size);
 #endif
 
+#ifndef _WIN32
 /* strdup is not ANSI but POSIX, and its prototype might be hidden... */
+/* not for windows: might conflict with string.h where strdup may have
+ * dllimport attribute: https://github.com/libsdl-org/SDL/issues/12948 */
 char *strdup(const char *str);
+#endif
 
 /* Starting LLVM 16, the analyser errors out if these functions do not have
    their prototype defined (clang-diagnostic-implicit-function-declaration) */