diff --git a/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/index/ctagsindexer/CTagEntry.java b/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/index/ctagsindexer/CTagEntry.java index f8b448ccb67..a099ab25f85 100644 --- a/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/index/ctagsindexer/CTagEntry.java +++ b/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/index/ctagsindexer/CTagEntry.java @@ -216,7 +216,10 @@ class CTagEntry{ private char[][] getFunctionSignature() { String signature = (String) tagExtensionField.get(CTagsConsoleParser.SIGNATURE); - if (signature.equals("()")){ //$NON-NLS-1$ + //Under Exuberant CTags 5.5.4, in the C parsing mode: a function that doesn't take any parameters + //will have no signature string (resulting in null) + if (signature == null || + signature.equals("()")){ //$NON-NLS-1$ char[][] voidSignature = new char[1][]; voidSignature[0] = "void".toCharArray(); //$NON-NLS-1$ return voidSignature;