| Summary: | [Parser] declSpec of Parameter of type function parsed incorrectly | ||
|---|---|---|---|
| Product: | [Tools] CDT | Reporter: | Andrew Niefer <aniefer> |
| Component: | cdt-parser | Assignee: | Markus Schorn <mschorn.eclipse> |
| Status: | RESOLVED DUPLICATE | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | 3.0 | ||
| Target Milestone: | Future | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
Future means you commit to fix it in the Future. Inboxes can't make committments. Moving to '--'. |
typedef int t; t f( t (t) ); ^ ^2 This should be parsed as a function with a parameter which is a function returning t and taking 1 parameter type t. We are currently almost right, the t that is marked should be the decl Spec, however it is currently being parsed as the name of the parameter's function declarator. So currently, the parameter is named t and returning unspecified instead of having no name and returning t. The result is a problem on the 2nd mark due to a wrong type. see AST2CSpecFailingTest.test6_7_7s6().