Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [RFA] Token cleanup in c-exp.y
@ 2009-08-24 23:06 Keith Seitz
  2009-08-24 23:08 ` Tom Tromey
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Keith Seitz @ 2009-08-24 23:06 UTC (permalink / raw)
  To: gdb-patches

[-- Attachment #1: Type: text/plain, Size: 312 bytes --]

Hi,

The attached patch "fixes" two tokens in c-exp.y, "->*" and ".*", which 
were not previously recognized as tokens.

Keith

ChangeLog
2009-08-24  Keith Seitz  <keiths@redhat.com>

	* c-exp.y (tokentab3): Add new token, ARROW_STAR. Changed all users.
	(tokentab2): Add new token, DOT_STAR. Changed all users.

[-- Attachment #2: token-fix.patch --]
[-- Type: text/plain, Size: 1535 bytes --]

Index: c-exp.y
===================================================================
RCS file: /cvs/src/src/gdb/c-exp.y,v
retrieving revision 1.59
diff -u -p -r1.59 c-exp.y
--- c-exp.y	7 Jul 2009 21:33:48 -0000	1.59
+++ c-exp.y	24 Aug 2009 20:41:09 -0000
@@ -232,7 +232,7 @@ static int parse_number (char *, int, in
 %left '+' '-'
 %left '*' '/' '%'
 %right UNARY INCREMENT DECREMENT
-%right ARROW '.' '[' '('
+%right ARROW ARROW_STAR '.' DOT_STAR '[' '('
 %token <ssym> BLOCKNAME 
 %token <bval> FILENAME
 %type <bval> block
@@ -333,7 +333,7 @@ exp	:	exp ARROW qualified_name
 			  write_exp_elt_opcode (STRUCTOP_MPTR); }
 	;
 
-exp	:	exp ARROW '*' exp
+exp	:	exp ARROW_STAR exp
 			{ write_exp_elt_opcode (STRUCTOP_MPTR); }
 	;
 
@@ -368,7 +368,7 @@ exp	:	exp '.' qualified_name
 			  write_exp_elt_opcode (STRUCTOP_MEMBER); }
 	;
 
-exp	:	exp '.' '*' exp
+exp	:	exp DOT_STAR exp
 			{ write_exp_elt_opcode (STRUCTOP_MEMBER); }
 	;
 
@@ -1664,7 +1664,8 @@ struct token
 static const struct token tokentab3[] =
   {
     {">>=", ASSIGN_MODIFY, BINOP_RSH, 0},
-    {"<<=", ASSIGN_MODIFY, BINOP_LSH, 0}
+    {"<<=", ASSIGN_MODIFY, BINOP_LSH, 0},
+    {"->*", ARROW_STAR, BINOP_END, 1}
   };
 
 static const struct token tokentab2[] =
@@ -1688,7 +1689,8 @@ static const struct token tokentab2[] =
     {"==", EQUAL, BINOP_END, 0},
     {"!=", NOTEQUAL, BINOP_END, 0},
     {"<=", LEQ, BINOP_END, 0},
-    {">=", GEQ, BINOP_END, 0}
+    {">=", GEQ, BINOP_END, 0},
+    {".*", DOT_STAR, BINOP_END, 0}
   };
 
 /* Identifier-like tokens.  */

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2009-08-25 18:41 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-08-24 23:06 [RFA] Token cleanup in c-exp.y Keith Seitz
2009-08-24 23:08 ` Tom Tromey
2009-08-25  5:03   ` Keith Seitz
2009-08-25 13:45     ` Pierre Muller
2009-08-25 14:10       ` Jiang Jilin
2009-08-25 15:11         ` Andreas Schwab
2009-08-25 15:28 ` Matt Rice
2009-08-25 15:46   ` Tom Tromey
2009-08-25 15:47 ` Tom Tromey
2009-08-25 18:07   ` Keith Seitz
2009-08-25 18:41     ` Tom Tromey
2009-08-25 18:42       ` Keith Seitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox