Mercurial > vim
annotate runtime/compiler/perl.vim @ 24760:ca0f983f08cf v8.2.2918
patch 8.2.2918: builtin function can be shadowed by global variable
Commit: https://github.com/vim/vim/commit/3d9c4eefe656ee8bf58c0496a48bd56bac180056
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon May 31 22:15:26 2021 +0200
patch 8.2.2918: builtin function can be shadowed by global variable
Problem: Builtin function can be shadowed by global variable.
Solution: Check for builtin function before variable. (Yasuhiro Matsumoto,
closes #8302)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 31 May 2021 22:30:02 +0200 |
parents | 2704c4e3e20a |
children | d1fe80fb35e6 |
rev | line source |
---|---|
7 | 1 " Vim Compiler File |
2 " Compiler: Perl syntax checks (perl -Wc) | |
2239
732cb7b31956
Crypt the text in the undo file if the file itself is crypted.
Bram Moolenaar <bram@vim.org>
parents:
1622
diff
changeset
|
3 " Maintainer: Christian J. Robinson <heptite@gmail.com> |
17571 | 4 " Last Change: 2019 Jul 22 |
7 | 5 |
6 if exists("current_compiler") | |
7 finish | |
8 endif | |
9 let current_compiler = "perl" | |
10 | |
11 if exists(":CompilerSet") != 2 " older Vim always used :setlocal | |
12 command -nargs=* CompilerSet setlocal <args> | |
13 endif | |
14 | |
15 let s:savecpo = &cpo | |
16 set cpo&vim | |
17 | |
1622 | 18 if exists('g:perl_compiler_force_warnings') && g:perl_compiler_force_warnings == 0 |
19 let s:warnopt = 'w' | |
7 | 20 else |
1622 | 21 let s:warnopt = 'W' |
7 | 22 endif |
23 | |
1622 | 24 if getline(1) =~# '-[^ ]*T' |
25 let s:taintopt = 'T' | |
26 else | |
27 let s:taintopt = '' | |
28 endif | |
29 | |
17571 | 30 exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %:S' |
1622 | 31 |
7 | 32 CompilerSet errorformat= |
33 \%-G%.%#had\ compilation\ errors., | |
34 \%-G%.%#syntax\ OK, | |
35 \%m\ at\ %f\ line\ %l., | |
36 \%+A%.%#\ at\ %f\ line\ %l\\,%.%#, | |
37 \%+C%.%# | |
38 | |
39 " Explanation: | |
40 " %-G%.%#had\ compilation\ errors., - Ignore the obvious. | |
41 " %-G%.%#syntax\ OK, - Don't include the 'a-okay' message. | |
42 " %m\ at\ %f\ line\ %l., - Most errors... | |
43 " %+A%.%#\ at\ %f\ line\ %l\\,%.%#, - As above, including ', near ...' | |
44 " %+C%.%# - ... Which can be multi-line. | |
45 | |
46 let &cpo = s:savecpo | |
47 unlet s:savecpo |