aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-06-29-Keep a reference to the ASTContext inside the TranslationUnitDecl.Argyrios Kyrtzidis
-Introduce Decl::getASTContext() which returns the reference from the TranslationUnitDecl that it is contained in. The general idea is that Decls can point to their own ASTContext so that it is no longer required to "manually" keep track and make sure that you pass the correct ASTContext to Decls' methods, e.g. methods like Decl::getAttrs should eventually not require a ASTContext parameter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74434 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-29Remove redundant leftover code.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74433 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-29Fix the FloatingLiteral API to take the isexact flag by value instead ofChris Lattner
by pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74432 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-29Move FunctionDecl::TemplateSpecializationInfo out into its own class,Douglas Gregor
FunctionTemplateSpecializationInfo, in DeclTemplate.h. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74431 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-29Remove ASTContext::getObjCQualifiedIdType().Steve Naroff
Convert clients to use ASTContext::getObjCObjectPointerType(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74424 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-29Invalidate the alloca region by setting its default value to conjured symbol.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74419 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-29The default answer for isBoundable() should be false.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74418 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Make the StackProtector bitfield use enums instead of obscure numbers.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74414 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Move the check for vprintf* functions inside of SemaCheckStringLiteral. ↵Anders Carlsson
Fixes PR4470. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74413 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28make these tests pass with the stack canary stuff even on targets where they ↵Chris Lattner
default to on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74412 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Fix incorrect AST's being produced, noticed by Eli.Nate Begeman
The issue this was working around is no longer present in TOT clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74411 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Now this test case passes.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74410 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Adjust retrieve handler priority. If a field is of array type, it should be Zhongxing Xu
handled by RetrieveArray(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74409 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Invalidate a field of struct type by setting its default value to conjured Zhongxing Xu
symbol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74408 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Do not crash on binding concrete integer location.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74407 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Simplify some code. As in region store, we always expect the location is aZhongxing Xu
memregion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74406 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28Add stack protector support to clang. This generates the 'ssp' and 'sspreq'Bill Wendling
function attributes. There are predefined macros that are defined when stack protectors are used: __SSP__=1 with -fstack-protector and __SSP_ALL__=2 with -fstack-protector-all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74405 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-28OpenCL 1.0 support: Nate Begeman
Handle rules for ExtVector + ExtVector and ExtVector + Scalar operations. Fix problem Eli noticed where we were allowing pointer types to be splatted to vector elements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74404 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Implement feedback from Eli re: the purpose of lax vector conversionsNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74397 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Improve support for overloaded operator templates.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74390 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Fix the parser error hanlding for __builtin_offsetof to actually print Eli Friedman
out an error for a malformed __builtin_offsetof. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74388 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Add a Last Updated field to the C++ status pageDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74387 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Renamed MarcDestructorReferenced -> MarkDestructorReferencedFariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74386 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Fix screwup with my previous patch which broke tests. (The patch is Eli Friedman
making sure we return true when annotating a function template with explicit template arguments, but not when we don't annotate anything.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74383 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Fix a crash with constructs like x<false>() in C++. No testcase because Eli Friedman
it doesn't actually work yet; we just error out a bit more gracefully. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74381 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Fix a bogus error overloading an operator where the only class Eli Friedman
parameter has a dependent type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74380 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Implement support for the format_arg attribute. Fixes PR4442.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74369 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Make it possible for using decls to point to operators. Fixes PR4441.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74362 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Remove the last 'GetXXX' methods from GRStateManager.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74361 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-27Make a note of improvements to function templatesDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74360 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Patch to mark destructors when they are used.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74359 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Fix test.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74358 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Set the rest of the flags we need to perform template argumentDouglas Gregor
deduction using a base class of the argument type. No actual functionality change; this is just a hook. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74356 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26During template argument deduction from a function call, allowDouglas Gregor
deduction from pointer and pointer-to-member types to work even in the presence of a qualification conversion (C++ [temp.deduct.type]p3 bullet 2). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74354 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26More auto work.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74339 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Fix test.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74335 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26A little template argument deduction test uncovered an "oops". As partDouglas Gregor
of template instantiation, we were dropping cv-qualifiers on the instantiated type in a few places. This change reshuffles the type-instantiation code a little bit so that there's a single place where we add qualifiers to the instantiated type, so that we won't end up with this same bug in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74331 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26OpenCL 1.0 Support: fix a bug with lvalue swizzlesNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74324 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Template argument deduction is no longer responsible for checkingDouglas Gregor
non-dependent parameter types. Instead, class template partial specializations perform a final check of all of the instantiated arguments. This model is cleaner, and works better for function templates where the "final check" occurs during overload resolution. Also, cope with cv-qualifiers when the parameter type was originally a reference type, so that the deduced argument can be more qualified than the transformed argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74323 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Can't have arrays of auto.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74314 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26An auto variable can't appear in its own initializer.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74312 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Implement enough of the 'auto' keyword so we can claim to support N2546.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74307 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26typoDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74305 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Revrt PR4228 fix for now.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74304 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Simplify, and fix a possible crash (never happens however, because we don't everDaniel Dunbar
take this path with non-builtin floating point types). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74303 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Fix bar title in graphs.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74302 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Improve template argument deduction for reference parameters whenDouglas Gregor
deducing template arguments from a function call. Plus, add a bunch of tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74301 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26OpenCL 1.0 Support:Nate Begeman
Add support for scalar to vector and partially initialized vector constant initializers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74299 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Update performance numbers (missed a link)Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74297 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26Update performance numbers.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74296 91177308-0d34-0410-b5e6-96231b3b80d8