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

            Bug ID: 50209
           Summary: Lambda function names generated by Clang does not
                    conform to ABI
           Product: clang
           Version: trunk
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangb...@nondot.org
          Reporter: lxf...@gmail.com
                CC: blitzrak...@gmail.com, dgre...@apple.com,
                    erik.pilking...@gmail.com, llvm-bugs@lists.llvm.org,
                    richard-l...@metafoo.co.uk

When compiling lambda functions, the generated function
names use different conventions than GCC.
Example: https://godbolt.org/z/5qvqKqEe6
The lambda in Clang is named "_Z3barIZ3foovE3$_0EvT_", while the one
in GCC is named "_Z3barIZ3foovEUlvE_EvT_". Their demangled names are
also different ("void bar<foo()::$_0>(foo()::$_0)" vs "void
bar<foo()::{lambda()#1}>(foo()::{lambda()#1})").

Discussions in clang-dev:
https://lists.llvm.org/pipermail/cfe-dev/2021-May/068080.html

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

Reply via email to