- Oct 15, 2008
-
-
Ted Kremenek authored
Enhance dead store checker to not flag preincrements to dead variables where the preincrement is a subexpression, e.g. foo(++x); This can cause false negatives, but will remove a whole class of false positives. llvm-svn: 57554
-
Argyrios Kyrtzidis authored
Instead of using two sets of Decl kinds (Struct/Union/Class and CXXStruct/CXXUnion/CXXClass), use one 'Record' and one 'CXXRecord' Decl kind and make tag kind a property of TagDecl. Cleans up the code a bit and better reflects that Decl class structure. llvm-svn: 57541
-
Daniel Dunbar authored
llvm-svn: 57540
-
Steve Naroff authored
Note: One day, we should consider moving the actual diags to ObjCQualifiedIdTypesAreCompatible(), since it has more information on the actual problem. GCC currently emits slightly more instructive errors for some cases involving protocols. I added a FIXME to the code. llvm-svn: 57529
-
- Oct 14, 2008
-
-
Daniel Dunbar authored
llvm-svn: 57520
-
Argyrios Kyrtzidis authored
llvm-svn: 57514
-
Argyrios Kyrtzidis authored
llvm-svn: 57511
-
Daniel Dunbar authored
llvm-svn: 57502
-
Daniel Dunbar authored
llvm-svn: 57501
-
Daniel Dunbar authored
llvm-svn: 57499
-
Chris Lattner authored
llvm-svn: 57479
-
Daniel Dunbar authored
on non-float types. llvm-svn: 57477
-
Daniel Dunbar authored
- Follows the MSVC (original) implementation, including support of pack(show) (useful for testing). - Implements support for named pack records which gcc seems to ignore (or implements incorrectly). - Not currently wired to anything, only functionality change is the type checking of the pragma. llvm-svn: 57476
-
- Oct 13, 2008
-
-
Ted Kremenek authored
Add "-analyze-headers" option to scan-build that passes the option -analyzer-opt-analyze-headers to clang. llvm-svn: 57467
-
Daniel Dunbar authored
- Currently still lives in CGCall.cpp but is intended to be the target specific place for hooking ABI information. - Select ABIInfo to use based on Target's prefix and pointer width. llvm-svn: 57445
-
- Oct 12, 2008
-
-
Argyrios Kyrtzidis authored
llvm-svn: 57420
-
Argyrios Kyrtzidis authored
No functionality change. llvm-svn: 57417
-
Argyrios Kyrtzidis authored
When the static type on the Decl side is a subclass of DeclContext the compiler will use a "inlinable" static_cast, instead of always using an out-of-line function call. Note, though, that the isa<> check still uses an out-of-line function call. llvm-svn: 57415
-
Chris Lattner authored
wraps comments in <i> tags. Extend rewrite tokens to support this minimal functionality. llvm-svn: 57409
-
Chris Lattner authored
and lets a client iterate over it. llvm-svn: 57407
-
Chris Lattner authored
playground to experiment with some new rewriter approaches. For now it is probably the most complex version of 'cat' ever invented. llvm-svn: 57406
-
Chris Lattner authored
Rename -dumptokens to -dump-tokens. llvm-svn: 57405
-
Chris Lattner authored
were setting a kind and then forming it. This is just a minor API cleanup, no functionality change. llvm-svn: 57404
-
Chris Lattner authored
unterminated. llvm-svn: 57403
-
Chris Lattner authored
keep comment mode, instead of returning false. This matches SkipWhitespace. llvm-svn: 57402
-
Chris Lattner authored
even whitespace, as tokens from the file. This is enabled with L->SetKeepWhitespaceMode(true) on a raw lexer. In this mode, you too can use clang as a really complex version of 'cat' with code like this: Lexer RawLex(SourceLocation::getFileLoc(SM.getMainFileID(), 0), PP.getLangOptions(), File.first, File.second); RawLex.SetKeepWhitespaceMode(true); Token RawTok; RawLex.LexFromRawLexer(RawTok); while (RawTok.isNot(tok::eof)) { std::cout << PP.getSpelling(RawTok); RawLex.LexFromRawLexer(RawTok); } This will emit exactly the input file, with no canonicalization or other translation. Realistic clients actually do something with the tokens of course :) llvm-svn: 57401
-
Chris Lattner authored
llvm-svn: 57399
-
Chris Lattner authored
llvm-svn: 57398
-
Chris Lattner authored
ivar. llvm-svn: 57397
-
Chris Lattner authored
llvm-svn: 57396
-
Chris Lattner authored
same we we do an unterminated string or character literal. This makes it so we can guarantee that the lexer never calls into the preprocessor (which would be suicide for a raw lexer). llvm-svn: 57395
-
Chris Lattner authored
llvm-svn: 57394
-
Chris Lattner authored
using LexRawToken, create one and use LexFromRawLexer. This avoids twiddling the RawLexer flag around and simplifies some code (even speeding raw lexing up a tiny bit). This change also improves the token paster to use a Lexer on the stack instead of new/deleting it. llvm-svn: 57393
-
Chris Lattner authored
llvm-svn: 57392
-
Chris Lattner authored
llvm-svn: 57391
-
Chris Lattner authored
llvm-svn: 57390
-
Chris Lattner authored
llvm-svn: 57389
-
- Oct 10, 2008
-
-
Steve Naroff authored
llvm-svn: 57354
-
Steve Naroff authored
This completes the fix for <rdar://problem/6272905> clang block rewriter: parameter to function not imported into block?. llvm-svn: 57350
-
Seo Sanghyeon authored
llvm-svn: 57341
-