mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-15 13:05:22 +02:00
Bug 486149 - Name resolution problem with dependent conversion operator
Corrected two bugs pointed out in https://git.eclipse.org/r/#/c/64940/1 Change-Id: I44ec5b28a40db73857a7b687c3c784583810962b
This commit is contained in:
parent
dbd35a059a
commit
e60f8efdf3
1 changed files with 3 additions and 2 deletions
|
@ -164,7 +164,8 @@ final class ImplicitsAnalysis {
|
||||||
hasCopyAssignmentOperator = true;
|
hasCopyAssignmentOperator = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hasCopyConstructor && hasDestructor && hasCopyAssignmentOperator && baseSpecifiers.length == 0) {
|
if (hasCopyConstructor && hasDestructor && hasCopyAssignmentOperator && baseSpecifiers.length == 0
|
||||||
|
&& hasNonStaticFields) {
|
||||||
break; // Nothing else to look for.
|
break; // Nothing else to look for.
|
||||||
}
|
}
|
||||||
} else if (dcltor instanceof ICPPASTFieldDeclarator &&
|
} else if (dcltor instanceof ICPPASTFieldDeclarator &&
|
||||||
|
@ -212,7 +213,7 @@ final class ImplicitsAnalysis {
|
||||||
ICPPBase[] bases = ClassTypeHelper.getBases(classType, compositeTypeSpecifier);
|
ICPPBase[] bases = ClassTypeHelper.getBases(classType, compositeTypeSpecifier);
|
||||||
for (ICPPBase base : bases) {
|
for (ICPPBase base : bases) {
|
||||||
if (base.isVirtual())
|
if (base.isVirtual())
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
ICPPClassType[] baseClasses = ClassTypeHelper.getAllBases(classType, compositeTypeSpecifier);
|
ICPPClassType[] baseClasses = ClassTypeHelper.getAllBases(classType, compositeTypeSpecifier);
|
||||||
|
|
Loading…
Add table
Reference in a new issue