https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121231

Patrick Palka <ppalka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu.org,
                   |                            |ppalka at gcc dot gnu.org

--- Comment #4 from Patrick Palka <ppalka at gcc dot gnu.org> ---
The problem seems to be that mangle_template_parm_object returns the same
mangling _ZTAXtl3FooLi1EEE, i.e. "Foo{1}", for both make_foo(true) and
make_foo(false) which causes us to conflate the two specializations
bar<make_foo(true)> and bar<make_foo(false)>, leading to wrong code.

It seems the mangling for make_foo(false) is wrong?  Clang mangles it as
"Foo{0, 1}".

Reply via email to