Bug 252443

Summary: c++filt demangles particular C++ symbol wrong
Product: Base System Reporter: Yuri Victorovich <yuri>
Component: binAssignee: freebsd-toolchain (Nobody) <toolchain>
Status: New ---    
Severity: Affects Only Me CC: dim, emaste
Priority: ---    
Version: 12.2-STABLE   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
testcase-templated-method.cpp none

Description Yuri Victorovich freebsd_committer freebsd_triage 2021-01-05 19:05:04 UTC
Created attachment 221301 [details]
testcase-templated-method.cpp

Wrong (ccc is called with G<bool>, not G<CO>):
> $ nm testcase-templated-method.o | grep ccc | c++filt
>                  U void G<CO>::ccc<bool>(G const&<CO>)


Correct with c++filt from devel/binutils:
> $ nm testcase-templated-method.o | grep ccc | /usr/local/bin/c++filt
>                  U void G<CO>::ccc<bool>(G<bool> const&)

Correct with llbm's c++filt:
> $ nm testcase-templated-method.o | grep ccc | /usr/local/llvm10/bin/llvm-cxxfilt
>                  U void G<CO>::ccc<bool>(G<bool> const&)