summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Add an "implicit" bit to CXXThisExpr, so that we can trackDouglas Gregor2010-01-075-13/+32
| | | | | | | implicitness without losing track of the (logical or actual) location where "this" would occur in the source. llvm-svn: 92958
* Fixes a bug where we were rewriting two definitions ofFariborz Jahanian2010-01-071-1/+2
| | | | | | _objc_method (part of radar 7490408). llvm-svn: 92957
* Add checker for type infos.Mike Stump2010-01-071-0/+20
| | | | llvm-svn: 92956
* Tidy up crashtracer logic in CIndex.Ted Kremenek2010-01-071-38/+72
| | | | llvm-svn: 92955
* Add checked for VTTs.Mike Stump2010-01-071-0/+20
| | | | llvm-svn: 92954
* Detailed vtable checker.Mike Stump2010-01-072-1/+19
| | | | llvm-svn: 92953
* Fixes a bug in my last patch (related to radar 7490331).Fariborz Jahanian2010-01-071-1/+1
| | | | llvm-svn: 92952
* 1/2 off all structs should not have any virtual functions.Mike Stump2010-01-071-8/+13
| | | | | | Replace magic numbers with uuids. llvm-svn: 92941
* Add a descriptive tag to each line to make the exact differencesMike Stump2010-01-071-12/+12
| | | | | | easier to understand. llvm-svn: 92932
* When parsing an identifier as an expression in C++, only try to annotate itJohn McCall2010-01-072-5/+14
| | | | | | | | | | as a type or scope token if the next token requires it. This eliminates a lot of redundant lookups in C++, but there's room for improvement; a better solution would do a single lookup whose kind and results would be passed through the parser. llvm-svn: 92930
* Don't use two argument mixing function.Mike Stump2010-01-071-2/+1
| | | | llvm-svn: 92929
* Also generate the .s files.Mike Stump2010-01-071-2/+4
| | | | llvm-svn: 92928
* Add a testcase generator for vtable/rtti testing. WIP.Mike Stump2010-01-072-0/+242
| | | | llvm-svn: 92927
* Avoid error when convering a pointer to integer in Fariborz Jahanian2010-01-071-1/+1
| | | | | | rewriting. llvm-svn: 92925
* Fix rewriting of ivars. Fixes radar 7490331.Fariborz Jahanian2010-01-072-2/+23
| | | | llvm-svn: 92924
* Convert from char pointer to char arrayKovarththanan Rajaratnam2010-01-071-6/+6
| | | | llvm-svn: 92923
* Fix typo: rename Rewriter::getRewritenText() -> Rewriter::getRewrittenText().Ted Kremenek2010-01-073-5/+5
| | | | llvm-svn: 92922
* Tigthen scope of local char arrayKovarththanan Rajaratnam2010-01-071-1/+1
| | | | llvm-svn: 92917
* fix PR5869: mangle static symbols like gcc does to make it easier to diff ↵Nuno Lopes2010-01-072-2/+10
| | | | | | symbol tables llvm-svn: 92911
* Test linkage of typeinfo and typeinfo names for class templatesDouglas Gregor2010-01-071-1/+13
| | | | llvm-svn: 92897
* Improve the lead diagnostic for C++ object subscript expressions withJohn McCall2010-01-074-14/+48
| | | | | | | | | no viable overloads. Use a different message when the class provides no operator[] overloads at all; use it for operator(), too. Partially addresses PR 5900. llvm-svn: 92894
* Change ObjCContainerDecl to contain the entire range for the '@end'Ted Kremenek2010-01-0713-73/+80
| | | | | | | | | | | piece of the declaration. The '@' and the 'end' are separate tokens, and require two SourceLocations to accurately track. This change was motivated because ObjCContainerDecl::getSourceRange() would previously not return the entire range of the declaration (the 'end' would be left off). llvm-svn: 92891
* Add FileCheck prefix to another location in the output of c-index-test.Ted Kremenek2010-01-071-1/+1
| | | | llvm-svn: 92890
* Add a test case for code-completion in the presence of tabsDouglas Gregor2010-01-071-0/+9
| | | | llvm-svn: 92882
* _mm_xor_ps does a xor not a nxor. The other 'xor' builtins look fine,Chris Lattner2010-01-071-1/+1
| | | | | | but this one is wrong. Thanks to Tanya for noticing this. llvm-svn: 92881
* Make this test be ingored for linux.Fariborz Jahanian2010-01-071-1/+1
| | | | llvm-svn: 92880
* Fix the search for visible declarations within a Scope to ensure thatDouglas Gregor2010-01-073-16/+19
| | | | | | | | we look into a Scope that corresponds to a compound statement whose scope was combined with the scope of the function that owns it. This improves typo correction in many common cases. llvm-svn: 92879
* When we typo-correct a base class initializer, point to the base classDouglas Gregor2010-01-073-3/+11
| | | | | | specifier that we corrected to. llvm-svn: 92878
* Whenever we emit a typo-correction diagnostic, also emit a noteDouglas Gregor2010-01-0712-20/+55
| | | | | | | pointing to the declaration that we found that has that name (if it is unique). llvm-svn: 92877
* Fixes the test.Fariborz Jahanian2010-01-061-1/+1
| | | | llvm-svn: 92875
* When suggesting a typo correction for an @implementation without aDouglas Gregor2010-01-063-2/+12
| | | | | | | | | | corresponding @interface, provide a note showing which interface we're referring to. This note has the fix-it hint on it. Also, don't automatically apply fix-it hints for notes. They're meant to express fix-its that would change semantics. llvm-svn: 92870
* Change clang_getDeclExtent() to have the endpoint point to the last ↵Ted Kremenek2010-01-063-53/+73
| | | | | | character in the last token. llvm-svn: 92869
* Test case for rewriting of __weak byref objects.Fariborz Jahanian2010-01-061-0/+15
| | | | llvm-svn: 92868
* Move the allocation of designators in DesignatedInitExpr to theDouglas Gregor2010-01-064-16/+28
| | | | | | ASTContext. Fixes <rdar://problem/7495428>. llvm-svn: 92867
* Don't assert when dealing with unsigned casts of lvalues. Fixes PR5961.John McCall2010-01-062-6/+19
| | | | llvm-svn: 92866
* Add test from PR5913, which has already been fixedDouglas Gregor2010-01-061-0/+13
| | | | llvm-svn: 92863
* Derive tighter ranges for & and >> in the conversion-checking code.John McCall2010-01-062-6/+48
| | | | llvm-svn: 92862
* Add testcase for PR5817, although the bug was already fixedDouglas Gregor2010-01-061-0/+4
| | | | llvm-svn: 92858
* Fix linkage for RTTI names by re-using the logic for computing theDouglas Gregor2010-01-063-43/+26
| | | | | | | | linkage of vtables. Before this, we were emitting RTTI names for template instantiations with strong external linkage rather than with weak ODR linkage. llvm-svn: 92857
* Fix a bug when property is redeclared in multipleFariborz Jahanian2010-01-062-0/+50
| | | | | | | continuation classes and its original declaration is imported from a protocol. This fixes radar 7509234. llvm-svn: 92856
* Fix marking of virtual members for nested classes whose first non-pure ↵Douglas Gregor2010-01-065-50/+102
| | | | | | virtual function has a body inlined in the class llvm-svn: 92855
* Fix for PR5691David Chisnall2010-01-061-1/+1
| | | | llvm-svn: 92846
* Make sure that the key-function computation produces the correctDouglas Gregor2010-01-062-10/+38
| | | | | | | | result for a nested class whose first non-pure virtual member function has an inline body. Previously, we were checking for the key function before we had seen the (delayed) inline body. llvm-svn: 92839
* Improve the diagnostics used to report implicitly-generated class membersJohn McCall2010-01-0632-75/+117
| | | | | | | | | as parts of overload sets. Also, refer to constructors as 'constructors' rather than functions. Adjust a lot of tests. llvm-svn: 92832
* Fix (invalid) may-be-uninitialized warning.Daniel Dunbar2010-01-061-1/+2
| | | | llvm-svn: 92828
* Add missing CINDEX_LINKAGE.Daniel Dunbar2010-01-061-4/+5
| | | | llvm-svn: 92827
* Add _clang_getDeclExtent to export list.Daniel Dunbar2010-01-061-0/+1
| | | | llvm-svn: 92825
* Significantly rework the calculation of effective integer-expression rangesJohn McCall2010-01-063-176/+280
| | | | | | | | | | | | for -Wsign-compare and -Wconversion, and use that coordinated logic to drive both diagnostics. The new logic works more transparently with implicit conversions, conditional operators, etc., as well as bringing -Wconversion's ability to deal with pseudo-closed operations (e.g. arithmetic on shorts) to -Wsign-compare. Fixes PRs 5887, 5937, 5938, and 5939. llvm-svn: 92823
* Revert my available_externally vtables experiment. It's breaking the ↵Douglas Gregor2010-01-062-3/+8
| | | | | | LLVM-with-Clang build with linker errors that I have yet to investigate. llvm-svn: 92822
* Make our marking of virtual members functions in a class beDouglas Gregor2010-01-067-69/+66
| | | | | | | | | | | | | | | | | | | | | deterministic and work properly with templates. Once a class that needs a vtable has been defined, we now do one if two things: - If the class has no key function, we place the class on a list of classes whose virtual functions will need to be "marked" at the end of the translation unit. The delay until the end of the translation unit is needed because we might see template specializations of these virtual functions. - If the class has a key function, we do nothing; when the key function is defined, the class will be placed on the aforementioned list. At the end of the translation unit, we "mark" all of the virtual functions of the classes on the list as used, possibly causing template instantiation and other classes to be added to the list. This gets LLVM's lib/Support/CommandLine.cpp compiling again. llvm-svn: 92821
OpenPOWER on IntegriCloud