]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(config): mark unportable += as an error
authorDamien Lejay <damien@lejay.be>
Sun, 14 Sep 2025 14:54:33 +0000 (10:54 -0400)
committerChristian Brabandt <cb@256bit.org>
Sun, 14 Sep 2025 14:54:33 +0000 (10:54 -0400)
closes: #18292

Signed-off-by: Damien Lejay <damien@lejay.be>
Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/syntax/config.vim

index 3636ed41307689511b9c1ea75eb44776b77ba7d8..d13e89b394872d29d7cadf09418f04ca9c767043 100644 (file)
@@ -1,10 +1,11 @@
 " Vim syntax file
-" Language:            configure.in script: M4 with sh
+" Language:            Autoconf M4
 " Former Maintainer:   Christian Hammesr <ch@lathspell.westend.com>
 " Last Change: 2018 Feb 03
 "                              (patch from Yngve Inntjore Levinsen to detect AC_MSG)
 "                              (patch from Khym Chanur to add @Spell)
 "                              (patch from James McCoy to fix paren matching)
+"                              (2025 Sep 14 patch from Damien Lejay to detect unportable +=)
 
 " Well, I actually even do not know much about m4. This explains why there
 " is probably very much missing here, yet !
@@ -34,6 +35,9 @@ syn region  configstring    start=+\z(["'`]\)+ skip=+\\\z1+ end=+\z1+ contains=@
 syn region  configmsg matchgroup=configfunction start="AC_MSG_[A-Z]*\ze(\[" matchgroup=configdelimiter end="\])" contains=configdelimiter,@Spell
 syn region  configmsg matchgroup=configfunction start="AC_MSG_[A-Z]*\ze([^[]" matchgroup=configdelimiter end=")" contains=configdelimiter,@Spell
 
+" Help write portable shell code
+syn match acPlusEq '\v\+\=' containedin=ALLBUT,configcomment
+
 " Define the default highlighting.
 " Only when an item doesn't have highlighting yet
 
@@ -47,6 +51,7 @@ hi def link configkeyword   Keyword
 hi def link configspecial   Special
 hi def link configstring    String
 hi def link configmsg       String
+hi def link acPlusEq        Error
 
 
 let b:current_syntax = "config"