Skip to content

Commit 70ac79c

Browse files
authored
fix(java) prevent false variable init on else (#3455)
1 parent d8cf962 commit 70ac79c

File tree

4 files changed

+14
-1
lines changed

4 files changed

+14
-1
lines changed

CHANGES.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Themes:
55

66
Grammars:
77

8+
- fix(java) prevent false positive variable init on `else` [Josh Goebel][]
89
- enh(php) named arguments [Wojciech Kania][]
910
- fix(php) PHP constants [Wojciech Kania][]
1011
- fix(angelscript) incomplete int8, int16, int32, int64 highlighting [Melissa Geels][]

src/languages/java.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ export default function(hljs) {
187187
},
188188
{
189189
begin: [
190-
JAVA_IDENT_RE,
190+
regex.concat(/(?!else)/, JAVA_IDENT_RE),
191191
/\s+/,
192192
JAVA_IDENT_RE,
193193
/\s+/,

test/markup/java/bugs.expect.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
2+
<span class="hljs-comment">// `else x =` should not be detected as a variable creation</span>
3+
<span class="hljs-keyword">if</span> ( O == l )
4+
l = O1;
5+
<span class="hljs-keyword">else</span>
6+
a = <span class="hljs-number">01</span>;

test/markup/java/bugs.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
2+
// `else x =` should not be detected as a variable creation
3+
if ( O == l )
4+
l = O1;
5+
else
6+
a = 01;

0 commit comments

Comments
 (0)