Bug 295194 -  [C99 Parser] class cast exception when parsing KnR syntax
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
index 65c5c4b..3fee87f 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
@@ -651,8 +651,8 @@
 	
     /**
      * function_definition
-     *     ::= declaration_specifiers <openscope> declarator 
-     *         <openscope> declaration_list compound_statement
+     *     ::= declaration_specifiers <openscope-ast> knr_function_declarator 
+     *     <openscope-ast> declaration_list compound_statement
      */
 	public void consumeFunctionDefinitionKnR() {
     	IASTCompoundStatement  body = (IASTCompoundStatement) astStack.pop();
@@ -663,7 +663,7 @@
     	ICASTKnRFunctionDeclarator decl = (ICASTKnRFunctionDeclarator) astStack.pop();
     	astStack.closeScope();
 
-    	ICASTSimpleDeclSpecifier declSpecifier = (ICASTSimpleDeclSpecifier) astStack.pop();
+    	ICASTDeclSpecifier declSpecifier = (ICASTDeclSpecifier) astStack.pop();
     	decl.setParameterDeclarations(declarations);
 		
 		// re-compute the length of the declaration to take the parameter declarations into account