diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java index 00d36d76c40..ed31b571bd7 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java @@ -2008,7 +2008,8 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser { ICPPASTTypeId aliasedType = typeId(DeclarationOptions.TYPEID); - if (LT(1) != IToken.tSEMI){ + final int nextToken = LT(1); + if (nextToken != IToken.tSEMI && nextToken != IToken.tEOC){ throw backtrack; } int endOffset = consume().getEndOffset(); diff --git a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTests.java b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTests.java index 5d2ba9620b0..01e804f022f 100644 --- a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTests.java +++ b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/contentassist2/CompletionTests.java @@ -1367,4 +1367,10 @@ public class CompletionTests extends AbstractContentAssistTest { final String[] expected = { "Specialization" }; assertContentAssistResults(fCursorOffset, expected, true, COMPARE_ID_STRINGS); } -} \ No newline at end of file + + // using Alias = C/*cursor*/ + public void testAliasDeclarationCompletion() throws Exception { + final String[] expectedID = { "C1", "C2", "C3" }; + assertContentAssistResults(fCursorOffset, expectedID, true, COMPARE_ID_STRINGS); + } +}