Question: Using the syntax of C, write a recursive-descent subprogram that corresponds to the following EBNF rule -> do while ( ); In this rule, (

Using the syntax of C, write a recursive-descent subprogram that corresponds to the following EBNF rule -> do while (); In this rule, ( and) are not metasymbols. You may assume that the lex function reads a single lexeme, whose token code is left in the nextToken variable. Assume that the codes for the do, while, left parenthesis, right parenthesis, and semicolon tokens are DO CODE, WHILE_CODE, LEFTPAREN CODE, RIGHTPAREN CODE, and SEMICOLON CODE, respectively. Have your function call the error function if it detects an error. Using the syntax of C, write a recursive-descent subprogram that corresponds to the following EBNF rule -> do while (); In this rule, ( and) are not metasymbols. You may assume that the lex function reads a single lexeme, whose token code is left in the nextToken variable. Assume that the codes for the do, while, left parenthesis, right parenthesis, and semicolon tokens are DO CODE, WHILE_CODE, LEFTPAREN CODE, RIGHTPAREN CODE, and SEMICOLON CODE, respectively. Have your function call the error function if it detects an error