view gcc/testsuite/g++.dg/abi/abi-tag18.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-options -Wabi=9 }
// { dg-final { scan-assembler "_Z1fB7__test1v" } }
// { dg-final { scan-assembler "_ZZ1fB7__test1vEN1T1gB7__test2Ev" } }
// { dg-final { scan-assembler "_ZZZ1fB7__test1vEN1T1gB7__test2EvE1x" } }
// { dg-final { scan-assembler "_ZGVZZ1fB7__test1vEN1T1gB7__test2EvE1x" } }

struct X { ~X(); };
inline namespace __test1 __attribute__((abi_tag)) { struct A1 { }; }
inline namespace __test2 __attribute__((abi_tag)) { struct A2 { }; }
inline A1 f() {
  struct T {
    A2 g() {			// { dg-warning "mangled name" }
      static X x;		// { dg-warning "mangled name" }
      return A2();
    }
  };
  T().g();
  return A1();
}
int main() {
  f();
}