- Jan 18, 2011
-
-
Ted Kremenek authored
references by monitoring whether an access to a variable is solely to compute it's lvalue or to do an lvalue-to-rvalue conversion (i.e., a load). llvm-svn: 123777
-
- Jan 17, 2011
-
-
Anders Carlsson authored
llvm-svn: 123667
-
- Jan 16, 2011
-
-
Anders Carlsson authored
Fix a bug where the -Wmissing-noreturn would always treat constructors with base or member initializers as noreturn. llvm-svn: 123603
-
- Jan 15, 2011
-
-
Ted Kremenek authored
-Wuninitialized based on CFG dataflow analysis. WIP. llvm-svn: 123512
-
- Jan 08, 2011
-
-
Chandler Carruth authored
temporaries with no-return destructors. The CFG now properly supports temporaries and implicit destructors which both makes this kludge no longer work, and conveniently removes the need for it. Turn on CFG handling of implicit destructors and initializers. Several ad-hoc benchmarks don't indicate any measurable performance impact from growing the CFG, and it fixes real correctness problems with warnings. As a result of turning on these CFG elements, we started to tickle an inf-loop in the unreachable code logic used for warnings. The fix is trivial. llvm-svn: 123056
-
- Dec 15, 2010
-
-
Argyrios Kyrtzidis authored
Diagnostic pragmas are broken because we don't keep track of the diagnostic state changes and we only check the current/latest state. Problems manifest if a diagnostic is emitted for a source line that has different diagnostic state than the current state; this can affect a lot of places, like C++ inline methods, template instantiations, the lexer, etc. Fix the issue by having the Diagnostic object keep track of the source location of the pragmas so that it is able to know what is the diagnostic state at any given source location. Fixes rdar://8365684. llvm-svn: 121873
-
- Dec 06, 2010
-
-
John McCall authored
reason this is limited to C++, and it's certainly not limited to temporaries. llvm-svn: 120996
-
- Sep 16, 2010
-
-
Zhongxing Xu authored
and discussions with Ted and Jordy. llvm-svn: 114056
-
- Sep 09, 2010
-
-
Ted Kremenek authored
Enhance -Wreturn-type to not warn when control-flow is most likely limited by a switch statement explicitly covering all the cases for an enum value. llvm-svn: 113450
-
- Aug 26, 2010
-
-
John McCall authored
Clients of Sema don't need to know (for example) the list of diagnostics we support. llvm-svn: 112093
-
- Aug 25, 2010
-
-
John McCall authored
llvm-svn: 112032
-
John McCall authored
llvm-svn: 112027
-
- Aug 24, 2010
-
-
John McCall authored
llvm-svn: 111904
-
- Aug 12, 2010
-
-
Douglas Gregor authored
llvm-svn: 110945
-
- Jul 26, 2010
-
-
Dan Gohman authored
llvm-svn: 109440
-
- Jul 19, 2010
-
-
Zhongxing Xu authored
llvm-svn: 108694
-
- May 18, 2010
-
-
Chandler Carruth authored
a temporary with a noreturn destructor has been created. Fixes PR6884 for now. llvm-svn: 104000
-
- May 16, 2010
-
-
John McCall authored
compute a CFG for a function. llvm-svn: 103905
-
- Apr 30, 2010
-
-
Ted Kremenek authored
fatal error has occurred. llvm-svn: 102778
-
John McCall authored
if *none* of the successors of the call expression is the exit block. This matters when a call of bool type is the condition of (say) a while loop in a function with no statements after the loop. This *can* happen in C, but it's much more common in C++ because of overloaded operators. Suppresses some substantial number of spurious -Wmissing-noreturn warnings. llvm-svn: 102696
-
- Apr 17, 2010
-
-
Douglas Gregor authored
do *not* suggest that the function could be attribute 'noreturn'; overridden functions may end up returning. llvm-svn: 101572
-
- Apr 08, 2010
-
-
Ted Kremenek authored
unless they are used. I discussed this with Daniel Dunbar, and we agreed that this provides an inconsistent warnings experience for the user and that there were genuine cases where we wouldn't want to do this optimization. llvm-svn: 100800
-
Ted Kremenek authored
llvm-svn: 100750
-
Ted Kremenek authored
llvm-svn: 100730
-
- Mar 30, 2010
-
-
Rafael Espindola authored
This introduces FunctionType::ExtInfo to hold the calling convention and the noreturn attribute. The next patch will extend it to include the regparm attribute and fix the bug. llvm-svn: 99920
-
- Mar 29, 2010
-
-
Rafael Espindola authored
This patch moves some methods from QualType to Type and changes the users to use -> instead of . llvm-svn: 99805
-
- Mar 23, 2010
-
-
Ted Kremenek authored
encounter a definition. llvm-svn: 99243
-
Ted Kremenek authored
are called (transitively) by regular functions/blocks within a translation untion. llvm-svn: 99233
-
- Mar 20, 2010
-
-
Ted Kremenek authored
declaration is in a system header. llvm-svn: 99087
-
Ted Kremenek authored
This object controls when the warnings are executed, allowing the client code in Sema to selectively disable warnings as needed. Centralizing the logic for analysis-based warnings allows us to optimize when and how they are run. Along the way, remove the redundant logic for the 'check fall-through' warning for blocks; now the same logic is used for both blocks and functions. llvm-svn: 99085
-