aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-03-07AST: fix build since r152060Dylan Noblesmith
The declarations of the operators no longer matched. The definitions in ASTContext.h had 'throw()' removed, but it was still present in Attr.h. Somehow the buildbots missed this. clang merely warns about a missing 'throw()' specification and suggested a Fix-It adding it back, but gcc 4.5 is not so forgiving and gives an error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152167 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[AST] VarDecl::hasDefinition() - Early exit if we find a strong definition.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152166 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[AST] FunctionDecl::getBuiltinID() - Eliminate spurious calls to getASTContextDaniel Dunbar
-- which is very much not free -- in the common case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152165 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Fix horrific CFG bug where '@autoreleasepool' would be put in a dangling ↵Ted Kremenek
block in the CFG. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152163 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Missing period.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152160 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Whitespace.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152159 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Cleanup (style). Thanks to Argyrios for catchingSean Callanan
this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152158 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06commit access verified, revert changeMichael Han
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152156 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06test commit accessMichael Han
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152155 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06CMake: Fix build to add clangEdit to USED_LIBS.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152154 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[objcmt] Add a triple to test/ARCMT/objcmt-subscripting-literals.mArgyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152151 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Extended the UnknownAnyTy resolver to handleSean Callanan
blocks with unknown return types. This allows LLDB to call blocks even when their return types aren't provided in the debug information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152147 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06get rid of an unsued variable warning.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152146 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[driver] What was implemented in r152130 was actually -fno-inline-functions, notChad Rosier
-fno-inline. Part of rdar://10972766 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152145 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Just use memcpy directly, uninitialized_copy requires an <algorithm> include.Benjamin Kramer
Newer libstdc++s don't include it transitively everywhere. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152142 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Add new code migrator support for migrating existing Objective-C code to useTed Kremenek
the new Objective-C NSArray/NSDictionary/NSNumber literal syntax. This introduces a new library, libEdit, which provides a new way to support migration of code that improves on the original ARC migrator. We now believe that most of its functionality can be refactored into the existing libraries, and thus this new library may shortly disappear. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152141 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Enable default @synthesize by default.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152140 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Add static analyzer support for new NSArray/NSDictionary/NSNumber literals.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152139 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06And libclang cursor/indexing support for new Objective-C ↵Ted Kremenek
NSArray/NSDictionary/NSNumber literals. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152138 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Add clang support for new Objective-C literal syntax for NSDictionary, NSArray,Ted Kremenek
NSNumber, and boolean literals. This includes both Sema and Codegen support. Included is also support for new Objective-C container subscripting. My apologies for the large patch. It was very difficult to break apart. The patch introduces changes to the driver as well to cause clang to link in additional runtime support when needed to support the new language features. Docs are forthcoming to document the implementation and behavior of these features. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152137 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Whitespace.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152134 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Minor fix for r152130. Put -fno-inline in f_Group.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152132 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[driver] Add support for -fno-inline.Chad Rosier
rdar://10972766 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152130 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Undo patch for // rdar://10735698Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152128 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06AST: Move several Type::is...Type() functions to be inline.Daniel Dunbar
- These functions are both (a) very commonly called and (b) excellent candidates for CSE in the callers in which they are commonly used. - That isHalfType() is hot makes me sad, but it is trivially when inlined (and a huge waste of time when not!!!). - The extra IsEnumDeclComplete() function is a hack to break the cycle between Type.h and Decl.h, I'm not sure of how to do this more cleanly, but am open to ideas. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152126 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06NamespaceDecl: Call non-virtual method inside virtual method, not the other ↵Benjamin Kramer
way round. Moves the virtual call out of a hot path during lookup, no other functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152124 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06objective-c modern translator. Don't ignore unnamed bitfieldsFariborz Jahanian
when rewriting. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152123 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Use newly introduced const-goodness of TinyPtrVector.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152108 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06User-defined literals: reject string and character UDLs in all places where theRichard Smith
grammar requires a string-literal and not a user-defined-string-literal. The two constructs are still represented by the same TokenKind, in order to prevent a combinatorial explosion of different kinds of token. A flag on Token tracks whether a ud-suffix is present, in order to prevent clients from needing to look at the token's spelling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152098 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Use TinyPtrVector instead of UsuallyTinyPtrVector.Argyrios Kyrtzidis
The latter is just a worse version of the former. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152096 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Move clang/Basic/UsuallyTinyPtrVector.h to llvm/ADT/UsuallyTinyPtrVector.h.Argyrios Kyrtzidis
Depends on llvm commit r152090. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152091 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[analyzer] add a diagnostic event when entering a call via inlining, within ↵Ted Kremenek
the callee, and add an edge. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152086 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[analyzer] 'Looping back to the head of the loop' diagnostics are prunable.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152083 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Move include/clang/AST/UsuallyTinyPtrVector.h -> ↵Argyrios Kyrtzidis
include/clang/Basic/UsuallyTinyPtrVector.h and add an erase method to it. Patch by Andrew Craik! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152082 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[analyzer] Remove now-unused constant. No functionality change.Jordy Rose
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152080 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[analyzer] Fix unnecessary dyn_cast_or_null. No functionality change.Jordy Rose
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152078 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06Add some doxygen comments.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152075 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-06[tablegen] Make sure that the code that is determining the order of warning ↵Argyrios Kyrtzidis
groups is shared to avoid any "misalignment" if indices. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152074 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05Teak CallAndMessageChecker to only warn about uninitialized struct fields in ↵Ted Kremenek
call arguments when the called function is never inlined. Fixes <rdar://problem/10977037>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152073 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05[analyzer] Bump up the size of the functions that should beAnna Zaks
considered for inlining to 200 BBs. Setting the max to 10 BBs introduced several false negatives, we'll reevaluate the setting later on along with other inlining heuristics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152072 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05Minor refactoring for previous patch for // rdar://10735698Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152071 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05static_assert: Allow any string-literal as the message, not just a characterRichard Smith
string literal, and adjust the diagnostic code to match. This also causes us to escape any control characters in the message. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152069 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05Teach SimpleSValBuilder that (in the absence of more information) stack ↵Ted Kremenek
memory doesn't alias symbolic memory. This is a heuristic/hack, but works well in practice. Fixes <rdar://problem/10978247>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152065 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05AST/stats: Don't effectively use an out-of-line function to return a staticDaniel Dunbar
bool. Ugh. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152062 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05ASTContext: Don't use nothrow specifications on the new operators for allocatingDaniel Dunbar
from the ASTContext. - Doing so requires the compiler to generate null checks against the returned result, but the BumpPtrAllocator never returns null pointers. - The optimizer can usually eliminate such checks, but not always, so this gives us tighter codegen in some places. - It would be really nice if we could just use __builtin_unreachable or something to tell the optimizer that the allocator never returns null, but LLVM isn't currently that smart. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152060 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05[analyzer] Time the execution (per each TU) with -analyzer-stats.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152059 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05build/compiler-rt: Stop forcing off -integrated-as for compiler-rt builds.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152054 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05If the element type of an initializer list has a destructor, make sure we ↵Sebastian Redl
check it. Fixes PR12178. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152048 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05patch to optionally warn for block implementations without explicit Fariborz Jahanian
return types that return non-void values. // rdar://10735698 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152047 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-05Add MCRegisterInfo to the MCInstPrinter factory function interface.Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152046 91177308-0d34-0410-b5e6-96231b3b80d8