dc7a4f5d7a7e3b60d4dc4a80338d7a2728540998 |
|
30-Apr-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Don't treat a non-deduced 'auto' type as being type-dependent. Instead, there are now two distinct canonical 'AutoType's: one is the undeduced 'auto' placeholder type, and the other is a deduced-but-dependent type. All deduced-to-a-non-dependent-type cases are still non-canonical. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
601e6e894c2a38243588b375bed0b9a9e60060bb |
|
11-Jan-2013 |
Enea Zaffanella <zaffanella@cs.unipr.it> |
Fixed an assertion failure triggered by invalid code. Set invalid type of declarator after emitting error diagnostics, so that it won't be later considered when instantiating the template. Added test5_inst in test/SemaCXX/condition.cpp for non-regression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
b9c6261d02f688d0a9a36b736ad5956fbc737854 |
|
30-Jul-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Improvements to vexing-parse warnings. Make the no-parameters case more accurate by asking the parser whether there was an ambiguity rather than trying to reverse-engineer it from the DeclSpec. Make the with-parameters case have better diagnostics by using semantic information to drive the warning, improving the diagnostics and adding a fixit. Patch by Nikola Smiljanic. Some minor changes by me to suppress diagnostics for declarations of the form 'T (*x)(...)', which seem to have a very high false positive rate, and to reduce indentation in 'warnAboutAmbiguousFunction'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
625bb569df0c34feec0d52c0ec5215f21ef2e054 |
|
14-Feb-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Generalize -Wempty-body: warn when statement body is empty (closes: PR11329) * if, switch, range-based for: warn if semicolon is on the same line. * for, while: warn if semicolon is on the same line and either next statement is compound statement or next statement has more indentation. Replacing the semicolon with {} or moving the semicolon to the next line will always silence the warning. Tests from SemaCXX/if-empty-body.cpp merged into SemaCXX/warn-empty-body.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
7984de35644701c0d94336da7f2215d4c26d9f5b |
|
13-Jan-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Improve 0-argument -Wvexing-parse diagnostic by adding notes with fix-its: - If the declarator is at the start of a line, and the previous line contained another declarator and ended with a comma, then that comma was probably a typo for a semicolon: int n = 0, m = 1, l = 2, // k = 5; myImportantFunctionCall(); // oops! - If removing the parentheses would correctly initialize the object, then produce a note suggesting that fix. - Otherwise, if there is a simple initializer we can suggest which performs value-initialization, then provide a note suggesting a correction to that initializer. Sema::Declarator now tracks the location of the comma prior to the declarator in the declaration, if there is one, to facilitate providing the note. The code to determine an appropriate initializer from the -Wuninitialized warning has been factored out to allow use in both that and -Wvexing-parse. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148072 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
2f0e88a87cea6d21429d9f5c0b1c53f24caf77cf |
|
06-Jan-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
David Blaikie and Chandler would like us to diagnose int f(); in function scopes under -Wvexing-parse, so now we do. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147649 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
2def77399ab3088106a2d61372344f5b7104e1a2 |
|
09-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Add notes for suppressing and (if it's a zero-arg function returning bool) fixing the function-to-bool conversion warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146280 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
26b45d86085a125af036dbcf85dad3087b664ab2 |
|
06-Dec-2011 |
Richard Trieu <rtrieu@google.com> |
Switch a cast to a dyn_cast and check the pointer before using. Fixes a crash in the following code: void test4(bool (&x)(void)) { while (x); } git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
e14ca9f509dc22d8fcc5d21d70d28a5848983b42 |
|
05-Dec-2011 |
Lang Hames <lhames@gmail.com> |
Add a warning for implicit conversion from function literals (and static methods) to bool. E.g. void foo() {} if (f) { ... // <- Warns here. } Only applies to non-weak functions, and does not apply if the function address is taken explicitly with the addr-of operator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145849 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
db7abf78dedc2ef6ccb42b3dac6ab330fe2ea469 |
|
28-Jun-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove the call to GetTypeForDeclarator in Sema::ActOnCXXConditionDeclaration. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
2ba68b29645a1d0acb86348b61f137e0ade8864b |
|
28-Jun-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Cut down a few of the excess errors in the test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
abc56c726178fc7c8a3f45185768426a6e9d584e |
|
04-Dec-2010 |
John McCall <rjmccall@apple.com> |
When deciding whether to complain about the type of a boolean condition, use the type of the expression *after* array/function decay. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120895 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
73061d054128e486e70e0f2874b23d6eca067e5b |
|
19-Mar-2010 |
John McCall <rjmccall@apple.com> |
Pretty-print anonymous types using their kind and presumed location. Fixes PR6643. Patch by Mike M! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
30ab37122300a5f6664b8ae2d0b43b4396eb6bcb |
|
18-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
For -Wswitch-enum warnings, be sure to look through typedefs of enum types. Fixes <rdar://problem/7643909>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
220ccbf2c9ef97034cce80561f9f46c4f1f63bc7 |
|
13-Jan-2010 |
John McCall <rjmccall@apple.com> |
Improve the reporting of non-viable overload candidates by noting the reason why the candidate is non-viable. There's a lot we can do to improve this, but it's a good start. Further improvements should probably be integrated with the bad-initialization reporting routines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
b1622a1fd7b7f4ab8d00d0183d17c90ad25c14e3 |
|
06-Jan-2010 |
John McCall <rjmccall@apple.com> |
Improve the diagnostics used to report implicitly-generated class members as parts of overload sets. Also, refer to constructors as 'constructors' rather than functions. Adjust a lot of tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92832 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
cfdc81a83467973b14e4ea5e9e9af1690f135415 |
|
19-Dec-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Initialization improvements: addition of string initialization and a few small bug fixes in SemaInit, switch over SemaDecl to use it more often, and change a bunch of diagnostics which are different with the new initialization code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
7abfbdbc97ad8e7f340789f751df1e32b10118b4 |
|
19-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Switch more of Sema::CheckInitializerTypes over to InitializationSequence. Specially, switch initialization of a C++ class type (either copy- or direct-initialization). Also, make sure that we create an elidable copy-construction when performing copy initialization of a C++ class variable. Fixes PR5826. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
a5728872c7702ddd09537c95bc3cbd20e1f2fb09 |
|
15-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
99e9b4d172f6877e6ba5ebe75bb8238721f5e01c |
|
25-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Eliminate CXXConditionDeclExpr with extreme prejudice. All statements that involve conditions can now hold on to a separate condition declaration (a VarDecl), and will use a DeclRefExpr referring to that VarDecl for the condition expression. ForStmts now have such a VarDecl (I'd missed those in previous commits). Also, since this change reworks the Action interface for if/while/switch/for, use FullExprArg for the full expressions in those expressions, to ensure that we're emitting Note that we are (still) not generating the right cleanups for condition variables in for statements. That will be a follow-on commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
d7d5f0223bd30dfd618762349c6209dd1d5ea3e6 |
|
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Rename clang to clang-cc. Tests and drivers updated, still need to shuffle dirs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
3cb069213c8502dbb7a67860d40122d869ed8fd6 |
|
07-Feb-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Make one expected-diag directive match exactly one actual diagnostic. This uncovers some bugs, so several test cases now fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
09f41cf63f4df0bf4e98ee473e44e9a95b68f0ff |
|
14-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Introduce support for C++0x explicit conversion operators (N2437) Small cleanup in the handling of user-defined conversions. Also, implement an optimization when constructing a call. We avoid recomputing implicit conversion sequences and instead use those conversion sequences that we computed as part of overload resolution. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
61366e9cd41a6dbde4e66416dac21269c8ac1d94 |
|
24-Dec-2008 |
Douglas Gregor <dgregor@apple.com> |
Correct the order in which we cope with end-of-class-definition semantics and improve our handling of default arguments. Specifically, we follow this order: - As soon as the see the '}' in the class definition, the class is complete and we add any implicit declarations (default constructor, copy constructor, etc.) to the class. - If there are any default function arguments, parse them - If there were any inline member function definitions, parse them As part of this change, we now keep track of the the fact that we've seen unparsed default function arguments within the AST. See the new ParmVarDecl::hasUnparsedDefaultArg member. This allows us to properly cope with calls inside default function arguments to other functions where we're making use of the default arguments. Made some C++ error messages regarding failed initializations more specific. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61406 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
5f4a6829dc58cab2f76e2b98492859aa3b91e3f2 |
|
24-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Make all the 'redefinition' diagnostics more consistent, and make the "previously defined here" diagnostics all notes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
9f4d86389f99c5d66664382add340a2ea19ad134 |
|
22-Nov-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Fix test cases broken by quote normalization in diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
0777972d38a3125efed962b045704c30ae6965cf |
|
31-Oct-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Implement semantic checking of static_cast and dynamic_cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58509 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
6314ff264c345b5babb9faf50dad0bc68d7bd74e |
|
11-Sep-2008 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Do implicit conversion to bool for the condition in a do-while statement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
4c0f56b999f5b079f338ac499513ee8e3af70275 |
|
11-Sep-2008 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In the 'condition.cpp' test case, make sure that condition declarations are local to the statement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56077 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|
5921093cf1c2e9a8bd1a22b6f612e551bae7476b |
|
10-Sep-2008 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Implement Sema support for the 'condition' part of C++ selection-statements and iteration-statements (if/switch/while/for). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaCXX/condition.cpp
|