emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] scratch/merge-cedet-tests 19646a7 141/316: semantic/bovine


From: Edward John Steere
Subject: [Emacs-diffs] scratch/merge-cedet-tests 19646a7 141/316: semantic/bovine/c: Add support for typedef references
Date: Fri, 27 Jan 2017 20:03:35 +0000 (UTC)

branch: scratch/merge-cedet-tests
commit 19646a74e054a238793a06efd9644935a009be5c
Author: David Engster <address@hidden>
Commit: Edward John Steere <address@hidden>

    semantic/bovine/c: Add support for typedef references
    
    * semantic/bovine/c.by (typedefname): Also parse optional
      reference qualifier.
    
    * semantic/bovine/c.el (semantic-expand-c-tag-namelist): Add :reference
      attribute for typedefs.
    
    * tests/cedet/semantic/ert/test-c-parser.el: Add tests for typedefs.
---
 .../cedet/cedet/semantic/ert/test-c-parser.el      |   26 ++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/test/manual/cedet/cedet/semantic/ert/test-c-parser.el 
b/test/manual/cedet/cedet/semantic/ert/test-c-parser.el
index 050da7f..f9e7844 100644
--- a/test/manual/cedet/cedet/semantic/ert/test-c-parser.el
+++ b/test/manual/cedet/cedet/semantic/ert/test-c-parser.el
@@ -196,4 +196,30 @@
        (setq actual (car actual))
        (test-c-parser-compare-tag actual expect)))
 
+;;;; Typedef
+
+(ert-deftest test-c-parser-typedef-01 ()
+  (let ((actual
+        (test-c-parser-bovinate "typedef int foo;"))
+       (expect '("foo" type (:typedef ("int") :type "typedef"))))
+    (should (test-c-check-tags-length actual 1))
+    (setq actual (car actual))
+    (test-c-parser-compare-tag actual expect)))
+
+(ert-deftest test-c-parser-typedef-02-pointer ()
+  (let ((actual
+        (test-c-parser-bovinate "typedef int* foo;"))
+       (expect '("foo" type (:typedef ("int") :pointer 1 :type "typedef"))))
+    (should (test-c-check-tags-length actual 1))
+    (setq actual (car actual))
+    (test-c-parser-compare-tag actual expect)))
+
+(ert-deftest test-c-parser-typedef-03-reference ()
+  (let ((actual
+        (test-c-parser-bovinate "typedef int& foo;"))
+       (expect '("foo" type (:typedef ("int") :reference 1 :type "typedef"))))
+    (should (test-c-check-tags-length actual 1))
+    (setq actual (car actual))
+    (test-c-parser-compare-tag actual expect)))
+
 (provide 'cedet/semantic/ert/test-c-parser)



reply via email to

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