Without this patch, the first local include of unwind.h might, with the

__has_include_next, try to include the one from the system.
 It might be /usr/include/clang/3.4/include/unwind.h
 Because of the #ifndef __CLANG_UNWIND_H, it might never include any declaration
 from the system.
This commit is contained in:
Sylvestre Ledru 2013-07-05 08:17:08 +00:00
parent c1c56e85ae
commit bcf188083e
2 changed files with 40 additions and 0 deletions

View File

@ -26,3 +26,4 @@ kfreebsd.diff
mipsel-ftbfs.diff
kfreebsd_ptrace_kludge.diff
#kfreebsd_v2.diff
unwind-chain-inclusion.diff

View File

@ -0,0 +1,39 @@
# Without this patch, the first local include of unwind.h might, with the
# __has_include_next, try to include the one from the system.
# It might be /usr/include/clang/3.4/include/unwind.h
# Because of the #ifndef __CLANG_UNWIND_H, it might never include any declaration
# from the system.
Index: llvm-toolchain-snapshot-3.4~svn185351/clang/lib/Headers/unwind.h
===================================================================
--- llvm-toolchain-snapshot-3.4~svn185351.orig/clang/lib/Headers/unwind.h 2013-07-05 10:05:52.000000000 +0200
+++ llvm-toolchain-snapshot-3.4~svn185351/clang/lib/Headers/unwind.h 2013-07-05 10:06:31.000000000 +0200
@@ -23,9 +23,6 @@
/* See "Data Definitions for libgcc_s" in the Linux Standard Base.*/
-#ifndef __CLANG_UNWIND_H
-#define __CLANG_UNWIND_H
-
#if __has_include_next(<unwind.h>)
/* Darwin and libunwind provide an unwind.h. If that's available, use
* it. libunwind wraps some of its definitions in #ifdef _GNU_SOURCE,
@@ -53,6 +50,9 @@
# endif
#else
+#ifndef __CLANG_UNWIND_H
+#define __CLANG_UNWIND_H
+
#include <stdint.h>
#ifdef __cplusplus
@@ -128,6 +128,7 @@
}
#endif
+#endif /* __CLANG_UNWIND_H */
+
#endif
-#endif /* __CLANG_UNWIND_H */