http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54588
--- Comment #4 from Marc Glisse <glisse at gcc dot gnu.org> --- (In reply to Manuel López-Ibáñez from comment #3) > I guess what information is most useful depends on the exact case. In my > experience, however, knowing the types you are trying to convert from and to > is usually the key. +1 > G++ could certainly do better about printing types. It sometimes still > spells out typedefs, when they don't make a difference. It could also be > smarter when summarizing types, so for example here: [snip] > there is no need to say 'A<class X> [with X = VeryComplicatedType]' (I think > this is what we actually say now, no?) cannot convert to 'int', but we could > say simply 'A<class X>' cannot convert to 'int' because it really doesn't > matter what X is. or maybe it does. I'd be very careful about removing information from the diagnostics. I find cases where we are missing information (PR53822 for instance) much worse than those where we need to ignore a number of lines to find the right message. I can read a few more lines, I cannot invent what isn't there. So if there is any chance it might be useful, please at least keep it under some -fdetailed-diagnostic flag. c++filt could also do with some heuristics to avoid exponential growth of types, even if it doesn't know the typedef names used in the source.