aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-09-01Assert that we don't have any virtual bases. We can emit dtors for ↵Anders Carlsson
polymorphics classes just fune. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80722 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01In CXXBaseOrMemberInitializer, don't confuse CtorTocall withDouglas Gregor
AnonUnionMember. Fixes PR4826. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80721 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Use the correct cast kinds for bit casts and function to pointer decay. ↵Anders Carlsson
Fixes PR4827. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80720 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Add a CK_FunctionToPointerDecay cast kind.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80719 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01We can generate constructors/destructors with base classes and non-trivial ↵Anders Carlsson
fields just fine now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80701 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Add test case from <rdar://problem/7184450>.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80700 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Implement proper substitution for OverloadedFunctionDecls, but substituting ↵Douglas Gregor
each of the functions in the overload set git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80692 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Add DeclContext::Equals to compare declaration contexts based on their ↵Douglas Gregor
primary context. Use this instead of pointer comparisons git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80690 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Tweak comment based on Daniel's recently added '-emit-ast' option.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80684 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01"The attached patch moves AttributeList::addAttributeList outside theDouglas Gregor
class so as to accomodate one or both parameters being NULL, " from Sean Hunt! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80683 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Fixed a property getter ir-gen crash.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80681 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Fix a crasher involving template instantiation of non-dependentDouglas Gregor
expressions making use of an overloaded operator. Thanks for the test case, Anders! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80679 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Add driver support for -emit-ast and AST compilation steps.Daniel Dunbar
- <rdar://problem/7185031> Add 'clang' option '-emit-ast' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80678 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Tip-toe around strict-aliasing violation. Fixes PR4061.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80674 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Add explicit "blind" client data to callback function (since we aren't using ↵Steve Naroff
blocks). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80673 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Move C++ test over to CodeGenCXX, since it requires CodeGen to reproduceDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80672 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Don't assume that a base is always a RecordType, it can also be a ↵Anders Carlsson
TemplateSpecializationType. Also, make sure to get the instantiated union member. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80662 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Add pretty stack traces when instantiating functions and static data members.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80661 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Handle member initializers that point to fields in anonymous structs.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Don't assert when instantiating member references to fields in anonymous ↵Anders Carlsson
structs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80657 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01PR4836, part 2: CodeGen for __builtin_isnan.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80655 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Preliminary AST representation and semantic analysis forDouglas Gregor
explicitly-specified template argument lists in member reference expressions, e.g., x->f<int>() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80646 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Force triple for this test (non-fragile ABI is default on x86_64-apple-darwin9).Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80645 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Sentence-case bug category.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80644 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Remember to write the qualifier of a MemberExpr to the PCH file when we get ↵Douglas Gregor
to C++ PCH git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80643 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Eliminate CXXAdornedMemberExpr entirely. Instead, optionally allocateDouglas Gregor
space within the MemberExpr for the nested-name-specifier and its source range. We'll do the same thing with explicitly-specified template arguments, assuming I don't flip-flop again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80642 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Fix bug 4784 and allow friend declarations to properly extendJohn McCall
existing declaration chains. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80636 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Rename DIBlock as DILexicalBlock.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80634 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Rename CXXQualifiedMemberExpr -> CXXAdornedMemberExpr, since we willDouglas Gregor
also be adding explicit template arguments as an additional "adornment". No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80628 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Add parsing for references to member function templates with explicitDouglas Gregor
template argument lists, e.g., x.f<int>(). Semantic analysis will be a separate commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80624 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31PR4836, part 1: add Sema support for __builtin_isnan and friends; they Eli Friedman
are apparently used by Solaris libc despite the fact that clang claims to be compatible with gcc 4.2, which doesn't support them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80610 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Implement template instantiation for member operator access.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80609 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Support explicit C++ member operator syntax, from James Porter!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80608 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Re-implemented generation of objc_memmove_collectableFariborz Jahanian
API for copying GC'able aggregates (Next runtime only). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80607 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Fix a -Asserts warning.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80606 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Added test cases for presence and absence of ↵David Chisnall
__has_feature(objc_nonfragile_abi) with and without -fobjc-nonfragile-abi. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80593 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Updated GNU runtime non-fragile ABI.David Chisnall
Added -fconstant-string-class= option. Added __has_feature() test for non-fragile ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80591 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Implement source/line/column hooks.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80585 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31More fleshing out the C-based indexing API (under construction).Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80529 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-30More missing member goodness.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80491 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-30Improve missing error messages as suggested by Doug.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80489 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-30Use DiagnoseMissingMember for UsingDecls.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80470 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-30Improve diagnostics for missing members. This renames the ↵Anders Carlsson
err_typecheck_no_member to err_typecheck_no_member_deprecated. The idea is that err_typecheck_no_member_deprecated should be phased out and any call sites that reference it should call DiagnoseMissingMember instead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80469 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-30Unbreak tests. I'll look into why this is necessary later.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80468 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Fix the start source location for type-specs like long, short, etc.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Fix TypeLoc::operator bool().Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80447 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Make instantiating initializers for classes with a dependent base type Eli Friedman
work correctly. The change in lib/AST/DeclCXX.cpp is mostly a large reindentation; I couldn't figure out a good way to avoid it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80446 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Make IRGen for initializing a member reference work correctly.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80439 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Add a workaround for decls that come from friend decls pointing to ↵Anders Carlsson
undeclared classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80438 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29In DeclPrinter, assert when asked to print AS_None.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80437 91177308-0d34-0410-b5e6-96231b3b80d8