In particular, removes spaces between template arguments of class
templates to better match VS type visualizers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@310331 91177308-0d34-0410-b5e6-96231b3b80d8
When -gmlt is on, we don't emit namespace or class scope information,
and the CodeView emission code in LLVM can't compute the fully qualified
name. If we know LLVM won't be able to get the name right, go ahead and
emit the qualified name in the frontend.
We could change our -gmlt emission strategy to include those scopes when
emitting codeview, but that would increase memory usage and slow down
LTO and add more complexity to debug info emission.
The same problem exists when you debug a -gmlt binary with GDB, so we
should consider removing '&& EmitCodeView' from the condition here at
some point in the future after evaluating the impact on object file
size.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@274246 91177308-0d34-0410-b5e6-96231b3b80d8
This effectively reverts r255744, and leaves the printing option tweaks.
We can add the name qualifiers easily in the backend.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@273008 91177308-0d34-0410-b5e6-96231b3b80d8