https://llvm.org/bugs/show_bug.cgi?id=28511

            Bug ID: 28511
           Summary: Discrepancy between GCC's and Clang's abi_tag support
                    in member functions of template classes
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Frontend
          Assignee: unassignedclangb...@nondot.org
          Reporter: tam...@gentoo.org
                CC: llvm-bugs@lists.llvm.org
    Classification: Unclassified

Created attachment 16723
  --> https://llvm.org/bugs/attachment.cgi?id=16723&action=edit
Minimal example

GCC (5.3.0) and Clang (current trunk) have differing opinions on the following
lines of code:

  template <typename> class Foo
  {
    std::string name()
    {
      return "";
    }
  };
  template class Foo<int>;

gcc emits a symbol without an "abi:cxx11" tag:

  0000000000000000 W Foo<int>::name()

whereas clang emits a symbol with "abi:cxx11" tag:

  0000000000000000 W Foo<int>::name[abi:cxx11]()


The compiler versions I used where:

  gcc (Gentoo Hardened 5.3.0 p1.1, pie-0.6.5) 5.3.0
  Copyright (C) 2015 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

  clang version 3.9.0 (a45abc6b0f06d0cf90d0c595bc6ea37596cd5802)
(b02ab0928eb310dba607ed2d90172e79908c665a)
  Target: x86_64-pc-linux-gnu
  Thread model: posix
  InstalledDir: /usr/bin

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to