Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorNathan Ridge2014-04-06 22:23:12 +0000
committerSergey Prigogin2014-04-07 00:54:33 +0000
commitb4d65483edfeb782388b24a5df489a20072af50a (patch)
tree79a9bd19faa29c0f8b578c188e9046cf7b145675 /core
parent8aa89d3dd80cff4c994a65a5583e0f7e133efc39 (diff)
downloadorg.eclipse.cdt-b4d65483edfeb782388b24a5df489a20072af50a.tar.gz
org.eclipse.cdt-b4d65483edfeb782388b24a5df489a20072af50a.tar.xz
org.eclipse.cdt-b4d65483edfeb782388b24a5df489a20072af50a.zip
Bug 432059 - Fix an "unsafe method call" error
Change-Id: I513a922c9ef6a55c33f5767830aabecaba9da396 Signed-off-by: Nathan Ridge <zeratul976@hotmail.com> Reviewed-on: https://git.eclipse.org/r/24512 Tested-by: Hudson CI Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com> IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com> Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Diffstat (limited to 'core')
-rw-r--r--core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ClassTypeHelper.java5
-rw-r--r--core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.java2
2 files changed, 5 insertions, 2 deletions
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ClassTypeHelper.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ClassTypeHelper.java
index bcfcff91e39..a8111ee3ed5 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ClassTypeHelper.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/ClassTypeHelper.java
@@ -354,7 +354,10 @@ public class ClassTypeHelper {
}
public static ICPPMethod[] getImplicitMethods(ICPPClassType classType, IASTNode point) {
- IScope scope = classType.getCompositeScope();
+ return getImplicitMethods(classType.getCompositeScope(), point);
+ }
+
+ public static ICPPMethod[] getImplicitMethods(IScope scope, IASTNode point) {
if (scope instanceof ICPPClassSpecializationScope) {
return ((ICPPClassSpecializationScope) scope).getImplicitMethods(point);
} else if (scope instanceof ICPPClassScope) {
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.java
index 48b114c94db..452733fd3f6 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.java
@@ -648,7 +648,7 @@ class PDOMCPPLinkage extends PDOMLinkage implements IIndexCPPBindingConstants {
if (type instanceof ICPPClassType) {
ArrayUtil.addAll(old, ClassTypeHelper.getImplicitMethods((ICPPClassType) type, point));
}
- ICPPMethod[] implicit= ((ICPPClassScope) scope).getImplicitMethods();
+ ICPPMethod[] implicit= ClassTypeHelper.getImplicitMethods(scope, point);
for (ICPPMethod method : implicit) {
if (!(method instanceof IProblemBinding)) {
PDOMBinding pdomBinding= adaptBinding(method);

Back to the top