Mercurial > vim
view runtime/indent.vim @ 33303:924e9cb09df7 v9.0.1917
patch 9.0.1917: undefined behaviour with python function pointer
Commit: https://github.com/vim/vim/commit/d606fccf6fd716bda43a8e1d11d898f438d28b82
Author: Yee Cheng Chin <ychin.git@gmail.com>
Date: Wed Sep 20 19:59:47 2023 +0200
patch 9.0.1917: undefined behaviour with python function pointer
Problem: undefined behaviour with python function pointer
Solution: correctly cast function pointers from void
Fix more undefined behaviors in if_python
Fix remaining UBSAN errors from Clang 17 in if_python in casting
function pointers.
Also fix a mistake where `PyMem_Free()` should be returning void, by the
dynamic build is mistakenly casting it as a function that returns an
int.
closes: #13128
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 | Wed, 20 Sep 2023 20:15:04 +0200 |
parents | 4027cefc2aab |
children |
line wrap: on
line source
" Vim support file to switch on loading indent files for file types " " Maintainer: The Vim Project <https://github.com/vim/vim> " Last Change: 2023 Aug 10 " Former Maintainer: Bram Moolenaar <Bram@vim.org> if exists("did_indent_on") finish endif let did_indent_on = 1 augroup filetypeindent au FileType * call s:LoadIndent() augroup END def s:LoadIndent() if exists("b:undo_indent") legacy exe b:undo_indent unlet! b:undo_indent b:did_indent endif var s = expand("<amatch>") if s != "" if exists("b:did_indent") unlet b:did_indent endif # When there is a dot it is used to separate filetype names. Thus for # "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim". for name in split(s, '\.') exe 'runtime! indent/' .. name .. '.vim' endfor endif enddef