summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove unused variables.Ted Kremenek2010-01-051-2/+0
| | | | llvm-svn: 92804
* Remove deprecated function 'clang_getDeclSource()'. Use ↵Ted Kremenek2010-01-053-9/+0
| | | | | | 'clang_getDeclFile()' instead. llvm-svn: 92803
* Add C API hook 'clang_getDeclExtent()', which returns the source extent of a ↵Ted Kremenek2010-01-055-46/+107
| | | | | | declaration. This implements <rdar://problem/7280072>. llvm-svn: 92802
* Fixed a bug where initializer is a macro in rewrite.Fariborz Jahanian2010-01-051-0/+1
| | | | llvm-svn: 92801
* Split (mostly nonexistent) USR code out from the main CIndex logic.Ted Kremenek2010-01-055-33/+52
| | | | llvm-svn: 92789
* Silence bogus GCC warningDouglas Gregor2010-01-051-1/+2
| | | | llvm-svn: 92787
* Fix -plugin command line argument syntax for clang -cc1 change.Daniel Dunbar2010-01-051-1/+1
| | | | llvm-svn: 92780
* Make use of available_externally linkage for vtables when theDouglas Gregor2010-01-052-4/+56
| | | | | | | | | | non-inline key function of a class template instantiation, when no key function is present, the class template instantiation itself was instantiated with an explicit instantiation declaration (aka extern template). I'm fairly certain that the C++0x specification gives us this lattitude, although GCC doesn't take advantage of it. llvm-svn: 92779
* Add back #include of 'cstdio' to hopefully unbreak the build on Linux.Ted Kremenek2010-01-051-0/+3
| | | | llvm-svn: 92765
* Split code in CIndex.cpp into multiple source files, and remove some ↵Ted Kremenek2010-01-055-473/+543
| | | | | | unnecessary #includes. llvm-svn: 92756
* API support for __block variables which are also __weak.Fariborz Jahanian2010-01-051-5/+16
| | | | llvm-svn: 92755
* Improve key-function computation for templates. In particular:Douglas Gregor2010-01-058-37/+115
| | | | | | | | | | | | | | | | - All classes can have a key function; templates don't change that. non-template classes when computing the key function. - We always mark all of the virtual member functions of class template instantiations. - The vtable for an instantiation of a class template has weak linkage. We could probably use available_externally linkage for vtables of classes instantiated by explicit instantiation declarations (extern templates), but GCC doesn't do this and I'm not 100% that the ABI permits it. llvm-svn: 92753
* Add code to skip the emission of available externally functions at -O0. WIP.Mike Stump2010-01-051-0/+10
| | | | llvm-svn: 92749
* Minor clean up.Fariborz Jahanian2010-01-051-6/+3
| | | | llvm-svn: 92746
* Remove bogus "C" from preamble block decls.Steve Naroff2010-01-051-2/+2
| | | | llvm-svn: 92744
* More rewriting of __block APIs. wip.Fariborz Jahanian2010-01-051-26/+40
| | | | llvm-svn: 92742
* Fix <rdar://problem/7490212> clang rewriter: return of the mixed line ↵Steve Naroff2010-01-051-1/+3
| | | | | | | | | | endings, which is related to <rdar://problem/6596843> clang ObjC rewriter: Line endings still mixed in rewrite output This fix was dropped when I integrated the 'objective-rewrite' branch. llvm-svn: 92737
* Move test case to a more appropriate file.Zhongxing Xu2010-01-052-9/+10
| | | | llvm-svn: 92725
* Add test case.Zhongxing Xu2010-01-051-0/+9
| | | | llvm-svn: 92724
* Revert r92318. Instead fix the analyzer: do not call Zhongxing Xu2010-01-052-9/+3
| | | | | | ASTContext::hasSameUnqualifiedType() when one of the type is VariableArrayType. llvm-svn: 92723
* if an arraytype is canonical, then its element is guaranteed to be canonical.Zhongxing Xu2010-01-051-1/+2
| | | | llvm-svn: 92715
* Allow clang to pass -x cl through to compiler driver.Nate Begeman2010-01-052-0/+3
| | | | llvm-svn: 92686
* When emitting member function pointers, use the canonical decl if the member ↵Anders Carlsson2010-01-053-1/+15
| | | | | | function is virtual. Fixes PR5940. llvm-svn: 92680
* Add a radar reference.Mike Stump2010-01-051-0/+1
| | | | llvm-svn: 92678
* Disallow captured arrays in blocks as well. Radar 7438948.Mike Stump2010-01-053-0/+16
| | | | llvm-svn: 92677
* Disallow capturing vlas inside blocks.Mike Stump2010-01-053-1/+19
| | | | llvm-svn: 92676
* Make static analysis support for C++ 'this' expression context-sensitive. ↵Ted Kremenek2010-01-057-42/+130
| | | | | | Essentially treat 'this' as a implicit parameter to the method call, and associate a region with it. llvm-svn: 92675
* fix a bug mike noticed.Chris Lattner2010-01-051-1/+1
| | | | llvm-svn: 92559
* More rewriting of __block objective-c pointer variables. wip.Fariborz Jahanian2010-01-051-5/+80
| | | | llvm-svn: 92558
* Remove stale comment. We already do format string checking for functions ↵Ted Kremenek2010-01-051-3/+0
| | | | | | with the format attribute. llvm-svn: 92553
* Fix warnings.Mike Stump2010-01-051-1/+2
| | | | llvm-svn: 92551
* Remove references to 'Checker' and 'GRTransferFuncs' fromTed Kremenek2010-01-0510-115/+81
| | | | | | | | | | | | GRStateManager. Having these references was an abstraction violation, as they really should only be known about GRExprEngine. This change required adding a new 'ProcessAssume' callback in GRSubEngine. GRExprEngine implements this callback by calling 'EvalAssume' on all registered Checker objects as well as the registered GRTransferFunc object. llvm-svn: 92549
* Move the -Wconversion logic into SemaChecking.cpp. There's a fair amount ofJohn McCall2010-01-043-314/+315
| | | | | | | overlap between this and -Wsign-compare, which is why I want them in the same place. llvm-svn: 92543
* Move the -Wsign-compare logic into SemaChecking.cpp.John McCall2010-01-042-78/+81
| | | | llvm-svn: 92541
* Avoid warnings for functions that return a value using MS-style inlineMike Stump2010-01-042-1/+8
| | | | | | | | | | | | | assembly code. This avoids changing the bahvior when normal asm("") statements are used. The type of code affected would be: void* t4(void) { __asm mov eax, fs:[0x10] } I hope people like this version, if not, let me know. llvm-svn: 92531
* Remember if the AsmStmt came from Microsoft-style inline assembly code.Mike Stump2010-01-048-10/+18
| | | | llvm-svn: 92526
* -Wsign-compare shouldn't warn when the signed operand is a conditional operatorJohn McCall2010-01-042-20/+27
| | | | | | | whose operands are non-negative integer constant expressions. This comes up in LLVM in a few places. llvm-svn: 92525
* Make sure to use ASTContext::getAs*ArrayType() when decomposing arrayDouglas Gregor2010-01-043-3/+8
| | | | | | types. Fixes APFloat.cpp compilation failure. llvm-svn: 92523
* Add missing newline (which breaks MSVC build???)Daniel Dunbar2010-01-041-1/+1
| | | | llvm-svn: 92522
* More rewriting of __block declared objective-c/block pointers.Fariborz Jahanian2010-01-041-16/+45
| | | | | | This is wip. llvm-svn: 92501
* Turn on code-completion for macros within CIndexDouglas Gregor2010-01-041-1/+3
| | | | llvm-svn: 92500
* Teach Preprocessor::macro_begin/macro_end to lazily load all macroDouglas Gregor2010-01-049-23/+169
| | | | | | | | definitions from a precompiled header. This ensures that code-completion with macro names behaves the same with or without precompiled headers. llvm-svn: 92497
* Revert r92431, this code isn't dead and broke the ntfs build.Daniel Dunbar2010-01-042-0/+10
| | | | llvm-svn: 92493
* Fix -Asserts warning.Daniel Dunbar2010-01-041-2/+2
| | | | llvm-svn: 92491
* When declaring an Objective-C implementation without a correspondingDouglas Gregor2010-01-043-4/+22
| | | | | | | | | | | | | | | | | | | | | | interface, suggest correction of typos. For example, given: @interface NSString @end @implementation NSstring @end we'll warn with: t.m:4:19: warning: cannot find interface declaration for 'NSstring'; did you mean 'NSString'? @implementation NSstring ^ However, since this is just a warning, we don't provide a fix-it hint. Good idea, Ted! llvm-svn: 92488
* __builtin_object_size(ptr, type) returns -1 for type = {0,1} if there are ↵Benjamin Kramer2010-01-032-1/+12
| | | | | | any side-effects. llvm-svn: 92453
* Implement typo correction for a variety of Objective-C-specificDouglas Gregor2010-01-0310-16/+277
| | | | | | | | | | | | | | constructs: - Instance variable lookup ("foo->ivar" and, in instance methods, "ivar") - Property name lookup ("foo.prop") - Superclasses - Various places where a class name is required - Protocol names (e.g., id<proto>) This seems to cover many of the common places where typos could occur. llvm-svn: 92449
* Better coverage for -dump-record-layouts and -print-decl-contexts.Eli Friedman2010-01-033-0/+16
| | | | llvm-svn: 92441
* Improve coverage for test.Eli Friedman2010-01-031-0/+2
| | | | llvm-svn: 92440
* Get rid of more dead code.Eli Friedman2010-01-032-51/+0
| | | | llvm-svn: 92439
OpenPOWER on IntegriCloud