Fix template class debug info for Visual Studio visualizers
authorAdrian McCarthy <amccarth@google.com>
Fri, 1 May 2020 22:51:02 +0000 (15:51 -0700)
committerAdrian McCarthy <amccarth@google.com>
Wed, 13 May 2020 21:20:18 +0000 (14:20 -0700)
commita549c0d00486bf01cb485e343d778fe4a3649a43
tree4f1192a21fdd47ceb30d5e0e2beb497594e4aaa3
parent3d9511a311a038d83022a31f2a846e76e21d70be
Fix template class debug info for Visual Studio visualizers

An earlier change eliminated spaces between the close brackets of nested
template lists.  Unfortunately that prevents the Windows debuggers from
matching some types to their corresponding visualizers (e.g., std::map).

This selects the SeparateTemplateClosers flag when generating CodeView.
Note that we were already making formatting adjustments under similar
circumstances for similar reasons.

This wasn't caught by existing tests because they were using only
-std=c++98.

Differential Revision: https://reviews.llvm.org/D79274
clang/lib/CodeGen/CGDebugInfo.cpp
clang/test/CodeGenCXX/debug-info-codeview-display-name.cpp