+2017-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR sanitizer/81923
+ * asan.c (create_odr_indicator): Strip name encoding from assembler
+ name before appending it after __odr_asan_.
+
2017-09-01 Martin Liska <mliska@suse.cz>
PR tree-optimization/82059
/* DECL_NAME theoretically might be NULL. Bail out with 0 in this case. */
if (decl_name == NULL_TREE)
return build_int_cst (uptr, 0);
- size_t len = strlen (IDENTIFIER_POINTER (decl_name)) + sizeof ("__odr_asan_");
+ const char *dname = IDENTIFIER_POINTER (decl_name);
+ if (HAS_DECL_ASSEMBLER_NAME_P (decl))
+ dname = targetm.strip_name_encoding (dname);
+ size_t len = strlen (dname) + sizeof ("__odr_asan_");
name = XALLOCAVEC (char, len);
- snprintf (name, len, "__odr_asan_%s", IDENTIFIER_POINTER (decl_name));
+ snprintf (name, len, "__odr_asan_%s", dname);
#ifndef NO_DOT_IN_LABEL
name[sizeof ("__odr_asan") - 1] = '.';
#elif !defined(NO_DOLLAR_IN_LABEL)
+2017-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR sanitizer/81923
+ * gcc.dg/asan/pr81923.c: New test.
+
2017-09-01 Martin Liska <mliska@suse.cz>
PR tree-optimization/82059