FreeBSD/contrib/gcc/cp/parser.c
/* APPLE LOCAL end radar 5277239 */
/* APPLE LOCAL begin C* property (Radar 4436866, 4591909) */
/* This routine parses the propery declarations. */
APPLE LOCAL end radar 5277239
APPLE LOCAL begin C* property (Radar 4436866, 4591909)
This routine parses the propery declarations.
APPLE LOCAL end radar 5277239 APPLE LOCAL begin C * property ( Radar 4436866 4591909 ) This routine parses the propery declarations .
static void
objc_cp_parse_property_decl (cp_parser *parser)
{
  int declares_class_or_enum;
  cp_decl_specifier_seq declspecs;
  cp_parser_decl_specifier_seq (parser,
						  CP_PARSER_FLAGS_NONE,
						  &declspecs,
						  &declares_class_or_enum);
  while (cp_lexer_next_token_is_not (parser->lexer, CPP_SEMICOLON))
    {
      tree property;
      cp_token *token;
      cp_declarator *declarator
      = cp_parser_declarator (parser, CP_PARSER_DECLARATOR_NAMED,
						NULL, NULL, false);
      property = grokdeclarator (declarator, &declspecs, NORMAL,0, NULL);
      if (property == error_mark_node || property == NULL_TREE)
	return;
      objc_add_property_variable (copy_node (property));
      if (token->type == CPP_COMMA)
      {
	cp_lexer_consume_token (parser->lexer);  
	continue;
      }
      else if (token->type == CPP_EOF)
	return;
    }
    cp_lexer_consume_token (parser->lexer);  
}
static void objc_cp_parse_property_decl ( cp_parser * parser ) { int declares_class_or_enum ; cp_decl_specifier_seq declspecs ; cp_parser_decl_specifier_seq ( parser , CP_PARSER_FLAGS_NONE , & declspecs , & declares_class_or_enum ) ; while ( cp_lexer_next_token_is_not ( parser -> lexer , CPP_SEMICOLON ) ) { tree property ; cp_token * token ; cp_declarator * declarator = cp_parser_declarator ( parser , CP_PARSER_DECLARATOR_NAMED , NULL , NULL , false ) ; property = grokdeclarator ( declarator , & declspecs , NORMAL , 0 , NULL ) ; if ( property == error_mark_node || property == NULL_TREE ) return ; objc_add_property_variable ( copy_node ( property ) ) ; if ( token -> type == CPP_COMMA ) { cp_lexer_consume_token ( parser -> lexer ) ; continue ; } else if ( token -> type == CPP_EOF ) return ; } cp_lexer_consume_token ( parser -> lexer ) ; }
APPLE LOCAL end radar 5277239
APPLE LOCAL begin C* property (Radar 4436866, 4591909)
This routine parses the propery declarations.
APPLE LOCAL end radar 5277239 APPLE LOCAL begin C * property ( Radar 4436866 4591909 ) This routine parses the propery declarations .
/* Keep going until we hit the `;' at the end of the declaration. */ /* Revover from any kind of error in property declaration. */ /* Add to property list. */ /* Eat ','.  */ /* Eat ';'.  */