summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a -Wreturn-type warning due to this field not explicitly having theChandler Carruth2011-09-101-1/+1
| | | | | | enumeration type. llvm-svn: 139445
* Emit debug info for wchar_t.Devang Patel2011-09-101-0/+4
| | | | llvm-svn: 139443
* Don't crash when we fail to load a module. It's unbecoming of aDouglas Gregor2011-09-101-77/+79
| | | | | | well-bred compiler like Clang. llvm-svn: 139442
* Clean up our handling of Objective-C definitions in AST files. RatherDouglas Gregor2011-09-104-14/+21
| | | | | | | | | than having CodeGen check whether a declaration comes from an AST file (which it shouldn't know or care about), make sure that the AST writer and reader pass along "interesting" declarations that CodeGen needs to know about. llvm-svn: 139441
* [analyzer] -analyze-function for ObjectiveC should check if any of the ↵Anna Zaks2011-09-101-1/+1
| | | | | | methods match the name (not only the first one). llvm-svn: 139439
* Kill of the Decl::PCHLevel field entirely. We now only need to knowDouglas Gregor2011-09-103-23/+1
| | | | | | whether a Decl was deserialized from an AST file (any AST file). llvm-svn: 139438
* Extend the Stmt AST to make it easier to look through label, default,Chandler Carruth2011-09-102-6/+18
| | | | | | | | | | | and case statements. Use this to make the logic in the CFG builder more robust at finding the actual statements within a compound statement, even when there are many layers of labels obscuring it. Also extend the test cases for a large chunk of PR10063. Still more work to do here though. llvm-svn: 139437
* Eliminate all but one caller of Decl::getPCHLevel()Douglas Gregor2011-09-092-4/+2
| | | | llvm-svn: 139430
* Introduce a new predicate Decl::isFromASTFile() to determine whether aDouglas Gregor2011-09-093-25/+25
| | | | | | | | declaration was deserialized from an AST file. Use this instead of Decl::getPCHLevel() wherever possible. This is a simple step toward killing off Decl::getPCHLevel(). llvm-svn: 139427
* Thread safety: removing unnecessary import and reordering import listCaitlin Sadowski2011-09-091-5/+5
| | | | llvm-svn: 139426
* Thread safety: removing unnecessary importCaitlin Sadowski2011-09-091-1/+0
| | | | llvm-svn: 139425
* Remove trailing } in comment.Julien Lerouge2011-09-091-1/+1
| | | | llvm-svn: 139424
* Bring llvm.annotation* intrinsics support back to where it was in llvm-gcc: canJulien Lerouge2011-09-0910-76/+218
| | | | | | | annotate global, local variables, struct fields, or arbitrary statements (using the __builtin_annotation), rdar://8037476. llvm-svn: 139423
* In the ASTReader, replace the never-NULL Preprocessor pointer with aDouglas Gregor2011-09-091-85/+59
| | | | | | | Preprocessor reference. Simplify some code along the way, so there is no separate "initialize the preprocessor" step. llvm-svn: 139418
* Add smarter sorting of overload candidates that failed template deduction.Kaelyn Uhrain2011-09-091-0/+37
| | | | llvm-svn: 139417
* Carry the debug information from single exit unified return blockEric Christopher2011-09-091-1/+2
| | | | | | | | along with the new insert point. Fixes PR10829 llvm-svn: 139416
* In ASTReader, replace the never-NULL ASTContext pointer with anDouglas Gregor2011-09-093-328/+294
| | | | | | | | ASTContext reference. Remove all of the extra checking and logic that was used to cope with a NULL ASTContext. No effective functionality change. llvm-svn: 139413
* Friends cannot be declared module-privateDouglas Gregor2011-09-091-1/+8
| | | | llvm-svn: 139411
* Mark the translation unit as having lexical/visible storage only when we ↵Douglas Gregor2011-09-091-4/+5
| | | | | | actually have data for that lexical or visible storage llvm-svn: 139409
* Back out r139358 "[PCH] When loading the decls linked to anDouglas Gregor2011-09-091-8/+0
| | | | | | | | identifier, also make them visible in the translation unit," which isn't needed now that John's eliminated the AST dependency in blocks CodeGen. llvm-svn: 139408
* Specializations cannot be module-hidden. Diagnose attempts to do so.Douglas Gregor2011-09-093-7/+31
| | | | llvm-svn: 139406
* Treat the weak export of block runtime symbols as a deployment-targetJohn McCall2011-09-096-90/+71
| | | | | | | | feature akin to the ARC runtime checks. Removes a terrible hack where IR gen needed to find the declarations of those symbols in the translation unit. llvm-svn: 139404
* objc rewriter - Add rewriter test for new instancetypeFariborz Jahanian2011-09-091-1/+3
| | | | | | | | along with minor rewriter fix to handle that. This test is still incomplete due to rewriter issues unrelated to instancetype. llvm-svn: 139403
* Don't produce 'instancetype' as the type of a message send expression. Map ↵Douglas Gregor2011-09-091-2/+9
| | | | | | it down to 'id'. llvm-svn: 139394
* __module_private__ is inherited by redeclarations of an entity, andDouglas Gregor2011-09-095-15/+44
| | | | | | must also be present of the first declaration of that entity. llvm-svn: 139384
* Propagate __module_private__ from previous declarations to laterDouglas Gregor2011-09-092-4/+24
| | | | | | declarations. llvm-svn: 139380
* When type-checking a call to an overloaded, builtin atomic operation,Douglas Gregor2011-09-091-4/+11
| | | | | | | construct a new DeclRefExpr rather than re-using the existing DeclRefExpr. Patch by Likai Liu, fixes PR8345. llvm-svn: 139373
* Thread safety: This patch deals with previously unhandled cases when ↵Caitlin Sadowski2011-09-092-21/+41
| | | | | | building lock expressions. We now resolve this expressions, avoid crashing when encountering cast expressions, and have a diagnostic for unresolved lock expressions llvm-svn: 139370
* Thread Safety: Moving the analysis to a new fileCaitlin Sadowski2011-09-093-799/+796
| | | | llvm-svn: 139369
* Thread safety: refactoring test casesCaitlin Sadowski2011-09-091-14/+3
| | | | llvm-svn: 139368
* Thread safety: refactoring to use an error handlerCaitlin Sadowski2011-09-091-134/+251
| | | | llvm-svn: 139367
* Update comment because JumpDiagnostics.cpp is not just about VLA scope.Francois Pichet2011-09-091-2/+2
| | | | llvm-svn: 139364
* Clean up the sentinel-attribute checking code a lot. DocumentJohn McCall2011-09-092-84/+69
| | | | | | | | | | | | what 'nullPos' is supposed to mean, at least at this one site. Use closed forms for the arithmetic. Rip out some clever but ultimately pointless code that was trying to use 0 or 0L depending the size of a pointer vs. the size of int; first, it didn't work on LLP64 systems, and second, the sentinel checking code requires a pointer-typed value anyway, so this fixit would not have actually removed the warning. llvm-svn: 139361
* Do a lookup for the blocks runtime globals to see if they were declared,Argyrios Kyrtzidis2011-09-092-49/+36
| | | | | | | | | instead of codegen waiting to consume such a declaration, which won't happen if that decls are coming from a PCH. Fixes rdar://10028656. llvm-svn: 139359
* [PCH] When loading the decls linked to an identifier, also make them visibleArgyrios Kyrtzidis2011-09-091-0/+8
| | | | | | in the translation unit. llvm-svn: 139358
* Use ArrayRef in ExternalASTSource::SetExternalVisibleDeclsForName.Argyrios Kyrtzidis2011-09-091-4/+5
| | | | llvm-svn: 139357
* Code formatting; no functionality change.John McCall2011-09-091-9/+9
| | | | llvm-svn: 139355
* Contextually converting to 'id' is not a useful operation. ContextuallyJohn McCall2011-09-092-21/+48
| | | | | | | | | | | | converting to an arbitrary Objective-C pointer type is. Without significantly re-implementing anything, change the API to reflect this, and as a minor optimization, strip the pointer conversion off before potentially building it. Mostly, this removes a really bizarre-looking bit of code from BuildInstanceMessage. llvm-svn: 139354
* Give conversions of block pointers to ObjC pointers a different cast kindJohn McCall2011-09-0918-81/+270
| | | | | | | | than conversions of C pointers to ObjC pointers. In order to ensure that we've caught every case, add asserts to CastExpr that strictly determine which cast kind is used for which kind of bit cast. llvm-svn: 139352
* Clean up the RebuildUnknownAnyExpr visitor in SemaExpr.cpp. Mainly swapped ↵Richard Trieu2011-09-091-155/+155
| | | | | | around variable names so that this visitor be more like other visitors in clang. llvm-svn: 139351
* Changed references of BaseTy, MemInitTy, CXXScopeTy, TemplateParamsTy to ↵Richard Trieu2011-09-094-7/+8
| | | | | | CXXBaseSpecifier, CXXCtorInitializer, NestedNameSpecifier, TemplateParameterList and removed their typedefs. llvm-svn: 139350
* Change references to StmtTy to Stmt and removed typedefs of StmtTy. Also ↵Richard Trieu2011-09-091-1/+1
| | | | | | removed typedef of AttrTy since it is not used. llvm-svn: 139349
* Modules: introduce the __module_private__ declaration specifier, whichDouglas Gregor2011-09-0910-10/+88
| | | | | | | indicates that a declaration is only visible within the module it is declared in. llvm-svn: 139348
* Change all references of type ExprTy to Expr and get rid of the typedefs.Richard Trieu2011-09-095-14/+14
| | | | llvm-svn: 139347
* Capitialize paramater names in SemaExpr.cpp and resolve any parameter name ↵Richard Trieu2011-09-091-345/+345
| | | | | | conflicts between declarations and definitions from this and previous refactorings. llvm-svn: 139346
* The integer type of an enumeration type isn't always canonicalDouglas Gregor2011-09-081-1/+1
| | | | llvm-svn: 139334
* Remove WCHAR_MIN and WCHAR_MAX from limits.h. According to posix and c99Eric Christopher2011-09-081-14/+0
| | | | | | | | these should be in stdint.h - and they already are. Fixes rdar://10097036. llvm-svn: 139332
* Thread safety: small edit to unused variation on warning left in by accident ↵Caitlin Sadowski2011-09-081-2/+1
| | | | | | from earlier commit llvm-svn: 139331
* Extend -Wliteral-conversion to catch "int i = -1.234"Matt Beaumont-Gay2011-09-081-0/+5
| | | | llvm-svn: 139326
* Thread Safety: In C++0x Mutexes are the objects that control access to ↵Caitlin Sadowski2011-09-081-90/+80
| | | | | | shared variables, while Locks are the objects that acquire and release Mutexes. We switch to this new terminology. llvm-svn: 139321
OpenPOWER on IntegriCloud