FreeBSD/contrib/gcc/cp/parser.c
/* Parse an Objective-C typename.  */
Parse an Objective-C typename.
Parse an Objective - C typename .
static tree
cp_parser_objc_typename (cp_parser* parser)
{
  tree typename = NULL_TREE;
  if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_PAREN))
    {
      tree proto_quals, cp_type = NULL_TREE;
      cp_lexer_consume_token (parser->lexer);  
      proto_quals = cp_parser_objc_protocol_qualifiers (parser);
      if (cp_lexer_next_token_is_not (parser->lexer, CPP_CLOSE_PAREN))
	cp_type = cp_parser_type_id (parser);
      cp_parser_require (parser, CPP_CLOSE_PAREN, "`)'");
      typename = build_tree_list (proto_quals, cp_type);
    }
  return typename;
}
static tree cp_parser_objc_typename ( cp_parser * parser ) { tree typename = NULL_TREE ; if ( cp_lexer_next_token_is ( parser -> lexer , CPP_OPEN_PAREN ) ) { tree proto_quals , cp_type = NULL_TREE ; cp_lexer_consume_token ( parser -> lexer ) ; proto_quals = cp_parser_objc_protocol_qualifiers ( parser ) ; if ( cp_lexer_next_token_is_not ( parser -> lexer , CPP_CLOSE_PAREN ) ) cp_type = cp_parser_type_id ( parser ) ; cp_parser_require ( parser , CPP_CLOSE_PAREN , " " ) ; typename = build_tree_list ( proto_quals , cp_type ) ; } return typename ; }
Parse an Objective-C typename.
Parse an Objective - C typename .
/* Eat '('.  */ /* An ObjC type name may consist of just protocol qualifiers, in which
	 case the type shall default to 'id'.  */