Package: vala-mode-el / 0.1-2

debian-changes Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 vala-mode-el (0.1-2) unstable; urgency=medium
 .
   * Patch away `(lambda ... ,foo ...) ickiness (closes: #702714)
   * Source option single-debian-patch for in-tree rather than quilt patch
   * Bump debian standards version (no changes required)
   * Update upstream location
   * Fix grammar in comment in source code
   * Add support to use C# semantics when ECB and CEDIT are both installed
Author: Barak A. Pearlmutter <bap@debian.org>
Bug-Debian: https://bugs.debian.org/702714

---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: <YYYY-MM-DD>

--- vala-mode-el-0.1.orig/vala-mode.el
+++ vala-mode-el-0.1/vala-mode.el
@@ -1,4 +1,4 @@
-;;; vala-mode.el --- Vala mode derived mode
+;;; vala-mode.el --- Vala mode derived mode -*- lexical-binding: t -*-
 
 ;; Author:     2005 Dylan R. E. Moonfire
 ;;	       2008 Étienne BERSAC
@@ -46,6 +46,8 @@
 ;;	0.1	: Initial version based on csharp-mode
 ;;
 
+(require 'cl)
+
 ;; This is a copy of the function in cc-mode which is used to handle
 ;; the eval-when-compile which is needed during other times.
 (defun c-filter-ops (ops opgroup-filter op-filter &optional xlate)
@@ -55,13 +57,15 @@
   (cond ((eq opgroup-filter t)
 	 (setq opgroup-filter (lambda (opgroup) t)))
 	((not (functionp opgroup-filter))
-	 (setq opgroup-filter `(lambda (opgroup)
-				 (memq opgroup ',opgroup-filter)))))
+	 (let ((opgroup-filter-orig opgroup-filter))
+	   (setq opgroup-filter (lambda (opgroup)
+				  (memq opgroup opgroup-filter-orig))))))
   (cond ((eq op-filter t)
 	 (setq op-filter (lambda (op) t)))
 	((stringp op-filter)
-	 (setq op-filter `(lambda (op)
-			    (string-match ,op-filter op)))))
+	 (let ((op-filter-orig op-filter))
+	   (setq op-filter (lambda (op)
+			     (string-match op-filter-orig op))))))
   (unless xlate
     (setq xlate 'identity))
   (c-with-syntax-table (c-lang-const c-mode-syntax-table)
@@ -149,22 +153,20 @@
 	 ;; Fontify leading identifiers in fully
 	 ;; qualified names like "Foo.Bar".
 	 ,@(when (c-lang-const c-opt-identifier-concat-key)
-	     `((,(byte-compile
-		  `(lambda (limit)
-		     (while (re-search-forward
-			     ,(concat "\\(\\<" ; 1
-				      "\\(" (c-lang-const c-symbol-key)
-				      "\\)" ; 2
-				      "[ \t\n\r\f\v]*"
-				      (c-lang-const
-				       c-opt-identifier-concat-key)
-				      "[ \t\n\r\f\v]*"
-				      "\\)"
-				      "\\("
-				      (c-lang-const
-				       c-opt-after-id-concat-key)
-				      "\\)")
-			     limit t)
+	     (let ((regexp (concat "\\(\\<" ; 1
+				   "\\(" (c-lang-const c-symbol-key)
+				   "\\)" ; 2
+				   "[ \t\n\r\f\v]*"
+				   (c-lang-const
+				    c-opt-identifier-concat-key)
+				   "[ \t\n\r\f\v]*"
+				   "\\)"
+				   "\\("
+				   (c-lang-const
+				    c-opt-after-id-concat-key)
+				   "\\)")))
+	       `((,(lambda (limit)
+		     (while (re-search-forward regexp limit t)
 		       (unless (progn
 				 (goto-char (match-beginning 0))
 				 (c-skip-comments-and-strings limit))