+2018-03-19 Maxim Ostapenko <m.ostapenko@samsung.com>
+
+ PR sanitizer/78651
+ * dwarf2asm.c (dw2_output_indirect_constant_1): Disable ASan before
+ calling assemble_variable.
+
2018-03-19 Sudakshina Das <sudi.das@arm.com>
PR target/81647
}
sym_ref = gen_rtx_SYMBOL_REF (Pmode, sym);
+ /* Disable ASan for decl because redzones cause ABI breakage between GCC and
+ libstdc++ for `.LDFCM*' variables. See PR 78651 for details. */
+ unsigned int save_flag_sanitize = flag_sanitize;
+ flag_sanitize &= ~(SANITIZE_ADDRESS | SANITIZE_USER_ADDRESS
+ | SANITIZE_KERNEL_ADDRESS);
assemble_variable (decl, 1, 1, 1);
+ flag_sanitize = save_flag_sanitize;
assemble_integer (sym_ref, POINTER_SIZE_UNITS, POINTER_SIZE, 1);
return 0;
+2018-03-19 Maxim Ostapenko <m.ostapenko@samsung.com>
+
+ PR sanitizer/78651
+ * g++.dg/asan/pr78651.C: New test.
+
2018-03-19 Tom de Vries <tom@codesourcery.com>
* gcc.dg/tree-ssa/pr84512.c: Don't require effective target
--- /dev/null
+// PR sanitizer/78651
+// { dg-do run }
+// { dg-additional-options "-fpic" { target fpic } }
+
+struct A { };
+
+namespace {
+
+void thisThrows () {
+ throw A();
+}
+
+struct SomeRandomType {};
+}
+
+int main() {
+ try {
+ thisThrows();
+ }
+ catch (SomeRandomType) {
+ throw;
+ }
+ catch (A) {
+ }
+ return 0;
+}