[PATCH] D17567: [GCC] PR23529 Sema part of attrbute abi_tag support

Dmitry Polukhin via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 9 02:12:54 PST 2016


DmitryPolukhin added a comment.

Thank you for the comments!


================
Comment at: docs/ItaniumMangleAbiTags.rst:83
@@ +82,3 @@
+For <local-name>s all active tags used in the local part (<function-
+encoding>) are available, but not implicit tags which were not active!
+
----------------
aaron.ballman wrote:
> Replace the ! with a .
> 
> Also, an example might be useful for the reader.
I'm 100% sure what exactly Stefan meant here and what is intended GCC behavior vs observed behavior, for example:

namespace A {
  inline namespace B __attribute__((abi_tag)) {
     struct C { int x; };
  }
}

std::string foo() {
  struct E {
     __attribute__((abi_tag("X")))
    static A::C bar() {
      // mangle as _ZZ3fooB5cxx11vEN1E3barB1XEv
      // i.e. foo[abi:cxx11]()::E::bar[abi:X]()
      // abi_tag 'B' is missing for bar in GCC 5.3.0
      return A::C();
    }
  };
  E::bar();
}

Perhaps we should skip this part.


http://reviews.llvm.org/D17567





More information about the cfe-commits mailing list