summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Set a member's access specifier even if it doesn't match the previous specifier.John McCall2009-12-232-0/+13
| | | | | | | | Prevents an assert on successive redeclarations. Fixed PR5573. llvm-svn: 91956
* Add basic support for analyzing CastExprs as lvalues.Ted Kremenek2009-12-233-4/+39
| | | | llvm-svn: 91952
* Objective-C methods can be variadic, too. Who knew.Douglas Gregor2009-12-232-0/+17
| | | | llvm-svn: 91951
* Switch Sema::CreateOverloadedUnaryOp over to InitializationSequence.Douglas Gregor2009-12-231-3/+8
| | | | llvm-svn: 91948
* warn when attribute warn_unused_result is applied to void functions.Nuno Lopes2009-12-223-3/+12
| | | | | | while at it, remove an outdated FIXME llvm-svn: 91946
* Allow the first parameter of operator new to be a cv-qualifiedDouglas Gregor2009-12-224-5/+6
| | | | | | | | size_t. Also, fix an issue with initialization of parameters in calls, where we weren't removing the cv-qualifiers on the parameter type itself. Fixes PR5823. llvm-svn: 91941
* Driver: When linking, don't warn about unused arguments which are obviously onlyDaniel Dunbar2009-12-222-11/+20
| | | | | | | | used during compilation. - There is no easy way to define this group properly, unfortunately, and maybe this is a losing strategy. For now this is unambiguous more friendly, though. llvm-svn: 91940
* implement -W[no-]fatal-errors, patch by Christian Adåker!Chris Lattner2009-12-223-3/+48
| | | | llvm-svn: 91938
* Add c++-analyzer symlink (which is used by scan-build)Ted Kremenek2009-12-221-0/+1
| | | | llvm-svn: 91937
* Make sure that reinterpret_cast gets a CastKind on all successfulDouglas Gregor2009-12-222-1/+11
| | | | | | | paths. Fixes "cannot compile this unexpected cast lvalue yet" error in llvm/lib/Analysis/IPA/GlobalsModRef.cpp. llvm-svn: 91932
* Revert accidental commitDouglas Gregor2009-12-222-2/+0
| | | | llvm-svn: 91930
* accept -Wcomments as an alias for -Wcomment, PR5855Chris Lattner2009-12-221-2/+3
| | | | llvm-svn: 91929
* Add using shadow decls to the "instantiated locals" map, fixing PR5847.John McCall2009-12-222-0/+19
| | | | llvm-svn: 91928
* Switch Sema::AddCXXDirectInitializerToDecl over to InitializationSequenceDouglas Gregor2009-12-229-44/+50
| | | | llvm-svn: 91927
* Add transfer functions support for visiting an Objective-C message ↵Ted Kremenek2009-12-225-47/+117
| | | | | | expression as an lvalue when the return type is a C++ reference. llvm-svn: 91926
* ARM: Remove a FIXME, it's not actually more complicated than that.Daniel Dunbar2009-12-221-1/+0
| | | | llvm-svn: 91924
* Switch parameter passing for overloaded binary operators toDouglas Gregor2009-12-221-7/+31
| | | | | | | InitializationSequence. Fixes the -fsyntax-only failure in llvm/lib/Transforms/Scalar/InstructionCombining.cpp. llvm-svn: 91921
* Serialize the NoReturn bit on FunctionTypes for precompiled headersDouglas Gregor2009-12-224-4/+13
| | | | llvm-svn: 91911
* Enter the scope of an initializer for direct-initialization as well asDouglas Gregor2009-12-222-0/+18
| | | | | | for copy-initialization. llvm-svn: 91909
* When transforming a C++ "new" expression that was not explicitly givenDouglas Gregor2009-12-222-0/+39
| | | | | | | a size, check whether the transformed type is itself an array type. If so, take the major array bound as the size to allocate. Fixes PR5833. llvm-svn: 91907
* Switch parameter-passing for calls via function pointers (where weDouglas Gregor2009-12-223-18/+30
| | | | | | don't have a FunctionDecl) over to InitializationSequence. llvm-svn: 91906
* Switch InitializedEntity from TypeLoc down to just QualTypes, since we don't ↵Douglas Gregor2009-12-225-150/+60
| | | | | | use the location information but we did spend a bunch of time building faked-up TypeLocs llvm-svn: 91905
* Move the implementation of ASTContext::getTypeSizeInChars() to the .cpp file toKen Dyck2009-12-223-7/+14
| | | | | | avoid #including CharUnits.h in ASTContext.h. llvm-svn: 91903
* Switch initialization of parameters in a call over toDouglas Gregor2009-12-227-17/+43
| | | | | | | | | | | InitializationSequence (when a FunctionDecl is present). This required a few small fixes to initialization sequences: - Make sure to use the adjusted parameter type for initialization of function parameters. - Implement transparent union calling semantics in C llvm-svn: 91902
* Make sure that we mangle overloaded operators that are member functions ↵Anders Carlsson2009-12-223-10/+43
| | | | | | | | correctly, giving them the correct arity. With this seemingly insignificant fix, we are now able to build and link clang using clang itself! (LLVM still has to be built with gcc for the time being). llvm-svn: 91893
* Work around PR5514.Anders Carlsson2009-12-221-1/+2
| | | | llvm-svn: 91891
* fix a bug handling the gnu ?: extension. Patch by Storlek on IRC,Chris Lattner2009-12-222-1/+2
| | | | | | who prefers to be stealthy and mysterious. llvm-svn: 91888
* When we simply return a retained member expression when instantiating, we ↵Anders Carlsson2009-12-222-1/+33
| | | | | | must also mark the member decl as referenced. llvm-svn: 91887
* Zap CheckInitializerTypes.Eli Friedman2009-12-222-116/+0
| | | | llvm-svn: 91884
* Switch default arguments over to InitializationSequence.Eli Friedman2009-12-224-4/+8
| | | | llvm-svn: 91883
* Switch compound literals over to InitializationSequence.Eli Friedman2009-12-222-3/+10
| | | | llvm-svn: 91882
* Switch file-scope assignment initialization over to InitializationSequence.Eli Friedman2009-12-228-23/+30
| | | | llvm-svn: 91881
* x86_64: Structures with no fields but which have padding should be classified asDaniel Dunbar2009-12-223-2/+9
| | | | | | | | integer. - This is consistent, but may not be correct. I will revisit x86_64 ABI handling for C++ as a whole at some point. - PR5831. llvm-svn: 91874
* Centralize the emission/suppression/delay of diagnostics describing runtime ↵Douglas Gregor2009-12-222-60/+53
| | | | | | before in the new function Sema::DiagRuntimeBehavior, addressing one of Chris' comments. llvm-svn: 91870
* Stop diagnosing the use of inner classes as friends. ddunbar asked whetherJohn McCall2009-12-222-9/+4
| | | | | | | | | this was useful, and on review Doug and I decided it was probably on the level of a bug in the standard and therefore not worth a warning even in -pedantic. If someone disagrees and urgently wants clang++ to warn about this in strict c++98 mode, we can talk about it. llvm-svn: 91868
* Template code for rewrite of __block variables - wip.Fariborz Jahanian2009-12-221-0/+7
| | | | llvm-svn: 91865
* Eliminate the ASTContext argument to CXXConstructorDecl::isCopyConstructor, ↵Douglas Gregor2009-12-229-17/+17
| | | | | | since the context is available in the Decl llvm-svn: 91862
* When converting from a type to itself or one of its base classes via aDouglas Gregor2009-12-222-1/+16
| | | | | | | | | constructor call, the conversion is only a standard conversion sequence if that constructor is a copy constructor. This fixes PR5834 in a semi-lame way, because the "real" fix will be to move over to InitializationSequence. That will happen "soonish", but not now. llvm-svn: 91861
* When filling in value initializations within an initializer list, beDouglas Gregor2009-12-222-65/+103
| | | | | | | sure to fill in the initialized member of a union when a member was explicitly designated. Fixes PR5843. llvm-svn: 91858
* Providing support for rewriting of block copy/dispose ofFariborz Jahanian2009-12-211-4/+11
| | | | | | imported block variables. WIP. llvm-svn: 91856
* ARM: Honor -mfpu= and set __VFP_FP__ and __ARM_NEON__ "correctly".Daniel Dunbar2009-12-214-10/+89
| | | | | | | | - Correctly is in quotes, because we are following what I interpreted as GCC's intent (which diverges from practice, naturally). - Also, fix the arch define for arm1136jf-s. llvm-svn: 91855
* Improve updating of test/Makefile for out-of-dir builds.Daniel Dunbar2009-12-211-1/+1
| | | | llvm-svn: 91854
* When a template-id refers to a single function template, and theDouglas Gregor2009-12-218-30/+249
| | | | | | | | | | explicitly-specified template arguments are enough to determine the instantiation, and either template argument deduction fails or is not performed in that context, we can resolve the template-id down to a function template specialization (so sayeth C++0x [temp.arg.explicit]p3). Fixes PR5811. llvm-svn: 91852
* Introduce an assertion to ensure that template argument deduction doesDouglas Gregor2009-12-211-1/+1
| | | | | | | | | not deduce an "overload" type. Such a deduction indicates a failure in semantic analysis (e.g., PR5811) that currently isn't caught until code-generation time. This assertions makes it clearer that this particular issue is a semantic-analysis problem, not a code-gen problem. llvm-svn: 91844
* Improve on my previous fix for debug information. Rather thanDouglas Gregor2009-12-211-51/+42
| | | | | | | | | recursing in CGDebugInfo::CreateTypeNode, teach CanonicalizeTypeForDebugInfo---now called UnwrapTypeForDebugInfo---to keep unwrapping the type until we hit something that can be represented by debug information. Thanks to Anders for pointing this out! llvm-svn: 91840
* Teach debug info generation to handle TemplateSpecializationType,Douglas Gregor2009-12-211-3/+50
| | | | | | | | ElaboratedType, QualifiedNameType, and SubstTemplateTypeParmType type nodes. Also, produce an "unsupported" diagnostic for C++0x type nodes and "typeof" nodes, rather than asserting nondescriptly. llvm-svn: 91837
* Add ToolChain::getDriver() and use it instead of going through the HostInfoDaniel Dunbar2009-12-214-45/+50
| | | | | | object. llvm-svn: 91830
* Allow comparison of 'void *' with function pointer Fariborz Jahanian2009-12-212-1/+21
| | | | | | as a g++ extension (fixes radar 7481987). llvm-svn: 91827
* Reorganize the base-lookup bits of ActOnMemInitializer in order to betterJohn McCall2009-12-211-8/+24
| | | | | | support diagnostics and error recovery. llvm-svn: 91825
* Add comments.Zhongxing Xu2009-12-211-0/+1
| | | | llvm-svn: 91818
OpenPOWER on IntegriCloud