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

            Bug ID: 111471
           Summary: Incorrect NTTP printing in the error messages
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mateusz.pusz at gmail dot com
  Target Milestone: ---

Please see the following example https://godbolt.org/z/qajTKdnGq:

There are many similar issues:

```
required for the satisfaction of 'ReferenceOf<typename
std::remove_const<decltype (Q::reference)>::type, V>' [with Q =
mp_units::quantity<{}, double>; V = _ZTAXtlN8mp_units3isq5speedEEE]
```

The `{}` part above does not help at all and should print the actual type of
the NTTP somewhere. `_ZTAXtlN8mp_units3isq5speedEEE` should be properly
demangled. 

```
note: the expression 'implicitly_convertible({}, QS) [with T =
mp_units::kind_of_<{}>; QS = _ZTAXtlN8mp_units3isq5speedEEE]' evaluated to
'false'
```

Again, lack of demangling and mysterious `{}`.

Reply via email to