summaryrefslogtreecommitdiffstats
path: root/clang/test/Sema/statements.c
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-04-09 00:35:39 +0000
committerDouglas Gregor <dgregor@apple.com>2010-04-09 00:35:39 +0000
commitc68e140657e40cda2f027beff923276b36e33684 (patch)
tree1a32c9fcccd9102ab6ca64a098c771ec4ebea5a6 /clang/test/Sema/statements.c
parent48b1804e7957ce379441e477602ac860a606e469 (diff)
downloadbcm5719-llvm-c68e140657e40cda2f027beff923276b36e33684.tar.gz
bcm5719-llvm-c68e140657e40cda2f027beff923276b36e33684.zip
Improve diagnostics when we fail to convert from a source type to a
destination type for initialization, assignment, parameter-passing, etc. The main issue fixed here is that we used rather confusing wording for diagnostics such as t.c:2:9: warning: initializing 'char const [2]' discards qualifiers, expected 'char *' [-pedantic] char *name = __func__; ^ ~~~~~~~~ We're not initializing a 'char const [2]', we're initializing a 'char *' with an expression of type 'char const [2]'. Similar problems existed for other diagnostics in this area, so I've normalized them all with more precise descriptive text to say what we're initializing/converting/assigning/etc. from and to. The warning for the code above is now: t.c:2:9: warning: initializing 'char *' from an expression of type 'char const [2]' discards qualifiers [-pedantic] char *name = __func__; ^ ~~~~~~~~ Fixes <rdar://problem/7447179>. llvm-svn: 100832
Diffstat (limited to 'clang/test/Sema/statements.c')
-rw-r--r--clang/test/Sema/statements.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/test/Sema/statements.c b/clang/test/Sema/statements.c
index 6da2daa01ac..52b9c7543d4 100644
--- a/clang/test/Sema/statements.c
+++ b/clang/test/Sema/statements.c
@@ -13,7 +13,7 @@ int test(int _x) {
// PR2374
int test2() { return ({L:5;}); }
-int test3() { return ({ {5;} }); } // expected-error {{incompatible type returning 'void', expected 'int'}}\
+int test3() { return ({ {5;} }); } // expected-error {{returning 'void' from a function with incompatible result type 'int'}}\
// expected-warning {{expression result unused}}
int test4() { return ({ ({5;}); }); }
int test5() { return ({L1: L2: L3: 5;}); }
OpenPOWER on IntegriCloud