aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/emutls.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libgcc/emutls.c b/libgcc/emutls.c
index 0fea1f1..95aaed7 100644
--- a/libgcc/emutls.c
+++ b/libgcc/emutls.c
@@ -57,6 +57,14 @@ struct __emutls_array
# define EMUTLS_ATTR
#endif
+/* __emutls_get_address and __emutls_register_common are registered as
+ builtins, but the compiler struct __emutls_object doesn't have
+ a union in there and is only created when actually needed for
+ the calls to the builtins, so the builtins are created with void *
+ arguments rather than struct __emutls_object *. Avoid
+ -Wbuiltin-declaration-mismatch warnings. */
+#pragma GCC diagnostic ignored "-Wbuiltin-declaration-mismatch"
+
EMUTLS_ATTR
void *__emutls_get_address (struct __emutls_object *);
EMUTLS_ATTR