Mercurial > vim
view runtime/syntax/bc.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 | 46763b01cd9a |
children |
line wrap: on
line source
" Vim syntax file " Language: bc - An arbitrary precision calculator language " Maintainer: Vladimir Scholtz <vlado@gjh.sk> " Last change: 2012 Jun 01 " (Dominique Pelle added @Spell) " Available on: www.gjh.sk/~vlado/bc.vim " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore " Keywords syn keyword bcKeyword if else while for break continue return limits halt quit syn keyword bcKeyword define syn keyword bcKeyword length read sqrt print " Variable syn keyword bcType auto " Constant syn keyword bcConstant scale ibase obase last syn keyword bcConstant BC_BASE_MAX BC_DIM_MAX BC_SCALE_MAX BC_STRING_MAX syn keyword bcConstant BC_ENV_ARGS BC_LINE_LENGTH " Any other stuff syn match bcIdentifier "[a-z_][a-z0-9_]*" " String syn match bcString "\"[^"]*\"" contains=@Spell " Number syn match bcNumber "[0-9]\+" " Comment syn match bcComment "\#.*" contains=@Spell syn region bcComment start="/\*" end="\*/" contains=@Spell " Parent () syn cluster bcAll contains=bcList,bcIdentifier,bcNumber,bcKeyword,bcType,bcConstant,bcString,bcParentError syn region bcList matchgroup=Delimiter start="(" skip="|.\{-}|" matchgroup=Delimiter end=")" contains=@bcAll syn region bcList matchgroup=Delimiter start="\[" skip="|.\{-}|" matchgroup=Delimiter end="\]" contains=@bcAll syn match bcParenError "]" syn match bcParenError ")" syn case match " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link bcKeyword Statement hi def link bcType Type hi def link bcConstant Constant hi def link bcNumber Number hi def link bcComment Comment hi def link bcString String hi def link bcSpecialChar SpecialChar hi def link bcParenError Error let b:current_syntax = "bc" " vim: ts=8