Reverts llvm/llvm-project#96165
The change broke code like
#include <utility>
#include <vector>
struct Test {
std::vector<std::pair<int, Test>> v;
};
std::pair<int, Test> p;
under `-std=c++20`, apparently by triggering certain template
evaluations too eagerly.