Bug 252443 - c++filt demangles particular C++ symbol wrong
Summary: c++filt demangles particular C++ symbol wrong
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 12.2-STABLE
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-toolchain (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-01-05 19:05 UTC by Yuri Victorovich
Modified: 2021-01-05 19:13 UTC (History)
2 users (show)

See Also:


Attachments
testcase-templated-method.cpp (227 bytes, text/plain)
2021-01-05 19:05 UTC, Yuri Victorovich
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
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&)