aboutsummaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2010-02-19Only parse C++0x attribute specifiers in declarators when in C++0xDouglas Gregor
mode. This allows us to detect invalid VLAs in Objective-C++ mode. This should be the last of <rdar://problem/7660386>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96679 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19Implement C++ name lookup for instance variables of Objective-C classesDouglas Gregor
from an instance method. Previously, we were following the Objective-C name lookup rules for ivars, which are of course completely different from and incompatible with the Objective-C++ rules. For the record, the Objective-C++ rules are the sane ones. This is another part of <rdar://problem/7660386>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96677 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19Make Sema::ActOnClassMessage robust when name lookup for the receiverDouglas Gregor
name finds something other than a TypedefDecl or an ObjCInterfaceDecl. This is a small part of <rdar://problem/7660386>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96676 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19More refactoring around constructor/destructor code generation.John McCall
Fix some bugs with function-try-blocks and simplify normal try-block code generation. This implementation excludes a deleting destructor's call to operator delete() from the function-try-block, which I believe is correct but which I can't find straightforward support for at a moment's glance. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96670 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19Add another test from the ABI spec.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96659 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19Remove this test for now.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96651 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19Re-introduce the ctor/dtor alias optimization, this time hidden behind aJohn McCall
command-line option which defaults off. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96649 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19AST import for CStyleCastExpr. With this, we can import Cocoa.h into an ↵Douglas Gregor
empty context git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96648 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19AST import for sizeof and alignof expressionsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96647 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19AST import for DeclRefExprsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96646 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19XFAIL until I can fugure out how test check for a pattern whenFariborz Jahanian
clang is built optimized. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96645 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19XFAIL some of the c-index-test tests on Windows, where they are failing ↵Douglas Gregor
inexplicably git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96644 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19AST import of parenthesized expressions, unary operators, binaryDouglas Gregor
operators, and compound assignment operators. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96643 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-19Patch removes IVars list from ObjCInterfaceDecl andFariborz Jahanian
instead relies on their DeclContext for iteration, etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96638 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Re-apply my diagnostics-capture patch for CIndex, with some tweaks toDouglas Gregor
try to address the msvc failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96624 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Allow GNU attributes to appear in an Objective-C method declarationTed Kremenek
before the selector name (but after the return type). Among other things, this allows IBAction to be implemented with an attribute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96623 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Revert my CIndex diagnostic changes (r96603, 96606, 96607), which wereDouglas Gregor
breaking the msvc9 builder for unknown reasons. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96618 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Revert the ctor/dtor alias optimization for now; the buildbots can detectJohn McCall
some failure here that I can't. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96612 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Fixed a crash specific to blocks in c++ uncovered by an internalFariborz Jahanian
test suite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96608 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Resurrect the displayDiagnostics parameter to clang_createIndex(), andDouglas Gregor
display captured diagnostics when we can't return an invalid CXTranslationUnit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96606 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Make deleting and complete dtor variants defer to other dtor variants byJohn McCall
calling them as subroutines. This triggers whenever the alias optimization doesn't, i.e. when the dtor has linkonce linkage or there are virtual bases or it's the deleting dtor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96605 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Introduce CIndex API functions for displaying a diagnostic, with someDouglas Gregor
knobs to control formatting. Eventually, I'd like to merge the implementation of this code with the TextDiagnosticPrinter, so that it's easy for CIndex clients to produce beautiful diagnostics like the clang compiler does. Use this new function to display diagnostics within c-index-test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96603 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Change cursor behavior for attributes to have them visited as part of recursingTed Kremenek
to the children of a Decl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96599 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18tests: Tweak %clangxx definition to something which should be more portable.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96593 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Rework how CIndex handles diagnostics. Rather than using a callback,Douglas Gregor
we attach diagnostics to translation units and code-completion results, so they can be queried at any time. To facilitate this, the new StoredDiagnostic class stores a diagnostic in a serializable/deserializable form, and ASTUnit knows how to capture diagnostics in this stored form. CIndex's CXDiagnostic is a thin wrapper around StoredDiagnostic, providing a C interface to stored or de-serialized diagnostics. I've XFAIL'd one test case temporarily, because currently we end up storing diagnostics in an ASTUnit that's never returned to the user (because it contains errors). I'll introduce a temporary fix for this soon; the real fix will be to allow us to return and query invalid ASTs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96592 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Fix another bug and add another class.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96590 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Add another class from cxx-vtable-ex.htmlAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96588 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18More work on vcall offsets.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96587 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Add tests from the Itanium C++ ABI spec.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96586 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Add basic cursor traversal for attributes. We currently don't have sourceTed Kremenek
ranges for Attr objects, so lookup by cursor location currently doesn't work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96571 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Also don't warn about force_align_arg_pointer on function typedefs. (This willCharles Davis
break if you declare an actual function using that typedef. Come to think of it, maybe I should make this part of the type.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96570 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Two fixes related to force_align_arg_pointer:Charles Davis
- Also recognize __force_align_arg_pointer__. - Don't warn if it's used on a function pointer typedef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96568 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18AST import for character literalsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96557 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18AST import for forward declarations of Objective-C protocolsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96555 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Implement import of forward declarations of Objective-C classesDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96554 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Allow redefinitions of extern inline functions in GNU89 mode, just as GCCCharles Davis
does. Fixes PR5253. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96553 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18AST import of Objective-C categories.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96551 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18__typeof should be able to handle block pointer types whenFariborz Jahanian
rewriting. Fixes radar 7659483. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96549 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Don't diagnose overflow in case statements when the conversion is aDouglas Gregor
signed<->unsigned conversion with the same bit width. Fixes <rdar://problem/7658121>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96545 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-18Recognize attributes ns_returns_not_retained and cf_returns_not_retainedTed Kremenek
in the static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96539 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17For -Wswitch-enum warnings, be sure to look through typedefs of enumDouglas Gregor
types. Fixes <rdar://problem/7643909>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96531 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17When diagnosing enumerator values outside of the range of 'int', beDouglas Gregor
sure that we get the "too large" vs. "too small" part of the diagnostic correct. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96524 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17Hopefully make buildbot happy.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96513 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17PR5803: clang++: Treat untyped 'C' inputs as C++.Daniel Dunbar
- Patch by Andrzej K. Haczewski, with a tweak by me to emit a 'deprecated' diagnostic when we do this. We'll see what zee users say. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96511 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17tests: Add '%clangxx' substitution, for 'clang++'Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96510 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17Patch to remove arbitrary imporation of 'self' intoFariborz Jahanian
a block without it being used. This causes over release of objects in certain runtime-senitive apps. (fixes radar 7581175). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96501 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17Fix test to not force triple, and also to not need stdint.h.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96499 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17Implement AST merging for Objective-C properties.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96483 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17Allow for declaration and use of ivars in a stand-aloneFariborz Jahanian
implementation (toward radar 7547942). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96479 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-17AST import for Objective-C protocolsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96478 91177308-0d34-0410-b5e6-96231b3b80d8