This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 269823
Collapse All | Expand All

(-)a/cnd.modelimpl/src/org/netbeans/modules/cnd/modelimpl/content/project/ClassifierContainer.java (-1 / +5 lines)
Lines 163-170 Link Here
163
        return result;
163
        return result;
164
    }
164
    }
165
165
166
    public Collection<CsmInheritance> getInheritances(CharSequence name){
166
    public Collection<CsmInheritance> getInheritances(CharSequence name) {
167
        Collection<CsmUID<CsmInheritance>> inh;
167
        Collection<CsmUID<CsmInheritance>> inh;
168
        int i = CharSequenceUtils.lastIndexOf(name, "::"); //NOI18N
169
        if (i >= 0) {
170
            name = name.subSequence(i + 2, name.length());
171
        }
168
        name = CharSequences.create(name);
172
        name = CharSequences.create(name);
169
        try {
173
        try {
170
            declarationsLock.readLock().lock();
174
            declarationsLock.readLock().lock();
(-)a/cnd.modelimpl/src/org/netbeans/modules/cnd/modelimpl/impl/services/TypeHierarchyResolverImpl.java (-1 / +8 lines)
Lines 53-58 Link Here
53
import java.util.Set;
53
import java.util.Set;
54
import java.util.concurrent.ConcurrentHashMap;
54
import java.util.concurrent.ConcurrentHashMap;
55
import org.netbeans.modules.cnd.api.model.CsmClass;
55
import org.netbeans.modules.cnd.api.model.CsmClass;
56
import org.netbeans.modules.cnd.api.model.CsmClassForwardDeclaration;
56
import org.netbeans.modules.cnd.api.model.CsmClassifier;
57
import org.netbeans.modules.cnd.api.model.CsmClassifier;
57
import org.netbeans.modules.cnd.api.model.CsmFile;
58
import org.netbeans.modules.cnd.api.model.CsmFile;
58
import org.netbeans.modules.cnd.api.model.CsmInheritance;
59
import org.netbeans.modules.cnd.api.model.CsmInheritance;
Lines 93-99 Link Here
93
    }
94
    }
94
95
95
    private Collection<CsmReference> getSubTypesImpl(CsmClass referencedClass, boolean directSubtypesOnly) {
96
    private Collection<CsmReference> getSubTypesImpl(CsmClass referencedClass, boolean directSubtypesOnly) {
96
        CsmFile file = referencedClass.getContainingFile();
97
         CsmFile file = referencedClass.getContainingFile();
97
        long fileVersion = CsmFileInfoQuery.getDefault().getFileVersion(file);
98
        long fileVersion = CsmFileInfoQuery.getDefault().getFileVersion(file);
98
        CsmProject project = file.getProject();
99
        CsmProject project = file.getProject();
99
        Map<CsmUID<CsmClass>,Set<CsmUID<CsmClass>>> fullMap = getOrCreateFullMap(project, fileVersion);
100
        Map<CsmUID<CsmClass>,Set<CsmUID<CsmClass>>> fullMap = getOrCreateFullMap(project, fileVersion);
Lines 171-176 Link Here
171
        for (CsmInheritance inh : project.findInheritances(referencedClass.getName())){
172
        for (CsmInheritance inh : project.findInheritances(referencedClass.getName())){
172
            CsmClassifier classifier = inh.getClassifier();
173
            CsmClassifier classifier = inh.getClassifier();
173
            if (classifier != null) {
174
            if (classifier != null) {
175
                if (CsmKindUtilities.isClassForwardDeclaration(classifier)) {
176
                    CsmClass refferedClass = ((CsmClassForwardDeclaration) classifier).getCsmClass();
177
                    if (CsmKindUtilities.isClassifier(refferedClass)) {
178
                        classifier = (CsmClassifier) referencedClass;
179
                    }
180
                }
174
                if (CsmKindUtilities.isInstantiation(classifier)) {
181
                if (CsmKindUtilities.isInstantiation(classifier)) {
175
                    CsmOffsetableDeclaration template = ((CsmInstantiation)classifier).getTemplateDeclaration();
182
                    CsmOffsetableDeclaration template = ((CsmInstantiation)classifier).getTemplateDeclaration();
176
                    if (CsmKindUtilities.isClassifier(template)) {
183
                    if (CsmKindUtilities.isClassifier(template)) {

Return to bug 269823