branch: elpa/d-mode
commit 459732ed132a481ebc04c38d02174c6dff991c95
Author: Vladimir Panteleev <[email protected]>
Commit: Vladimir Panteleev <[email protected]>
Fix parsing associative arrays in function types
---
d-mode.el | 4 ++--
tests/fonts_types.d | 2 ++
tests/fonts_types.d.html | 2 ++
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/d-mode.el b/d-mode.el
index 5ba21c9..c8419a8 100644
--- a/d-mode.el
+++ b/d-mode.el
@@ -7,7 +7,7 @@
;; Maintainer: Russel Winder <[email protected]>
;; Vladimir Panteleev <[email protected]>
;; Created: March 2007
-;; Version: 201909092140
+;; Version: 201909092149
;; Keywords: D programming language emacs cc-mode
;; Package-Requires: ((emacs "25.1"))
@@ -983,7 +983,7 @@ Key bindings:
(not (looking-at (c-lang-const d-type-modifier-key)))
(save-excursion
(c-forward-token-2) ; maybe variable/function name
- (not (looking-at c-identifier-start)))) ; ( or ; or =
+ (looking-at "[(;=]")))
(setq res t))
;; D: const/immutable/...(...)
diff --git a/tests/fonts_types.d b/tests/fonts_types.d
index 2762e77..64432c5 100644
--- a/tests/fonts_types.d
+++ b/tests/fonts_types.d
@@ -11,3 +11,5 @@ Parameter!("foo()").Foo var;
void foo(in Type var);
void foo(out Type var);
+
+static string[string] applyEnv(in string[string] target, in string[string]
source);
diff --git a/tests/fonts_types.d.html b/tests/fonts_types.d.html
index 37d10e9..5856086 100644
--- a/tests/fonts_types.d.html
+++ b/tests/fonts_types.d.html
@@ -11,3 +11,5 @@
<span class="type">void</span> <span class="function-name">foo</span>(<span
class="keyword">in</span> <span class="type">Type</span> <span
class="variable-name">var</span>);
<span class="type">void</span> <span class="function-name">foo</span>(<span
class="keyword">out</span> <span class="type">Type</span> <span
class="variable-name">var</span>);
+
+<span class="keyword">static</span> <span class="type">string</span>[<span
class="type">string</span>] <span class="function-name">applyEnv</span>(<span
class="keyword">in</span> <span class="type">string</span>[<span
class="type">string</span>] <span class="variable-name">target</span>, <span
class="keyword">in</span> <span class="type">string</span>[<span
class="type">string</span>] <span class="variable-name">source</span>);