aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-08-29Patch to ir-gen user-defined conversions used in expressionsFariborz Jahanian
[12.3.2-p3] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80436 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Set the access specifier for using decls.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80435 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Improve instantiation of UnresolvedUsingDecls.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80434 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Patch for code gen. for c-style cast which ends inFariborz Jahanian
using class's conversion functions [12.3.2-p2] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80433 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Get rid of mostly-unused, buggy method.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80432 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29gcc 4.4 needs cstdio for printf. Reorder includes while at it.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80430 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Test case.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80426 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Fix the breakage by handling indirect instantiations. This would be muchJohn McCall
improved if there were a consistent name for getInstantiatedFromMemberX() across all classes. Cheap refactor if someone wants to do it, but let's get the buildbots happy first. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80425 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Instantiate member and base initializers. Patch by Anders Johnsen! (tweaked ↵Anders Carlsson
slightly by me) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80422 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Fix a couple issues with parsing invalid nested-name-specifiers.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80421 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29For consistency, just make friend declarations AS_public.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80420 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Fix a last-minute typo and make the test not emit temporaries.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80419 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Ensure code generation for friend declarations in class templates.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80418 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Refactor undefined argument checking into a Checker.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80417 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Store the SourceLocation of right parentheses in member initializers. Patch ↵Anders Carlsson
by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80416 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Don't assert that friend declarations must have access specifiers for now.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80415 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29CreateDeclRefExprs that point to UnresolvedUsingDecls.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80413 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-29Add another check for UnresolvedUsingDecl.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80412 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28iGenerate vcalls as we build up the methods. WIP.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80405 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Make sure we actually found a redeclaration before complaining about ↵Douglas Gregor
attributes added to a redeclaration in C++ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80403 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Add printing of access specifiers to DeclPrinter. The formatting is pretty ↵Anders Carlsson
bad but it works :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80402 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Remove #if 0'd code that is clearly not neededDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80399 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28path to ir-gen 12.3.1 Conversion by constructorFariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80398 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Don't crash when instantiating templates containing anonymous structs/unionsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80397 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Test instantiation of static data members that live within nestedDouglas Gregor
member templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80396 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Test instantiations of out-of-line member definitions of nested templates.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80395 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Fix and test template instantiation for nested member templates.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80394 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Tighten up the conversion from a single-level template argument listDouglas Gregor
to a multi-level template argument list by making it explicit. The forced auditing of callers found a bug in the instantiation of member classes inside member templates. I *love* static type systems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80391 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Remove the conversion from a multi-level template argument list back to a ↵Douglas Gregor
single template argument list. We no longer need this crutch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80390 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Implement template instantiation for member class templates.Douglas Gregor
When performing template instantiation of the definitions of member templates (or members thereof), we build a data structure containing the template arguments from each "level" of template instantiation. During template instantiation, we substitute all levels of template arguments simultaneously. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80389 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Add uninitialized values test case.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80388 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28retain/release checker: [CIContext createCGImage...] and friends returned CFTed Kremenek
objects that are not automatically garbage collected. This fixes <rdar://problem/7174400>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80387 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Improve support for using decls in the decl printer.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80386 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Add CIndex dependencies: libLLVMC and libclangSema (for IdentifierResolver).Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80385 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Tweak CIndex file to resolve to linking issues with the clang libraries. InTed Kremenek
particular, clangFrontend was not being linked in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80384 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Check for UnresolvedUsingDecl when determining if a declaration is a ↵Anders Carlsson
redeclaration or not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80383 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28test case for my last patch.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80382 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28patch to prevent crash in hopelessly incorrectFariborz Jahanian
method definition with labels. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80381 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Collect multiple levels of template arguments into a new type,Douglas Gregor
MultiLevelTemplateArgumentList. This is a baby step toward instantiating member templates; no intended functionality change yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80380 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Fix this for real.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80377 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Hide IdxVisitor and remove unimplemented method (causing link errors on x86_64Daniel Dunbar
linux builder). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80376 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Test case for conversion type method call ir-gen.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80375 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Allow explicit ctors for casts.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80374 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28When doing overload resolution, expressions that are value dependent but not ↵Anders Carlsson
type dependent and of integral type should not be treated as null pointer constants. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80369 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Pass InOverloadResolution all the way down to IsPointerConversion.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80368 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Lot's of little changes to get the C-based indexing API going...Steve Naroff
Work in progress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80367 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Instantiate unresolved using declarations.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80366 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28ir-gen related patch for type conversionFariborz Jahanian
with class type conversion methods. WIP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80365 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Add CX prefix to Cursor and move a comment.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80359 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28Omnibus friend decl refactoring. Instead of cloning AST classes for friendJohn McCall
declarations of same, introduce a single AST class and add appropriate bits (encoded in the namespace) for whether a decl is "real" or not. Much hackery about previously-declared / not-previously-declared, but it's essentially mandated by the standard that friends alter lookup, and this is at least fairly non-intrusive. Refactor the Sema methods specific to friends for cleaner flow and less nesting. Incidentally solve a few bugs, but I remain confident that we can put them back. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80353 91177308-0d34-0410-b5e6-96231b3b80d8