RecoveryExpr produced on a comparison
Using Clang-14, the following fails. In older versions, e.g. Clang-6, it used to work.
#include <stdio.h>
int main() {
std::vector<int> x(10);
bool b = x.size() > x.size();
if (b) { } // OK !
int s = x.size();
if (s < s) { } // OK!
if (x.size() < x.size()) {} // FAILURE!
if (((int)x.size()) < ((int)x.size())) {} // FAILURE!
}