This introduces a new flag ignored-reference-qualifiers for the existing "'A' qualifier on reference type B has no effect" diagnostic, as a child of ignored-qualifiers.
Rationale:
This particular diagnostic is enabled by default, but other parts of ignored-qualifiers are not. Anecdotally, a user may encounter this diagnostic in the wild, and, seeing it to be valuable, might try to raise it to error with -Werror=ignored-qualifiers, whereupon the other diagnostics the flag covers will also be raised, to the user's surprise and confusion. By splitting this diagnostic out into a separate flag, and marking it as a child of ignored-qualifiers, we allow the user more granular control of the diagnostics they care about, while maintaining backwards compatibility with existing build scripts.
Given that the test file contents are the same except for expected diagnostics, I would recommend combining them into a single test file with two // RUN lines. Something like this (untested, but hopefully it gives you the right idea):
// RUN: %clang_cc1 %s -std=c++11 -Wignored-qualifiers -Wno-ignored-reference-qualifiers -verify=both // RUN: %clang_cc1 %s -std=c++11 -Wignored-qualifiers -verify=both,qual const int scalar_c(); // both-warning{{'const' type qualifier on return type has no effect}} volatile int scalar_v(); // both-warning{{'volatile' type qualifier on return type has no effect}} const volatile int scalar_cv(); // both-warning{{'const volatile' type qualifiers on return type have no effect}} typedef int& IntRef; const IntRef ref_c(); // qual-warning{{'const' qualifier on reference type 'IntRef' (aka 'int &') has no effect}} volatile IntRef ref_v(); // qual-warning{{'volatile' qualifier on reference type 'IntRef' (aka 'int &') has no effect}} const volatile IntRef ref_cv(); // qual-warning{{'const' qualifier on reference type 'IntRef' (aka 'int &') has no effect}} \ qual-warning{{'volatile' qualifier on reference type 'IntRef' (aka 'int &') has no effect}} template<typename T> class container { using value_type = T; using reference = value_type&; reference get(); const reference get() const; // qual-warning{{'const' qualifier on reference type 'container::reference' (aka 'T &') has no effect}} };