- Feb 16, 2010
-
-
Daniel Dunbar authored
llvm-svn: 96316
-
Daniel Dunbar authored
llvm-svn: 96315
-
Daniel Dunbar authored
llvm-svn: 96314
-
Ted Kremenek authored
Implement printf argument type checking for '%s'. Fixes <rdar://problem/3065808>. llvm-svn: 96310
-
Douglas Gregor authored
llvm-svn: 96306
-
Douglas Gregor authored
llvm-svn: 96299
-
Douglas Gregor authored
comparing their types under the assumption that they are equivalent, rather than importing the types and then checking for compatibility. A few minor tweaks here: - Teach structural matching to handle compatibility between function types with prototypes and those without prototypes. - Teach structural matching that an incomplete record decl is the same as any other record decl with the same name. - Keep track of pairs of declarations that we have already checked (but failed to find as structurally matching), so we don't emit diagnostics repeatedly. - When importing a typedef of an anonymous tag, be sure to link the imported tag type to its typedef. With these changes, we survive a repeated import of <stdlib.h> and <stdio.h>. Alas, the ASTNodeImporter is getting a little grotty. llvm-svn: 96298
-
Ted Kremenek authored
to evaluate arguments. llvm-svn: 96293
-
- Feb 15, 2010
-
-
Benjamin Kramer authored
Add Sema support for __builtin_fpclassify by extending the existing check for __builtin_isinf and friends. Part of PR6083. llvm-svn: 96291
-
Fariborz Jahanian authored
(radar 7647953). llvm-svn: 96284
-
Chandler Carruth authored
methods. llvm-svn: 96283
-
Douglas Gregor authored
Tell ASTMerge to merge every declaration it sees, rather than cherry-picking those declarations that we know will work. llvm-svn: 96280
-
Douglas Gregor authored
two types in different AST contexts are equivalent. Rather than transforming the type from one context into the other context, we perform a deep structural comparison of the types. This change addresses a serious problem with recursive data types like struct ListNode { int value; struct ListNode *Next; } xList; llvm-svn: 96278
-
Fariborz Jahanian authored
those declared in it. This is to allow duplicate property diagnostics for properties declared in class extensions multiple times (radar 7629420) and for future use. llvm-svn: 96276
-
Fariborz Jahanian authored
(fixes radar 7649577). llvm-svn: 96270
-
John McCall authored
llvm-svn: 96253
-
Devang Patel authored
llvm-svn: 96245
-
Sanjiv Gupta authored
llvm-svn: 96244
-
Sanjiv Gupta authored
llvm-svn: 96242
-
Duncan Sands authored
isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris! llvm-svn: 96224
-
Chandler Carruth authored
they are re-checked on instantiation. llvm-svn: 96217
-
Zhongxing Xu authored
llvm-svn: 96211
-
John McCall authored
on the alloca. The fact that codegen makes this class of bug so wonderfully easy to make is embarrassing. llvm-svn: 96204
-
- Feb 14, 2010
-
-
Ted Kremenek authored
the LLVMConventionsChecker. llvm-svn: 96202
-
Ted Kremenek authored
that allocate heap memory. llvm-svn: 96184
-
Ted Kremenek authored
of operating on each code decl. This exposes two flaws in AnalysisConsumer that should eventually be fixed: (1) It is not possible to associate multiple "actions" with a single command line argument. This will require the notion of an "analysis" group, and possibly tablegen support. (although eventually we want to support dynamically loading analyses as well) (2) AnalysisConsumer may not actually be scanning the declarations in namespaces. We'll experiment first in LLVMConventionsChecker before changing the behavior in AnalysisConsumer. llvm-svn: 96183
-
Ted Kremenek authored
as imput. llvm-svn: 96182
-
Ted Kremenek authored
llvm-svn: 96181
-
Ted Kremenek authored
No functionality change. llvm-svn: 96180
-
Chris Lattner authored
llvm-svn: 96176
-
Sanjiv Gupta authored
llvm-svn: 96173
-
Anders Carlsson authored
llvm-svn: 96171
-
Benjamin Kramer authored
Pass StringRefs to InsertText/ReplaceText in RewriteObjC and remove a ton of unnecessary length arguments. llvm-svn: 96164
-
Zhongxing Xu authored
llvm-svn: 96154
-
Ted Kremenek authored
Currently these checks are intended to be largely syntactical, but may get more sophisticated over time. As an initial foray into this brave new world, emit a static analyzer warning when binding a temporary 'std::string' to an 'llvm::StringRef' where the lifetime of the 'std::string' does not outlive the 'llvm::StringRef'. llvm-svn: 96147
-
Ted Kremenek authored
(1) Since CXXMethodDecl subclasses FunctionDecl (and CXXDestructorDecl and CXXConversion subclass CXXMethodDecl), refactor switch statement to handle them all in one spot. (2) Use 'DeclarationName::getAsString()' to handle all functions that don't have simple identifiers (fixing a null dereference when scanning for specific functions). llvm-svn: 96146
-
John McCall authored
or that's been hidden by a non-type (in C++). The ideal C++ diagnostic here would note the hiding declaration, but this is a good start. llvm-svn: 96141
-
Anders Carlsson authored
llvm-svn: 96140
-
Anders Carlsson authored
llvm-svn: 96139
-
Anders Carlsson authored
llvm-svn: 96138
-