| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
parameter name.
Fixes PR8012.
llvm-svn: 118138
|
|
|
|
| |
llvm-svn: 117963
|
|
|
|
| |
llvm-svn: 117942
|
|
|
|
|
|
| |
deciding whether to queue a decl for unused-declaration warnings.
llvm-svn: 117431
|
|
|
|
| |
llvm-svn: 117182
|
|
|
|
|
|
|
|
|
| |
redeclarations of main appropriately rather than allowing it to be
overloaded. Also, disallowing declaring main as a template.
Fixes GCC DejaGNU g++.old-deja/g++.other/main1.C.
llvm-svn: 117029
|
|
|
|
|
|
|
|
| |
function decls.
Reviewed by rjmccall and nlewycky.
llvm-svn: 116979
|
|
|
|
|
|
|
| |
construct an unsupported friend when there's a friend with a templated
scope specifier. Fixes a consistency crash, rdar://problem/8540527
llvm-svn: 116786
|
|
|
|
| |
llvm-svn: 116709
|
|
|
|
|
|
|
| |
1. enum underlying type is int by default.
2. Error "enumerator value is not representable in the underlying type"is a ExtWarning
llvm-svn: 116704
|
|
|
|
| |
llvm-svn: 116692
|
|
|
|
| |
llvm-svn: 116662
|
|
|
|
|
|
|
|
| |
by marking the decl invalid isn't. Make some steps towards supporting these
and then hastily shut them down at the last second by marking them as
unsupported.
llvm-svn: 116661
|
|
|
|
|
|
|
|
| |
flexible array member, so long as the flexibility array member is
either not initialized or is initialized with an empty initializer
list. Fixes <rdar://problem/8540437>.
llvm-svn: 116647
|
|
|
|
|
|
| |
as the class itself. Fixes PR7082.
llvm-svn: 116573
|
|
|
|
|
|
| |
ambiguous context.
llvm-svn: 116567
|
|
|
|
|
|
| |
initialized. Fixes PR7076.
llvm-svn: 116553
|
|
|
|
|
|
|
|
| |
should contain actual redeclarations, not implicits.
As a bonus, now we don't deserialize it unless we need it.
llvm-svn: 116504
|
|
|
|
|
|
| |
in a base class. Fixes PR8168.
llvm-svn: 116448
|
|
|
|
|
|
|
|
| |
members. Provide a hard error when the qualification doesn't match the
current class type, or a warning + Fix-it if it does match the current
class type. Fixes PR8159.
llvm-svn: 116445
|
|
|
|
|
|
|
|
| |
Fixes a crash and diagnoses the error condition of an unqualified
friend which doesn't resolve to something. I'm still not certain how
this is useful.
llvm-svn: 116393
|
|
|
|
|
|
|
|
| |
of templated-scope friends by marking them invalid and white-listing all
accesses until such time as we implement them. Fixes a crash, this time
without a broken test case.
llvm-svn: 116364
|
|
|
|
| |
llvm-svn: 116300
|
|
|
|
| |
llvm-svn: 116166
|
|
|
|
| |
llvm-svn: 116144
|
|
|
|
|
|
| |
bit by me).
llvm-svn: 116122
|
|
|
|
|
|
| |
to white-list conversions required by system headers. rdar://problem/8232669
llvm-svn: 116029
|
|
|
|
| |
llvm-svn: 116020
|
|
|
|
|
|
|
|
| |
waiting until we think we need it: we didn't catch all of the places
where we actually needed it, and we probably wouldn't ever. Fixes a
C++ PCH crasher.
llvm-svn: 115621
|
|
|
|
|
|
|
|
|
|
|
| |
for member functions. + Fixit.
Example:
class A {
void A::foo(); //warning: extra qualification on member 'foo'
};
llvm-svn: 115347
|
|
|
|
|
|
|
|
|
|
|
| |
completely into CXXRecordDecl, by adding a new completeDefinition()
function. This required a little reshuffling of the final-overrider
checking code, since the "abstract" calculation in the presence of
abstract base classes needs to occur in
CXXRecordDecl::completeDefinition() but we don't want to compute final
overriders more than one in the common case.
llvm-svn: 115007
|
|
|
|
|
|
| |
<rdar://problem/8459981>.
llvm-svn: 114984
|
|
|
|
|
|
| |
Fixes rdar://8476159.
llvm-svn: 114982
|
|
|
|
|
|
|
|
|
|
|
|
| |
in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>.
This reinstates r114924, with one crucial bug fix: we were ignoring
the implicit fields created by anonymous structs/unions when updating
the bits in CXXRecordDecl, which means that a class/struct containing
only an anonymous class/struct would be considered "empty". Hilarity
follows.
llvm-svn: 114980
|
|
|
|
|
|
|
|
| |
Centralize the management of CXXRecordDecl::DefinitionData's Aggregate
and PlainOldData bits in CXXRecordDecl itself. Another milepost on the
road toward <rdar://problem/8459981>.
llvm-svn: 114977
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
one of them) was causing a series of failures:
http://google1.osuosl.org:8011/builders/clang-x86_64-darwin10-selfhost/builds/4518
svn merge -c -114929 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114929 into '.':
U include/clang/Sema/Sema.h
U include/clang/AST/DeclCXX.h
U lib/Sema/SemaDeclCXX.cpp
U lib/Sema/SemaTemplateInstantiateDecl.cpp
U lib/Sema/SemaDecl.cpp
U lib/Sema/SemaTemplateInstantiate.cpp
U lib/AST/DeclCXX.cpp
svn merge -c -114925 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114925 into '.':
G include/clang/AST/DeclCXX.h
G lib/Sema/SemaDeclCXX.cpp
G lib/AST/DeclCXX.cpp
svn merge -c -114924 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114924 into '.':
G include/clang/AST/DeclCXX.h
G lib/Sema/SemaDeclCXX.cpp
G lib/Sema/SemaDecl.cpp
G lib/AST/DeclCXX.cpp
U lib/AST/ASTContext.cpp
svn merge -c -114921 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114921 into '.':
G include/clang/AST/DeclCXX.h
G lib/Sema/SemaDeclCXX.cpp
G lib/Sema/SemaDecl.cpp
G lib/AST/DeclCXX.cpp
llvm-svn: 114933
|
|
|
|
|
|
|
|
|
|
|
| |
HasTrivialConstructor, HasTrivialCopyConstructor,
HasTrivialCopyAssignment, and HasTrivialDestructor bits in
CXXRecordDecl's methods. This completes all but the Abstract bit and
the set of conversion functions, both of which will require a bit of
extra work. The majority of <rdar://problem/8459981> is now
implemented (but not all of it).
llvm-svn: 114929
|
|
|
|
|
|
| |
in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>.
llvm-svn: 114924
|
|
|
|
|
|
|
| |
and PlainOldData bits in CXXRecordDecl itself. Another milepost on the
road toward <rdar://problem/8459981>.
llvm-svn: 114921
|
|
|
|
|
|
|
| |
DeclaredDestructor and UserDeclaredDestructor bits in CXXRecordDecl
itself. Another step on the road to <rdar://problem/8459981>.
llvm-svn: 114918
|
|
|
|
|
|
|
|
| |
already be determined by isCopyAssignmentOperator(), and was set too
late in the process for all clients to see the appropriate
value. Cleanup only; no functionality change.
llvm-svn: 114916
|
|
|
|
|
|
|
| |
CXXRecordDecl::DefinitionData::DeclaredCopyAssignment, for
copy-assignment operators. Another step toward <rdar://problem/8459981>.
llvm-svn: 114899
|
|
|
|
|
|
|
| |
members with the same name as a decl outside the scope where the members are actually introduced.
Fixes http://llvm.org/PR6741
llvm-svn: 114641
|
|
|
|
| |
llvm-svn: 114315
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prototype scope, temporarily set the context of the enumeration
declaration to the translation unit. We do the same thing for
parameters, until we have an actual function declaration on which to
hang them. Fixes <rdar://problem/8435682>.
There is more work to do in this area, since we have existing bugs
with tags being declared/defined in function parameter lists. This fix
is correct, and we'll end up extending it when we deal with those
existing bugs.
llvm-svn: 114135
|
|
|
|
|
|
|
| |
- in union
- as the only element of a struct/class.
llvm-svn: 113909
|
|
|
|
|
|
| |
Assigning an underlying integral type to an enum forward declaration will come in a next patch.
llvm-svn: 113716
|
|
|
|
| |
llvm-svn: 113663
|
|
|
|
| |
llvm-svn: 113354
|
|
|
|
| |
llvm-svn: 113324
|