This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [C PATCH] Make attributes accept enum values (PR c/50459)


On 04/17/2014 12:00 PM, Marek Polacek wrote:
  		      == CPP_CLOSE_PAREN)))
  	    {
  	      tree arg1 = c_parser_peek_token (parser)->value;
+	      if (!attr_takes_id_p)
+	        {
+		  /* This is for enum values, so that they can be used as
+		     an attribute parameter; lookup_name will find their
+		     CONST_DECLs.  */
+		  tree ln = lookup_name (arg1);
+		  if (ln)
+		    arg1 = ln;
+		}
  	      c_parser_consume_token (parser);

Instead, we should add !attr_takes_id_p to the if condition immediately above so that we parse the arguments as an expression-list.

Jason


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]