Mercurial > vim
view runtime/syntax/edif.vim @ 33295:a43861545866 v9.0.1913
patch 9.0.1913: if_python: undefined behaviour for function pointers
Commit: https://github.com/vim/vim/commit/2ce070c27acd12ccc614afa4cecf4970a645a4af
Author: Yee Cheng Chin <ychin.git@gmail.com>
Date: Tue Sep 19 20:30:22 2023 +0200
patch 9.0.1913: if_python: undefined behaviour for function pointers
Problem: if_python: undefined behaviour for function pointers
Solution: Fix if_python undefined behavior for function pointer casts
Identified by clang 17 UBSAN (see #12745). Make sure to cast function
pointers with the same signature only.
closes: #13122
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 19 Sep 2023 20:45:05 +0200 |
parents | 46763b01cd9a |
children |
line wrap: on
line source
" Vim syntax file " Language: EDIF (Electronic Design Interchange Format) " Maintainer: Artem Zankovich <z_artem@hotbox.ru> " Last Change: Oct 14, 2002 " " Supported standarts are: " ANSI/EIA Standard 548-1988 (EDIF Version 2 0 0) " IEC 61690-1 (EDIF Version 3 0 0) " IEC 61690-2 (EDIF Version 4 0 0) " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif setlocal iskeyword=48-57,-,+,A-Z,a-z,_,& syn region edifList matchgroup=Delimiter start="(" end=")" contains=edifList,edifKeyword,edifString,edifNumber " Strings syn match edifInStringError /%/ contained syn match edifInString /%\s*\d\+\s*%/ contained syn region edifString start=/"/ end=/"/ contains=edifInString,edifInStringError contained " Numbers syn match edifNumber "\<[-+]\=[0-9]\+\>" " Keywords syn match edifKeyword "(\@<=\s*[a-zA-Z&][a-zA-Z_0-9]*\>" contained syn match edifError ")" " synchronization syntax sync fromstart " Define the default highlighting. hi def link edifInString SpecialChar hi def link edifKeyword Keyword hi def link edifNumber Number hi def link edifInStringError edifError hi def link edifError Error hi def link edifString String let b:current_syntax = "edif"