When _Compare is a function parameter already (so it's not void and it's not an abominable function type), add_lvalue_reference_t<_Compare> is simply a synonym for _Compare&. We don't need to pull in <type_traits> and instantiate a template trait to figure that out.
Inspired by D108393.
This is arguably one small step on the path to eventually rationalizing our __comp_ref_type weirdness. (Ultimately, we want our internal predicate type never to be a reference type, so that we can stop specifying template arguments explicitly. This definitely doesn't get us there, but at least it eliminates some reducible complexity in the same general area.)