- Nov 11, 2009
-
-
Daniel Dunbar authored
the front-end (as far as the preprocessor goes), follow the usual logic of inserting the (original include path) name into the predefines buffer. This pushes the responsibility for handling this to PCH instead of the front-end. In PCH this requires being a little more clever when we diff the predefines buffers. Neither of these solutions are particularly great, I think what we eventually should do is something like gcc where we insert a special marker to indicate the PCH file, but then run the preprocessor as usual. This would be clearer and would allow us to drop the overly clever predefines handling. llvm-svn: 86806
-
Daniel Dunbar authored
llvm-svn: 86805
-
Daniel Dunbar authored
llvm-svn: 86801
-
Daniel Dunbar authored
- FileCheck is a *huuuuge* improvement here. - Still feels like we could use a better tool for this though, either teach llvm-dis to spit out the FileCheck syntax, or provide another tool to turn a .ll into a "matchable" input. - Also on my Christmas list is better FileCheck diagnostics with missing variables or mismatches. llvm-svn: 86800
-
Daniel Dunbar authored
tons of std::string trashing. I plan to move this and other fun string munging utilities to a StringRefExtras.h at some point if no one beats me to it. On a synthetic benchmark on x86_64, llvm-gcc actually generates code thats 10% faster using the StringRef version. gcc miscompiles the synthetic benchmark, which I'm crossing my fingers and hoping won't happen here. clang compiles the sythetic benchmark correctly (wootness), but the StringRef version is slower. Silly clang. llvm-svn: 86799
-
Ted Kremenek authored
the old builder API. This percolated a bunch of changes up to the Checker class (where CheckLocation has been renamed VisitLocation) and GRExprEngine. ProgramPoint now has the notion of a "LocationCheck" point (with PreLoad and PreStore respectively), and a bunch of the old ProgramPoints that are no longer used have been removed. llvm-svn: 86798
-
John McCall authored
anonymous members. Partial fix for PR 5390. llvm-svn: 86796
-
Mike Stump authored
interface. WIP. llvm-svn: 86793
-
Mike Stump authored
llvm-svn: 86792
-
John McCall authored
if (self = [super init]) Recognize it and only warn if -Wparentheses is explicitly enabled. llvm-svn: 86790
-
Fariborz Jahanian authored
objects. llvm-svn: 86778
-
Douglas Gregor authored
parameters. Rather than storing them as either declarations (for the non-dependent case) or expressions (for the dependent case), we now (always) store them as TemplateNames. The primary change here is to add a new kind of TemplateArgument, which stores a TemplateName. However, making that change ripples to every switch on a TemplateArgument's kind, also affecting TemplateArgumentLocInfo/TemplateArgumentLoc, default template arguments for template template parameters, type-checking of template template arguments, etc. This change is light on testing. It should fix several pre-existing problems with template template parameters, such as: - the inability to use dependent template names as template template arguments - template template parameter default arguments cannot be instantiation However, there are enough pieces missing that more implementation is required before we can adequately test template template parameters. llvm-svn: 86777
-
Daniel Dunbar authored
llvm-svn: 86776
-
Daniel Dunbar authored
llvm-svn: 86775
-
Daniel Dunbar authored
llvm-svn: 86774
-
Mike Stump authored
llvm-svn: 86772
-
John McCall authored
llvm-svn: 86764
-
Daniel Dunbar authored
llvm-svn: 86760
-
Daniel Dunbar authored
llvm-svn: 86757
-
Fariborz Jahanian authored
llvm-svn: 86755
-
Devang Patel authored
llvm-svn: 86750
-
- Nov 10, 2009
-
-
Ted Kremenek authored
llvm-svn: 86746
-
Eli Friedman authored
llvm-svn: 86745
-
Eli Friedman authored
necessary. llvm-svn: 86741
-
Eli Friedman authored
generated PHI node for the null check of a new operator. llvm-svn: 86738
-
Ted Kremenek authored
llvm-svn: 86733
-
Ted Kremenek authored
Make -Wsemicolon-before-method-body opt-in (and part of -Wextra). Addresses <rdar://problem/7381735>. llvm-svn: 86731
-
Daniel Dunbar authored
PreprocessorOptions. Global variables used as [in] [out] parameters considered harmful. llvm-svn: 86728
-
Ted Kremenek authored
llvm-svn: 86721
-
Benjamin Kramer authored
llvm-svn: 86720
-
Benjamin Kramer authored
llvm-svn: 86719
-
Dan Gohman authored
llvm-svn: 86717
-
Daniel Dunbar authored
from the logic part of clang-cc, and to enforce limited scoping. llvm-svn: 86711
-
Daniel Dunbar authored
llvm-svn: 86710
-
Daniel Dunbar authored
instead of reproducing their logic. llvm-svn: 86709
-
Douglas Gregor authored
handling template template parameters properly. This refactoring: - Parses template template arguments as id-expressions, representing the result of the parse as a template name (Action::TemplateTy) rather than as an expression (lame!). - Represents all parsed template arguments via a new parser-specific type, ParsedTemplateArgument, which stores the kind of template argument (type, non-type, template) along with all of the source information about the template argument. This replaces an ad hoc set of 3 vectors (one for a void*, which was either a type or an expression; one for a bit telling whether the first was a type or an expression; and one for a single source location pointing at the template argument). - Moves TemplateIdAnnotation into the new Parse/Template.h. It never belonged in the Basic library anyway. llvm-svn: 86708
-
Fariborz Jahanian authored
(Ted's feedback). llvm-svn: 86702
-
Fariborz Jahanian authored
global array of objects. llvm-svn: 86701
-
Ted Kremenek authored
CIndex: Only display diagnostics to llvm::errs() when the client has set the 'displayDiagnostics' option to 1 in clang_createIndex(). This fixes <rdar://problem/7370691>. llvm-svn: 86700
-
Mike Stump authored
llvm-svn: 86699
-