summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* [analyzer] Fix varargs helper to only use POD types even for named ↵Jordy Rose2011-08-311-4/+4
| | | | | | arguments. Thanks, Joerg. llvm-svn: 138875
* Switch __import__ over to __import_module__, so we don't conflict withDouglas Gregor2011-08-3113-24/+25
| | | | | | | | existing practice with Python extension modules. Not that Python extension modules should be using a double-underscored identifier anyway, but... llvm-svn: 138870
* objective-c - This patch buffers method implementations Fariborz Jahanian2011-08-3119-53/+136
| | | | | | | | | | | | | and does the Sema on their body after the entire class/category @implementation is seen. This change allows messaging of forward private methods, as well as, access to synthesized ivars of properties with foward synthesize declarations; among others. In effect, this patch removes several restrictions placed on objective-c due to in-place semantics processing of methods. This is part of // rdar://8843851. llvm-svn: 138865
* Update libclang to have APIs corresponding to the new 'expansion' namingChandler Carruth2011-08-312-19/+41
| | | | | | | | | | | system for macro-backed source locations. The old APIs are preserved for legacy users. This was intended to land with the main work of instantiation -> expansion, but despite running it by Doug over a month ago, I forgot to commit it. Very sorry for that... llvm-svn: 138860
* Serialize the new bits in CXXRecordDecl::DefinitionData.Sebastian Redl2011-08-312-4/+8
| | | | llvm-svn: 138855
* Improve the diagnostic text for -Wmissing-noreturn to include the nameChandler Carruth2011-08-317-15/+20
| | | | | | | | | | | | | | of the function in question when applicable (that is, not for blocks). Patch by Joerg Sonnenberger with some stylistic tweaks by me. When discussing this weth Joerg, streaming the decl directly into the diagnostic didn't work because we have a pointer-to-const, and the overload doesn't accept such. In order to make my style tweaks to the patch, I first changed the overload to accept a pointer-to-const, and then changed the diagnostic printing layer to also use a pointer-to-const, cleaning up a gross line of code along the way. llvm-svn: 138854
* Change err_pp_file_not_found back to an Error; when it's a Warning, we ↵Eli Friedman2011-08-308-13/+21
| | | | | | | | suppress it in system headers. And it is not a good idea to suppress it in system headers. (This was originally changed in r134996 to implement -MG.) Fixes <rdar://10041960>. And also brings down the number of warnings without a flag by one :) llvm-svn: 138842
* Allow C99 hexfloats in C++0x mode. This change resolves the standardsDouglas Gregor2011-08-308-31/+64
| | | | | | | | | collision between C99 hexfloats and C++0x user-defined literals by giving C99 hexfloats precedence. Also, warning about user-defined literals that conflict with hexfloats and those that have names that are reserved by the implementation. Fixes <rdar://problem/9940194>. llvm-svn: 138839
* Fix PR10694: Boolean conversions can be from pointers, and those conversionsJeffrey Yasskin2011-08-302-0/+8
| | | | | | aren't considered narrowing conversions. llvm-svn: 138838
* When writing out the entries in a lookup table for a DeclContext, makeDouglas Gregor2011-08-303-6/+36
| | | | | | | | sure that all of the CXXConversionDecls go into the same bucket. Otherwise, name lookup might not find them all. Fixes <rdar://problem/10041960>. llvm-svn: 138824
* Declare and define implicit move constructor and assignment operator.Sebastian Redl2011-08-3021-104/+1635
| | | | | | | | | This makes the code duplication of implicit special member handling even worse, but the cleanup will have to come later. For now, this works. Follow-up with tests for explicit defaulting and enabling the __has_feature flag to come. llvm-svn: 138821
* Remove a few mutating ObjCCategoryDecl methods.Argyrios Kyrtzidis2011-08-305-42/+41
| | | | | | | | | | | Remove -setClassInterface -setNextClassCategory -insertNextClassCategory and combine them in the Create function. llvm-svn: 138817
* In ASTWriter::WriteDeclContextVisibleBlock, don't write empty lookups.Argyrios Kyrtzidis2011-08-301-2/+4
| | | | | | | Empty lookups can occur in the DeclContext map when we are chaining PCHs, where the empty lookup indicates that we already looked in ExternalASTSource. llvm-svn: 138816
* Remove a couple of unnecessary objc method lookups.Argyrios Kyrtzidis2011-08-301-7/+7
| | | | llvm-svn: 138815
* [libclang] Rename some functions and make sure we don't iterate past the ↵Argyrios Kyrtzidis2011-08-301-12/+14
| | | | | | tokens array. llvm-svn: 138813
* objc - fixes a regression in declaring c decls nested inFariborz Jahanian2011-08-302-0/+24
| | | | | | | objective-c containers due to recent changes to objc decl contexts. // rdar://10041908 llvm-svn: 138803
* Remove obsolete ObjCInferRelatedReturnType from LangOptions...the correct ↵Jordy Rose2011-08-303-6/+0
| | | | | | option is ObjCInferRelatedResultType. llvm-svn: 138793
* The size of struct UnwindException varies by platform with noJohn McCall2011-08-303-3/+59
| | | | | | | apparent general rule. Just special-case it as appropriate. PR10789. llvm-svn: 138792
* Be sure to emit lvalue-to-rvalue casts for loads from x-values.John McCall2011-08-303-28/+40
| | | | | | | Doing this happens to disrupt the pattern that ARC was looking for for move optimizations, so we need to fix that simultaneously. llvm-svn: 138789
* Update mingw-w64 part of the user manual, from Ruben Van Boxem!Douglas Gregor2011-08-301-8/+18
| | | | llvm-svn: 138788
* Fix a typo when determining whether to strip cv-qualifiers during template ↵Douglas Gregor2011-08-301-1/+1
| | | | | | argument deduction llvm-svn: 138787
* Update python testcase for GNU old-style field designator warning,Douglas Gregor2011-08-301-1/+1
| | | | | | from Anders Waldenborg! llvm-svn: 138786
* Add support for Cursor.displayname in python bindings, from Anders Waldenborg!Douglas Gregor2011-08-302-0/+13
| | | | llvm-svn: 138785
* Update the comment on the default-argument conversion fix; thanks toJohn McCall2011-08-291-6/+10
| | | | | | Johannes Schaub for talking me around to sense. llvm-svn: 138784
* Thread safety: Adding a name to the thread safety diagnostic group to ↵Caitlin Sadowski2011-08-292-11/+11
| | | | | | prevent typos llvm-svn: 138783
* Do not warn about [super finalize] in arc mode.Nico Weber2011-08-292-3/+4
| | | | llvm-svn: 138776
* Clang/PNaCl: Improve test coverage for PNaClTargetInfo (type aligns), fixes ↵Ivan Krasin2011-08-292-20/+53
| | | | | | | | | | nits: - wrong alignment for double (it was 4, but 8 is desired), - added checks for _REENTRANT define, - fixed the issue that defines were not tested (because the check for inside #ifdef). llvm-svn: 138775
* Thread safety: added basic handling for pt_guarded_by/var and guarded_by/var ↵Caitlin Sadowski2011-08-293-5/+246
| | | | | | annotations. We identify situations where we are accessing (reading or writing) guarded variables, and report an error if the appropriate locks are not held. llvm-svn: 138774
* Fix a rewriter bug caused by recent changes in objc's Fariborz Jahanian2011-08-292-26/+109
| | | | | | group decls. llvm-svn: 138772
* Add missing function _mm_ucomige_sd to emmintrin.h. PR10803.Eli Friedman2011-08-291-0/+6
| | | | llvm-svn: 138769
* [analyzer] MacOSKeychainAPIChecker: Simplify getSymbolForRegion by using ↵Anna Zaks2011-08-291-7/+3
| | | | | | existing API. Thanks Jordy. llvm-svn: 138765
* Fix: Bug 10798 - [analyzer] Crash when analyzing ICU. (A slight improvement ↵Anna Zaks2011-08-292-1/+12
| | | | | | on the previous commit.) llvm-svn: 138762
* Fix bug 10797: Crash: "cast<Ty>() argument of incompatible type!" assert ↵Anna Zaks2011-08-292-2/+10
| | | | | | | | when analyzing ICU. Patch by Jean-Daniel Dupas. Thanks for spotting and fixing! llvm-svn: 138757
* Some minor updates to the Linux search path handling for Slackware. Patch ↵Eli Friedman2011-08-292-1/+12
| | | | | | by Will Dietz. PR10692. llvm-svn: 138753
* Minor clean up of objc's decl context stuff.Fariborz Jahanian2011-08-295-8/+6
| | | | | | No change in functionality. llvm-svn: 138742
* Add and document __has_feature values for the remaining C++0xDouglas Gregor2011-08-292-34/+90
| | | | | | | features, so clients can check for the availability of these features even before we get around to implementing them. llvm-svn: 138741
* Thread safety: various minor bugfixes, with test casesCaitlin Sadowski2011-08-293-13/+122
| | | | | | This patch is by DeLesley Hutchins. llvm-svn: 138738
* Fix type mismatch in initialization (caught by -Wliteral-conversion)Matt Beaumont-Gay2011-08-291-1/+1
| | | | llvm-svn: 138736
* Print 'int' instead of 'const int' in the narrowing conversion error, since theJeffrey Yasskin2011-08-292-3/+13
| | | | | | | | | qualification of a type doesn't affect whether a conversion is a narrowing conversion. This doesn't work in template cases because SubstTemplateTypeParmType gets in the way. llvm-svn: 138735
* Warn on missing [super finalize] calls.Nico Weber2011-08-2811-6/+45
| | | | | | This matches gcc's logic. Second half of PR10661. llvm-svn: 138730
* [analyzer] Header cleanup to decrease coupling (and recompilation). No ↵Jordy Rose2011-08-286-8/+5
| | | | | | functionality change. llvm-svn: 138729
* [analyzer] Introduce a new callback for checkers, printState, to be used for ↵Jordy Rose2011-08-2810-90/+110
| | | | | | | | | | debug-printing the contents of a ProgramState. Unlike the other callbacks, this one is a simple virtual method, since it is only to be used for debugging. This new callback replaces the old ProgramState::Printer interface, and allows us to move the printing of refcount bindings from CFRefCount to RetainReleaseChecker. llvm-svn: 138728
* [analyzer] update bug report urlNico Weber2011-08-281-2/+2
| | | | llvm-svn: 138721
* [analyzer] Remove the ProgramState argument from ExprEngine::evalBind; we ↵Jordy Rose2011-08-283-12/+6
| | | | | | were ignoring it anyway. No functionality change. llvm-svn: 138720
* [analyzer] Eliminate almost all uses of TransferFuncs from ExprEngine.Jordy Rose2011-08-283-103/+27
| | | | llvm-svn: 138719
* [analyzer] Migrate argument invalidation from CFRefCount to ExprEngine.Jordy Rose2011-08-287-269/+199
| | | | | | | | This is a common path for function and C++ method calls, Objective-C messages and property accesses, and C++ construct-exprs. As support, add message receiver accessors to ObjCMessage and CallOrObjCMessage. llvm-svn: 138718
* [analyzer] Change the check::RegionChanges callback to include the regions ↵Jordy Rose2011-08-2715-169/+171
| | | | | | | | | | explicitly requested for invalidation. Also, allow CallOrObjCMessage to wrap a CXXConstructExpr as well. Finally, this allows us to remove the clunky whitelisting system from CFRefCount/RetainReleaseChecker. Slight regression due to CXXNewExprs not yet being handled in post-statement callbacks (PR forthcoming). llvm-svn: 138716
* Disable the l-value to r-value conversion on C++ class types passedJohn McCall2011-08-272-3/+30
| | | | | | | | | | | to varargs functions in unevaluated contexts. AFAICT, there is no standards justification for this, but it matches what other compilers do and therefore preserves compatibility with certain template metaprogramming idioms. Should fix self-host. llvm-svn: 138715
* objective-c - Make warning on unimplemented protocols pointFariborz Jahanian2011-08-279-32/+34
| | | | | | | to class implementation where it is supposed to be implemented. // rdar://10009982. llvm-svn: 138714
* [analyzer] Rename current PathDiagnosticClient::HandlePathDiagnostic() to ↵Ted Kremenek2011-08-275-7/+20
| | | | | | HandlePathDiagnosticImpl(), and slot in new HandlePathDiagnostic() for potentially handling concurrent access to PathDiagnosticClients (in the future). llvm-svn: 138713
OpenPOWER on IntegriCloud