emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r116292: Grammar bug fixes from CEDET upstream.


From: David Engster
Subject: [Emacs-diffs] trunk r116292: Grammar bug fixes from CEDET upstream.
Date: Thu, 06 Feb 2014 20:58:10 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 116292
revision-id: address@hidden
parent: address@hidden
committer: David Engster <address@hidden>
branch nick: trunk
timestamp: Thu 2014-02-06 21:57:24 +0100
message:
  Grammar bug fixes from CEDET upstream.
  
  * grammars/c.by (function-pointer): Correctly deal with anonymous
  function pointers.
  (opt-brackets-after-symbol): New.
  (multi-stage-dereference): Use it.  Add rules for explicit
  matching the last dereference.
modified:
  admin/ChangeLog                changelog-20091113204419-o5vbwnq5f7feedwu-2226
  admin/grammars/c.by            c.by-20110730020351-lkqh5evroiy9byav-4
=== modified file 'admin/ChangeLog'
--- a/admin/ChangeLog   2014-01-22 01:43:37 +0000
+++ b/admin/ChangeLog   2014-02-06 20:57:24 +0000
@@ -1,3 +1,11 @@
+2014-02-06  David Engster  <address@hidden>
+
+       * grammars/c.by (function-pointer): Correctly deal with anonymous
+       function pointers.
+       (opt-brackets-after-symbol): New.
+       (multi-stage-dereference): Use it.  Add rules for explicit
+       matching the last dereference.
+
 2014-01-16  Eric S. Raymond  <address@hidden>
 
        * notes/commits: Add a 'graph on VCS-independent ways of

=== modified file 'admin/grammars/c.by'
--- a/admin/grammars/c.by       2014-01-01 07:43:34 +0000
+++ b/admin/grammars/c.by       2014-02-06 20:57:24 +0000
@@ -1113,8 +1113,8 @@
   ;
 
 function-pointer
-  : LPAREN STAR symbol RPAREN
-    ( (concat "*" $3) )
+  : LPAREN STAR opt-symbol RPAREN
+    ( (concat "*" ,(car $3)) )
   | LPAREN symbol RPAREN
     ( $2 )
   ;
@@ -1154,14 +1154,25 @@
   : open-paren typeformbase close-paren
   ;
 
+opt-brackets-after-symbol
+  : brackets-after-symbol
+  | ;; EMPTY
+  ;
+
 brackets-after-symbol
   : PAREN_BLCK
   | BRACK_BLCK
   ;
 
 multi-stage-dereference
-  : namespace-symbol brackets-after-symbol PERIOD multi-stage-dereference ;; 
method call
-  | namespace-symbol brackets-after-symbol MINUS GREATER 
multi-stage-dereference ;;method call
+  : namespace-symbol opt-brackets-after-symbol
+    PERIOD multi-stage-dereference ;; method call
+  | namespace-symbol opt-brackets-after-symbol
+    MINUS GREATER multi-stage-dereference ;;method call
+  | namespace-symbol opt-brackets-after-symbol
+    PERIOD namespace-symbol opt-brackets-after-symbol
+  | namespace-symbol opt-brackets-after-symbol
+    MINUS GREATER namespace-symbol opt-brackets-after-symbol
   | namespace-symbol brackets-after-symbol
   ;
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]