Check for qualified function types after substituting into the operand
authorRichard Smith <richard-llvm@metafoo.co.uk>
Thu, 3 Oct 2019 18:55:23 +0000 (18:55 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Thu, 3 Oct 2019 18:55:23 +0000 (18:55 +0000)
commit5d96b4ce288241f58372ef9d951216bf28996f57
tree6b534e84cef78bbd5f797a0ab0a0b8a9dfd12a2e
parentfb13e65acf0b7de3dd0b60b6312df07fdf9da652
Check for qualified function types after substituting into the operand
of 'typeid'.

This is a rare place where it's valid for a function type to be
substituted but not valid for a qualified function type to be
substituted, so needs a special check.

llvm-svn: 373648
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/include/clang/Sema/Sema.h
clang/lib/Sema/SemaExprCXX.cpp
clang/lib/Sema/SemaType.cpp
clang/test/SemaTemplate/instantiate-expr-4.cpp