aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Headers/unwind.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Headers/unwind.h b/lib/Headers/unwind.h
index 0e42ba4dca..66ede93e6b 100644
--- a/lib/Headers/unwind.h
+++ b/lib/Headers/unwind.h
@@ -34,6 +34,11 @@
extern "C" {
#endif
+/* It is a bit strange for a header to play with the visibility of the
+ symbols it declares, but this matches gcc's behavior and some programs
+ depend on it */
+#pragma GCC visibility push(default)
+
struct _Unwind_Context;
typedef enum {
_URC_NO_REASON = 0,
@@ -53,6 +58,8 @@ uintptr_t _Unwind_GetIP(struct _Unwind_Context* context);
typedef _Unwind_Reason_Code (*_Unwind_Trace_Fn)(struct _Unwind_Context*, void*);
_Unwind_Reason_Code _Unwind_Backtrace(_Unwind_Trace_Fn, void*);
+#pragma GCC visibility pop
+
#ifdef __cplusplus
}
#endif