aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/SemaLookup.cpp
diff options
context:
space:
mode:
authorSean Hunt <scshunt@csclub.uwaterloo.ca>2011-06-10 12:07:09 +0000
committerSean Hunt <scshunt@csclub.uwaterloo.ca>2011-06-10 12:07:09 +0000
commit3bde0ce7a18d2513ebe286df67baa32700fd3d6b (patch)
tree127d9f00b554264a01589bcbf1240635739e0eb1 /lib/Sema/SemaLookup.cpp
parent6f95f1be1807ca0695edf4c8773b70218a9ab731 (diff)
This change is breaking selfhost. Revert it until I have more time
to study it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132843 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaLookup.cpp')
-rw-r--r--lib/Sema/SemaLookup.cpp32
1 files changed, 5 insertions, 27 deletions
diff --git a/lib/Sema/SemaLookup.cpp b/lib/Sema/SemaLookup.cpp
index 46058b69d1..92ade1efcf 100644
--- a/lib/Sema/SemaLookup.cpp
+++ b/lib/Sema/SemaLookup.cpp
@@ -2269,8 +2269,7 @@ Sema::SpecialMemberOverloadResult *Sema::LookupSpecialMember(CXXRecordDecl *D,
(SM == CXXCopyConstructor &&
cast<CXXConstructorDecl>(M)->isCopyConstructor())) {
QualType ArgType = M->getType()->getAs<FunctionProtoType>()->getArgType(0);
- if (!ArgType->isReferenceType() ||
- ArgType->getPointeeType().isConstQualified())
+ if (ArgType->getPointeeType().isConstQualified())
Result->setConstParamMatch(true);
}
} else {
@@ -2311,10 +2310,10 @@ CXXConstructorDecl *Sema::LookupDefaultConstructor(CXXRecordDecl *Class) {
return cast_or_null<CXXConstructorDecl>(Result->getMethod());
}
-/// \brief Look up the copying constructor for the given class.
-CXXConstructorDecl *Sema::LookupCopyingConstructor(CXXRecordDecl *Class,
- unsigned Quals,
- bool *ConstParamMatch) {
+/// \brief Look up the copy constructor for the given class.
+CXXConstructorDecl *Sema::LookupCopyConstructor(CXXRecordDecl *Class,
+ unsigned Quals,
+ bool *ConstParamMatch) {
assert(!(Quals & ~(Qualifiers::Const | Qualifiers::Volatile)) &&
"non-const, non-volatile qualifiers for copy ctor arg");
SpecialMemberOverloadResult *Result =
@@ -2342,27 +2341,6 @@ DeclContext::lookup_result Sema::LookupConstructors(CXXRecordDecl *Class) {
return Class->lookup(Name);
}
-/// \brief Look up the copying assignment operator for the given class.
-CXXMethodDecl *Sema::LookupCopyingAssignment(CXXRecordDecl *Class,
- unsigned Quals, bool RValueThis,
- unsigned ThisQuals,
- bool *ConstParamMatch) {
- assert(!(Quals & ~(Qualifiers::Const | Qualifiers::Volatile)) &&
- "non-const, non-volatile qualifiers for copy assignment arg");
- assert(!(ThisQuals & ~(Qualifiers::Const | Qualifiers::Volatile)) &&
- "non-const, non-volatile qualifiers for copy assignment this");
- SpecialMemberOverloadResult *Result =
- LookupSpecialMember(Class, CXXCopyAssignment, Quals & Qualifiers::Const,
- Quals & Qualifiers::Volatile, RValueThis,
- ThisQuals & Qualifiers::Const,
- ThisQuals & Qualifiers::Volatile);
-
- if (ConstParamMatch)
- *ConstParamMatch = Result->hasConstParamMatch();
-
- return Result->getMethod();
-}
-
/// \brief Look for the destructor of the given class.
///
/// During semantic analysis, this routine should be used in lieu of