summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Encapsulate "an array of TemplateArgumentLocs and two angle bracket ↵John McCall2009-11-2324-538/+414
| | | | | | | | | | locations" into a new class. Use it pervasively throughout Sema. My fingers hurt. llvm-svn: 89638
* Change Clang-Code-Compile tests to only -emit-llvm instead of runningDaniel Dunbar2009-11-231-1/+1
| | | | | | codegen/as. llvm-svn: 89634
* Teach CodeGenFunction::EmitDecl to ignore Using and UsingShadow decls.Daniel Dunbar2009-11-231-2/+6
| | | | llvm-svn: 89633
* x86_64, PR5582: Layout bases for C++ records.Daniel Dunbar2009-11-222-7/+48
| | | | | | | - Ideally we would have an single iteration interface for this, but this works for now. llvm-svn: 89632
* Recognize .hpp as a C++ header.Daniel Dunbar2009-11-221-0/+1
| | | | llvm-svn: 89630
* Add clang -cc1 parsing of analyzer options.Daniel Dunbar2009-11-224-4/+137
| | | | llvm-svn: 89629
* CMake: Add support for running tests with valgrind.Daniel Dunbar2009-11-221-0/+5
| | | | llvm-svn: 89625
* Fix LookupResult's sanity-check to handle shadow decls.John McCall2009-11-221-1/+2
| | | | llvm-svn: 89624
* Change CheckDeadStores to use Expr::isNullPointerConstant, which will ↵Ted Kremenek2009-11-222-7/+24
| | | | | | | | correctly determine whether an expression is a null pointer constant. Patch by Kovarththanan Rajaratnam! llvm-svn: 89621
* Use EmitStoreOfScalar when copying the scalar to the space allocated by 'new'.Anders Carlsson2009-11-222-2/+10
| | | | llvm-svn: 89613
* When laying out bitfields, make sure that the data size is always aligned to ↵Anders Carlsson2009-11-223-11/+45
| | | | | | a byte. This fixes PR5580. llvm-svn: 89611
* Update a test to FileCheck.Anders Carlsson2009-11-221-3/+2
| | | | llvm-svn: 89610
* Use intptr_t from stdint.h (in freestanding mode) instead of redefining it hereKen Dyck2009-11-221-2/+2
| | | | | | with __INTPTR_TYPE__. llvm-svn: 89609
* Test case for bug fixed in r89457.David Chisnall2009-11-221-0/+6
| | | | llvm-svn: 89605
* Move bit-field layout out into a separate function. No functionality change.Anders Carlsson2009-11-222-69/+87
| | | | llvm-svn: 89604
* Fix for PR5233.Edward O'Callaghan2009-11-221-1/+3
| | | | llvm-svn: 89603
* Define SIG_ATOMIC_MIN and SIG_ATOMIC_MAX in terms of __SIG_ATOMIC_WIDTH__.Ken Dyck2009-11-221-2/+2
| | | | llvm-svn: 89598
* Define __SIG_ATOMIC_WIDTH__ for use in stdint.h.Ken Dyck2009-11-222-0/+12
| | | | llvm-svn: 89597
* Undefined compound assignment result is checked in ↵Zhongxing Xu2009-11-221-9/+0
| | | | | | UndefinedAssignmentChecker. So this check is redundant. llvm-svn: 89592
* Remove invalid comments. The result is undefined only when operands are ↵Zhongxing Xu2009-11-221-2/+0
| | | | | | undefined. llvm-svn: 89591
* Save and restore the HasGen flag in MallocChecker.Zhongxing Xu2009-11-222-0/+3
| | | | llvm-svn: 89590
* Don't include a dead header.Benjamin Kramer2009-11-221-1/+0
| | | | llvm-svn: 89587
* Remove UndefinedAssignmentChecker's header.Zhongxing Xu2009-11-224-36/+21
| | | | llvm-svn: 89585
* Use intptr_t rather than long so that this test will not fail on LLP64 systems,Alexis Hunt2009-11-221-4/+6
| | | | | | where long is only 32-bits and so a reinterpret_cast would be ill-formed. llvm-svn: 89583
* If a C++ qualified id is followed by a postfix suffix, it is never the directJohn McCall2009-11-223-1/+58
| | | | | | | | | | | | | | operand of an addressof operator, and so we should not treat it as an abstract member-pointer expression and therefore suppress the implicit member access. This is really a well-formedness constraint on expressions: a DeclRefExpr of a FieldDecl or a non-static CXXMethodDecl (or template thereof, or unresolved collection thereof) should not be allowed in an arbitrary location in the AST. Arguably it shouldn't be allowed anywhere and we should have a different expr node type for this. But unfortunately we don't have a good way of enforcing this kind of constraint right now. llvm-svn: 89578
* Reorganize the intermediate BuildDeclarationNameExpr routines again.John McCall2009-11-223-87/+82
| | | | llvm-svn: 89575
* Consider a FunctionTemplate to be an overload all on its lonesome. TrackJohn McCall2009-11-228-82/+135
| | | | | | this information through lookup rather than rederiving it. llvm-svn: 89570
* Support emitting aggregate class initializers. Fixes PR5581.Anders Carlsson2009-11-212-2/+17
| | | | llvm-svn: 89569
* This patch implements objective-c's 'SEL' type as a built-inFariborz Jahanian2009-11-2114-43/+84
| | | | | | | | | | | | | | | | | | type and fixes a long-standing code gen. crash reported in at least two PRs and a radar. (radar 7405040 and pr5025). There are couple of remaining issues that I would like for Ted. and Doug to look at: Ted, please look at failure in Analysis/MissingDealloc.m. I have temporarily added an expected-warning to make the test pass. This tests has a declaration of 'SEL' type which may not co-exist with the new changes. Doug, please look at a FIXME in PCHWriter.cpp/PCHReader.cpp. I think the changes which I have ifdef'ed out are correct. They need be considered for in a few Indexer/PCH test cases. llvm-svn: 89561
* Make FixedAddressChecker and experimental check; it currently produces a ton ↵Ted Kremenek2009-11-212-1/+2
| | | | | | of false positives when analyzing some projects (e.g., Wine). llvm-svn: 89560
* Fix 80-cols violation.Alexis Hunt2009-11-211-1/+2
| | | | llvm-svn: 89558
* Overload resolution doesn't decide whether to do ADL or not anymore; stoppingJohn McCall2009-11-212-14/+5
| | | | | | threading that state. llvm-svn: 89557
* Mangler: Sketch mangling for TemplateArgument::Declaration kind.Daniel Dunbar2009-11-212-27/+100
| | | | | | - Several important FIXMEs related to whether arguments are expressions or external names, and the mangling of extern "C" names (c.f., PR5522). llvm-svn: 89556
* Mangler: Lift shouldMangleDeclName predicate out of CXXNameMangler::mangle.Daniel Dunbar2009-11-213-44/+49
| | | | | | | | - Sometimes we have to mangle things we wouldn't normally (e.g., because they appear in a template expression). - This also tidies up the predicate to be more obvious what is getting mangled. llvm-svn: 89555
* Mangler: Strengthen invariants, MangleContext::mangleName should only be ↵Daniel Dunbar2009-11-211-15/+12
| | | | | | called on var or function decls. llvm-svn: 89554
* Mangler: Inline a bunch of functions into their sole caller, not that I ↵Daniel Dunbar2009-11-211-106/+56
| | | | | | don't love typing for typings sake, but... llvm-svn: 89553
* DeclPrinter: Indent access specifiers.Daniel Dunbar2009-11-211-3/+6
| | | | llvm-svn: 89552
* Remove dead variable.Daniel Dunbar2009-11-211-1/+0
| | | | llvm-svn: 89551
* Mangler: Split isStdNamespace for when the caller already has a NamespaceDecl.Daniel Dunbar2009-11-211-5/+6
| | | | llvm-svn: 89550
* IRgen: Eliminate CXXNameMangler::mangleCXX{C,D}tor.Daniel Dunbar2009-11-211-24/+10
| | | | llvm-svn: 89549
* IRgen: Switch the C++ mangler interfaces to take the SmallVector to write into,Daniel Dunbar2009-11-216-96/+67
| | | | | | | instead of requiring clients to make a raw_svector_ostream, which is just an implementation detail. llvm-svn: 89548
* Sink free mangle* methods into MangleContext.Daniel Dunbar2009-11-216-239/+234
| | | | llvm-svn: 89547
* Add 1+2 consts.Daniel Dunbar2009-11-212-3/+3
| | | | llvm-svn: 89546
* Delete trailing space.Daniel Dunbar2009-11-211-85/+85
| | | | llvm-svn: 89545
* "Incremental" progress on using expressions, by which I mean totally rippingJohn McCall2009-11-2120-511/+723
| | | | | | | | | | | | | | | | | | | | | | into pretty much everything about overload resolution in order to wean BuildDeclarationNameExpr off LookupResult::getAsSingleDecl(). Replace UnresolvedFunctionNameExpr with UnresolvedLookupExpr, which generalizes the idea of a non-member lookup that we haven't totally resolved yet, whether by overloading, argument-dependent lookup, or (eventually) the presence of a function template in the lookup results. Incidentally fixes a problem with argument-dependent lookup where we were still performing ADL even when the lookup results contained something from a block scope. Incidentally improves a diagnostic when using an ObjC ivar from a class method. This just fell out from rewriting BuildDeclarationNameExpr's interaction with lookup, and I'm too apathetic to break it out. The only remaining uses of OverloadedFunctionDecl that I know of are in TemplateName and MemberExpr. llvm-svn: 89544
* Added rudimentary C++0x attribute support.Alexis Hunt2009-11-2126-164/+802
| | | | | | | | | | | | | | The following attributes are currently supported in C++0x attribute lists (and in GNU ones as well): - align() - semantics believed to be conformant to n3000, except for redeclarations and what entities it may apply to - final - semantics believed to be conformant to CWG issue 817's proposed wording, except for redeclarations - noreturn - semantics believed to be conformant to n3000, except for redeclarations - carries_dependency - currently ignored (this is an optimization hint) llvm-svn: 89543
* Add RegionStore test case that shows that floating point values are also ↵Ted Kremenek2009-11-211-0/+9
| | | | | | implicitly tracked for undefined values. (test case for <rdar://problem/6811085>). llvm-svn: 89538
* Fix refacto, gcc's cc1 needs to see --output-pch=, which is not just an aliasDaniel Dunbar2009-11-211-1/+1
| | | | | | for -output-pch=. llvm-svn: 89534
* Add another test case to show the precision of RegionStore overTed Kremenek2009-11-211-0/+23
| | | | | | | | BasicStore. In this example, BasicStore would lose information about the pointer in path after '*path++', causing the analyzer to falsely flag a null dereference. This addresses <rdar://problem/7191542>. llvm-svn: 89533
* Implement C++ [temp.param]p2 correctly, looking ahead when we see aDouglas Gregor2009-11-213-6/+38
| | | | | | | "typename" parameter to distinguish between non-type and type template parameters. Fixes the actual bug in PR5559. llvm-svn: 89532
OpenPOWER on IntegriCloud