Mercurial > vim
view runtime/syntax/dictconf.vim @ 33791:370543108ba1 v9.0.2114
patch 9.0.2114: overflow detection not accurate when adding digits
Commit: https://github.com/vim/vim/commit/22cbc8a4e17ce61aa460c451a26e1bff2c3d2af9
Author: Christian Brabandt <cb@256bit.org>
Date: Sun Nov 19 10:47:21 2023 +0100
patch 9.0.2114: overflow detection not accurate when adding digits
Problem: overflow detection not accurate when adding digits
Solution: Use a helper function
Use a helper function to better detect overflows before adding integer
digits to a long or an integer variable respectively. Signal the
overflow to the caller function.
closes: #13539
Signed-off-by: Christian Brabandt <cb@256bit.org>
Signed-off-by: Michael Henry <vim@drmikehenry.com>
Signed-off-by: Ernie Rael <errael@raelity.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 19 Nov 2023 11:00:07 +0100 |
parents | 1218c5353e2b |
children |
line wrap: on
line source
" Vim syntax file " Language: dict(1) 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 dictconfTodo contained TODO FIXME XXX NOTE syn region dictconfComment display oneline start='#' end='$' \ contains=dictconfTodo,@Spell syn match dictconfBegin display '^' \ nextgroup=dictconfKeyword,dictconfComment \ skipwhite syn keyword dictconfKeyword contained server \ nextgroup=dictconfServer skipwhite syn keyword dictconfKeyword contained pager \ nextgroup=dictconfPager syn match dictconfServer contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictconfServerOptG skipwhite syn region dictconfServer contained display oneline \ start=+"+ skip=+""+ end=+"+ \ nextgroup=dictconfServerOptG skipwhite syn region dictconfServerOptG contained transparent \ matchgroup=dictconfServerOptsD start='{' \ matchgroup=dictconfServerOptsD end='}' \ contains=dictconfServerOpts,dictconfComment syn keyword dictconfServerOpts contained port \ nextgroup=dictconfNumber skipwhite syn keyword dictconfServerOpts contained user \ nextgroup=dictconfUsername skipwhite syn match dictconfUsername contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' \ nextgroup=dictconfSecret skipwhite syn region dictconfUsername contained display oneline \ start=+"+ skip=+""+ end=+"+ \ nextgroup=dictconfSecret skipwhite syn match dictconfSecret contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' syn region dictconfSecret contained display oneline \ start=+"+ skip=+""+ end=+"+ syn match dictconfNumber contained '\<\d\+\>' syn match dictconfPager contained display \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*' syn region dictconfPager contained display oneline \ start=+"+ skip=+""+ end=+"+ hi def link dictconfTodo Todo hi def link dictconfComment Comment hi def link dictconfKeyword Keyword hi def link dictconfServer String hi def link dictconfServerOptsD Delimiter hi def link dictconfServerOpts Identifier hi def link dictconfUsername String hi def link dictconfSecret Special hi def link dictconfNumber Number hi def link dictconfPager String let b:current_syntax = "dictconf" let &cpo = s:cpo_save unlet s:cpo_save