Currently the following code hits an llvm_unreachable in CGDebugInfo::CreateTypeNode because DeducedTemplateSpecialization isn't handled.
// clang++ -std=c++1z -g test.cpp template <class T> struct S { S(T) {} }; S s(42);
This patch attempts to fix the handling of DeducedTemplateSpecialization as to correctly emit debug information. I've also attempted to write a test checking the emission of the debug information, but IDK if it's testing for the right output.
I'll put this in alphabetical order before committing.