aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-08-16Only do this for initializers of course.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79197 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Destroy bound temporaries.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79196 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Improve the diagnostic emitted when an unused ObjC property getterChris Lattner
is found. Instead of complaining about a generic "unused expr", emit: t.m:7:3: warning: property access result unused - getters should not have side effects While objc property getters *could* have side effects, according to the language best practices, they *shouldn't*. Hopefully the diagnostic now gets this across. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79192 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16fix my previous commit.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79191 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16This is an attempt to improve loc info for 'unused result' expressionChris Lattner
warnings, but it fails because we don't have the location of the . and I don't understand ObjCKVCRefExpr. I'll revisit this later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79190 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Add an IsInitializer flag to EmitAnyExpr. This is used to prevent ↵Anders Carlsson
temporaries from being destroyed when they're bound to a reference variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79179 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16No need to append extra padding now that we don't create packed structs for ↵Anders Carlsson
simple cases like the constant string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79178 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16AddInitializerToDecl can't take a FullExprArg. Make it take an ExprArg, and ↵Anders Carlsson
create the CXXExprWithTemporaries before setting the initializer on the VarDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79176 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Call MaybeBindToTemporary for overloaded binary and unary operators.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79173 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Call MaybeBindToTemporary when constructing functino call operator calls.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79172 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Add MaybeBindToTemporary calls for member call expressions.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79171 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Make sure to call MaybeBindToTemporary when creating CallExprs.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79168 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Use the -NEXT feature of FileCheck.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79166 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Move builtin call checking out into a separate function, make ↵Anders Carlsson
CheckFunctionCall and CheckBlockCall return bool instead. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79157 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-16Cleanups and fixups for calculating the virtual base offsets. WIP.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79156 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15BuildCXXConstructExpr doesn't need to take an ASTContext.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79149 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Add an explicit constructor to ActiveTemplateInstantiation which Eli Friedman
initializes all the members; this fixes a valgrind error in the regression tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79148 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Add a simple test for temporaries.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79147 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Fix test failure due to uninitialized member.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79145 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Implement __is_empty. Patch by Sean Hunt.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79143 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Ignore -Wno-import.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79128 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Don't perform integer promotions on the operand to a cast; this Eli Friedman
simplifies the AST, and can matter in some rare cases involving casts to vector types. Patch by Enea Zaffanella. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79126 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Improved on ir-gen for synthesis of non-trivial defaultFariborz Jahanian
constructor body whose class has non-static data-members which required non-trivial construction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79125 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Add an additional C++ hardcoded search path.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79075 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Make test more precise.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79074 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Make test a bit more precise.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Extend the ProgramPoint to include the context information LocationContext,Zhongxing Xu
which is either a stack frame context of the function or a local scope context. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79072 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Fix for PR4721: adjust CodeGen and ASTContext so that we have a Eli Friedman
consistent model for handling size expressions for VLAs. The model is essentially as follows: VLA types own their associated expression. In some cases, we need to create multiple VLA types to represent a given VLA (for canonical types, or qualifiers on array types, or type merging). If we need to create multiple types based off of the same VLA declaration, we use the new refcounting functionality so they can all own the expression. The VLASizeMap in CodeGenFunction then uses the size expression to identify the group of VLA types based off of the same original declaration. I'm not particularly attached to the VLA types owning the expression, but we're stuck with at least until someone comes up with a way to walk the VLA expressions for a declaration. I did the parallel fix in ASTContext for DependentSizedArrayType, but I haven't really looked closely at it, so there might still be issues there. I'll clean up the code duplication in ASTContext in a followup commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79071 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Disable all recognition of main() in -ffreestanding. Addresses bug #4720.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79070 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15Change handling of attribute 'malloc' to only accept the attribute on functionTed Kremenek
declarations (and not function pointers). This is consistent with GCC. Accepting this attribute on function pointers means that the attribute should be treated as a type qualifier, which apparently is not what GCC does. We obviously can change this later should we desire to enhance the 'malloc' attribute in this way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79060 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-15minor cleanups for VLA stuff.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79059 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14use GetVLASize instead of accessing VLASizeMap directly, this gets an assert if Chris Lattner
VLASize isn't populated for the type yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79057 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14lit: flush stdout in no-fancy-progress-bar mode as well.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79056 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Add more attribute 'malloc' test cases involving function pointers.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79055 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Per Eli Friedman's feedback, handle attribute 'malloc' being applied toTed Kremenek
declarations of function pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79053 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14objc2's foreach statement's selector type can beFariborz Jahanian
a block pointer too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79050 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Do now overflow while calulating upper bound for zero sized array.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79043 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14This test case does not need to include 'stdlib.h'.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79042 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Use 'dyn_cast' instead of a check for a function declaration followed by aTed Kremenek
'cast'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79041 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Improve Sema's handling of attribute 'malloc' to reject the attribute whenTed Kremenek
attaching to Objective-C methods (which mirrors GCC's behavior) and to allow the return type of the function to be an Objective-C pointer or Block pointer (which GCC also accepts). Along the way, add 'const' to some of the pointer arguments of various utility functions... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79040 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14ir-gen for generation of trvial copy constructorFariborz Jahanian
call. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79034 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Make the CXXDefaultArgExpr constructor protected and add a static Create ↵Anders Carlsson
function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79013 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Pass '-Wno-' options to clang-cc. This fixes <rdar://problem/6943988>.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79011 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Fixed a regression in deciding when to issue warning on properties whichFariborz Jahanian
implement NSCopying protocol in GC mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79008 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Update/add links to developer meeting.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79005 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Fix a few typos.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78991 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14PR4715Shantonu Sen
-Wno-error disables WarningsAsErrors instead of mistakenly being treated like -Werror git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78987 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Fix spacingAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78981 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Support friend declarations in templates and test that argdep lookupJohn McCall
still works. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78979 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-14Testcase for a recent checkin.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78974 91177308-0d34-0410-b5e6-96231b3b80d8