зеркало из https://github.com/microsoft/clang-1.git
Make the presentation of the warnings on 'x + y ? 1 : 0' a bit more
pretty. In particular this makes it much easier for me to read messages such as: x.cc:42: ?: has lower ... Where I'm inclined to associate the third ':' with a missing column number, but in fact column numbers have been turned off. Similar punctuation collisions happened elsewhere as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133121 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
43bc78dd44
Коммит
9d4562445d
|
@ -2757,12 +2757,12 @@ def note_precedence_bitwise_silence : Note<
|
|||
"place parentheses around the %0 expression to silence this warning">;
|
||||
|
||||
def warn_precedence_conditional : Warning<
|
||||
"?: has lower precedence than %0; %0 will be evaluated first">,
|
||||
"operator '?:' has lower precedence than '%0'; '%0' will be evaluated first">,
|
||||
InGroup<Parentheses>;
|
||||
def note_precedence_conditional_first : Note<
|
||||
"place parentheses around the ?: expression to evaluate it first">;
|
||||
"place parentheses around the '?:' expression to evaluate it first">;
|
||||
def note_precedence_conditional_silence : Note<
|
||||
"place parentheses around the %0 expression to silence this warning">;
|
||||
"place parentheses around the '%0' expression to silence this warning">;
|
||||
|
||||
def warn_logical_instead_of_bitwise : Warning<
|
||||
"use of logical %0 with constant operand; switch to bitwise %1 or "
|
||||
|
|
|
@ -42,21 +42,21 @@ void bitwise_rel(unsigned i) {
|
|||
_Bool someConditionFunc();
|
||||
|
||||
void conditional_op(int x, int y, _Bool b) {
|
||||
(void)(x + someConditionFunc() ? 1 : 2); // expected-warning {{?: has lower precedence than +}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the + expression to silence this warning}}
|
||||
(void)(x + someConditionFunc() ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '+'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '+' expression to silence this warning}}
|
||||
|
||||
(void)(x - b ? 1 : 2); // expected-warning {{?: has lower precedence than -}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the - expression to silence this warning}}
|
||||
(void)(x - b ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '-'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '-' expression to silence this warning}}
|
||||
|
||||
(void)(x * (x == y) ? 1 : 2); // expected-warning {{?: has lower precedence than *}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the * expression to silence this warning}}
|
||||
(void)(x * (x == y) ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '*'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '*' expression to silence this warning}}
|
||||
|
||||
(void)(x / !x ? 1 : 2); // expected-warning {{?: has lower precedence than /}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the / expression to silence this warning}}
|
||||
(void)(x / !x ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '/'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '/' expression to silence this warning}}
|
||||
|
||||
|
||||
(void)(x % 2 ? 1 : 2); // no warning
|
||||
|
|
|
@ -4,17 +4,17 @@
|
|||
bool someConditionFunc();
|
||||
|
||||
void conditional_op(int x, int y, bool b) {
|
||||
(void)(x + someConditionFunc() ? 1 : 2); // expected-warning {{?: has lower precedence than +}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the + expression to silence this warning}}
|
||||
(void)(x + someConditionFunc() ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '+'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '+' expression to silence this warning}}
|
||||
|
||||
(void)(x - b ? 1 : 2); // expected-warning {{?: has lower precedence than -}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the - expression to silence this warning}}
|
||||
(void)(x - b ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '-'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '-' expression to silence this warning}}
|
||||
|
||||
(void)(x * (x == y) ? 1 : 2); // expected-warning {{?: has lower precedence than *}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the * expression to silence this warning}}
|
||||
(void)(x * (x == y) ? 1 : 2); // expected-warning {{operator '?:' has lower precedence than '*'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '*' expression to silence this warning}}
|
||||
}
|
||||
|
||||
class Stream {
|
||||
|
@ -25,7 +25,7 @@ public:
|
|||
};
|
||||
|
||||
void f(Stream& s, bool b) {
|
||||
(void)(s << b ? "foo" : "bar"); // expected-warning {{?: has lower precedence than <<}} \
|
||||
// expected-note {{place parentheses around the ?: expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the << expression to silence this warning}}
|
||||
(void)(s << b ? "foo" : "bar"); // expected-warning {{operator '?:' has lower precedence than '<<'}} \
|
||||
// expected-note {{place parentheses around the '?:' expression to evaluate it first}} \
|
||||
// expected-note {{place parentheses around the '<<' expression to silence this warning}}
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче