Mercurial > vim
view runtime/syntax/dictdconf.vim @ 33988:7c30841c60a0 v9.0.2180
patch 9.0.2180: POSIX function name in exarg causes issues
Commit: https://github.com/vim/vim/commit/6fdb6280821a822768df5689a5d727e37d38306c
Author: Zoltan Arpadffy <zoltan.arpadffy@gmail.com>
Date: Tue Dec 19 20:53:07 2023 +0100
patch 9.0.2180: POSIX function name in exarg causes issues
Problem: POSIX function name in exarg struct causes issues
on OpenVMS
Solution: Rename getline member in exarg struct to ea_getline,
remove isinf() workaround for VMS
There are compilers that do not treat well POSIX functions - like
getline - usage in the structs.
Older VMS compilers could digest this... but the newer OpenVMS compilers
( like VSI C x86-64 X7.4-843 (GEM 50XB9) ) cannot deal with these
structs. This could be limited to getline() that is defined via
getdelim() and might not affect all POSIX functions in general - but
avoiding POSIX function names usage in the structs is a "safe side"
practice without compromising the functionality or the code readability.
The previous OpenVMS X86 port used a workaround limiting the compiler
capabilities using __CRTL_VER_OVERRIDE=80400000
In order to make the OpenVMS port future proof, this pull request
proposes a possible solution.
closes: #13704
Signed-off-by: Zoltan Arpadffy <zoltan.arpadffy@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 19 Dec 2023 21:00:04 +0100 |
parents | 1218c5353e2b |
children |
line wrap: on
line source
" Vim syntax file " Language: dictd(8) configuration file " Previous Maintainer: Nikolai Weibull <now@bitwi.se> " Latest Revision: 2006-04-19 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword dictdconfTodo contained TODO FIXME XXX NOTE syn region dictdconfComment display oneline start='#' end='$' \ contains=dictdconfTodo,dictdconfSpecialC, \ @Spell syn keyword dictdconfSpecialC LASTLINE syn match dictdconfBegin display '^' \ nextgroup=dictdconfKeyword,dictdconfComment \ skipwhite syn keyword dictdconfKeyword contained access \ nextgroup=dictdconfAccessG skipwhite syn region dictdconfAccessG contained transparent \ matchgroup=dictdconfDelimiter start='{' \ matchgroup=dictdconfDelimiter end='}' \ contains=dictdconfAccess,dictdconfComment syn keyword dictdconfAccess contained allow deny authonly user \ nextgroup=dictdconfString skipwhite syn keyword dictdconfKeyword contained database \ nextgroup=dictdconfDatabase skipwhite syn match dictdconfDatabase contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictdconfSpecG skipwhite syn region dictdconfDatabase contained display oneline \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+ \ nextgroup=dictdconfSpecG skipwhite syn region dictdconfSpecG contained transparent \ matchgroup=dictdconfDelimiter start='{' \ matchgroup=dictdconfDelimiter end='}' \ contains=dictdconfSpec,dictdconfAccess, \ dictdconfComment syn keyword dictdconfSpec contained data index index_suffix index_word \ filter prefilter postfilter name info \ disable_strat \ nextgroup=dictdconfString skipwhite syn keyword dictdconfSpec contained invisible syn keyword dictdconfKeyword contained database_virtual \ nextgroup=dictdconfVDatabase skipwhite syn match dictdconfVDatabase contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictdconfVSpecG skipwhite syn region dictdconfVDatabase contained display oneline \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+ \ nextgroup=dictdconfVSpecG skipwhite syn region dictdconfVSpecG contained transparent \ matchgroup=dictdconfDelimiter start='{' \ matchgroup=dictdconfDelimiter end='}' \ contains=dictdconfVSpec,dictdconfAccess, \ dictdconfComment syn keyword dictdconfVSpec contained name info database_list disable_strat \ nextgroup=dictdconfString skipwhite syn keyword dictdconfVSpec contained invisible syn keyword dictdconfKeyword contained database_plugin \ nextgroup=dictdconfPDatabase skipwhite syn match dictdconfPDatabase contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictdconfPSpecG skipwhite syn region dictdconfPDatabase contained display oneline \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+ \ nextgroup=dictdconfPSpecG skipwhite syn region dictdconfPSpecG contained transparent \ matchgroup=dictdconfDelimiter start='{' \ matchgroup=dictdconfDelimiter end='}' \ contains=dictdconfPSpec,dictdconfAccess, \ dictdconfComment syn keyword dictdconfPSpec contained name info plugin data disable_strat \ nextgroup=dictdconfString skipwhite syn keyword dictdconfPSpec contained invisible syn keyword dictdconfKeyword contained database_exit syn keyword dictdconfKeyword contained site \ nextgroup=dictdconfString skipwhite syn keyword dictdconfKeyword contained user \ nextgroup=dictdconfUsername skipwhite syn match dictdconfUsername contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictdconfSecret skipwhite syn region dictdconfUsername contained display oneline \ start=+"+ skip=+""+ end=+"+ \ nextgroup=dictdconfSecret skipwhite syn match dictdconfSecret contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' syn region dictdconfSecret contained display oneline \ start=+"+ skip=+""+ end=+"+ syn match dictdconfString contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' syn region dictdconfString contained display oneline \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+ hi def link dictdconfTodo Todo hi def link dictdconfComment Comment hi def link dictdconfSpecialC Special hi def link dictdconfKeyword Keyword hi def link dictdconfIdentifier Identifier hi def link dictdconfAccess dictdconfIdentifier hi def link dictdconfDatabase dictdconfString hi def link dictdconfSpec dictdconfIdentifier hi def link dictdconfVDatabase dictdconfDatabase hi def link dictdconfVSpec dictdconfSpec hi def link dictdconfPDatabase dictdconfDatabase hi def link dictdconfPSpec dictdconfSpec hi def link dictdconfUsername dictdconfString hi def link dictdconfSecret Special hi def link dictdconfString String hi def link dictdconfDelimiter Delimiter let b:current_syntax = "dictdconf" let &cpo = s:cpo_save unlet s:cpo_save