With this patch, we don't treat using ns::X as a first-class declaration like using Z = ns::Y, reference to X that goes through this using-decl is considered a direct reference (without the Underlying bit).
Fix the workaround in https://reviews.llvm.org/D87225 and https://reviews.llvm.org/D74054.
The previous Alias vs Underlying were pretty nice, but they were not enough to support our non-renaming-alias-underlying case. Looking for the feedback on the API change here.