[Sema] Diagnose template specializations with C linkage
According to the C++ standard, templates as well as their
specializations cannot have C language linkage. Clang currently does
not diagnose function template specializations and class template
specializations with C linkage.
This patch implements such a diagnostic and adds tests for it.
Can you add a test for a partial specialization? Your test for the class case only includes an explicit specialization.