Mercurial > vim
annotate src/proto.h @ 9529:581d5131629f v7.4.2045
commit https://github.com/vim/vim/commit/5ef2e762844e0eb1f5b213bd58e6bc38bdb69dac
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jul 15 21:29:35 2016 +0200
patch 7.4.2045
Problem: Memory leak when using a function callback.
Solution: Don't save the function name when it's in the partial.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 15 Jul 2016 21:30:07 +0200 |
parents | 9b048dced116 |
children | b2aada04d84e |
rev | line source |
---|---|
7 | 1 /* vi:set ts=8 sts=4 sw=4: |
2 * | |
3 * VIM - Vi IMproved by Bram Moolenaar | |
4 * | |
5 * Do ":help uganda" in Vim to read copying and usage conditions. | |
6 * Do ":help credits" in Vim to see a list of people who contributed. | |
7 */ | |
8 | |
9 /* | |
10 * proto.h: include the (automatically generated) function prototypes | |
11 */ | |
12 | |
13 /* | |
14 * Don't include these while generating prototypes. Prevents problems when | |
15 * files are missing. | |
16 */ | |
17 #if !defined(PROTO) && !defined(NOPROTO) | |
18 | |
19 /* | |
20 * Machine-dependent routines. | |
21 */ | |
22 /* avoid errors in function prototypes */ | |
573 | 23 # if !defined(FEAT_X11) && !defined(FEAT_GUI_GTK) |
7 | 24 # define Display int |
25 # define Widget int | |
26 # endif | |
27 # ifndef FEAT_GUI_GTK | |
28 # define GdkEvent int | |
29 # define GdkEventKey int | |
30 # endif | |
31 # ifndef FEAT_X11 | |
32 # define XImage int | |
33 # endif | |
34 | |
35 # ifdef AMIGA | |
36 # include "os_amiga.pro" | |
37 # endif | |
38 # if defined(UNIX) || defined(__EMX__) || defined(VMS) | |
39 # include "os_unix.pro" | |
40 # endif | |
41 # ifdef WIN3264 | |
42 # include "os_win32.pro" | |
43 # include "os_mswin.pro" | |
4168 | 44 # include "winclip.pro" |
7 | 45 # if (defined(__GNUC__) && !defined(__MINGW32__)) \ |
46 || (defined(__BORLANDC__) && __BORLANDC__ < 0x502) | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
47 extern int _stricoll(char *a, char *b); |
7 | 48 # endif |
49 # endif | |
50 # ifdef VMS | |
51 # include "os_vms.pro" | |
52 # endif | |
53 # ifdef __BEOS__ | |
54 # include "os_beos.pro" | |
55 # endif | |
56 # ifdef __QNX__ | |
57 # include "os_qnx.pro" | |
58 # endif | |
59 | |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
60 # ifdef FEAT_CRYPT |
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
61 # include "blowfish.pro" |
6122 | 62 # include "crypt.pro" |
63 # include "crypt_zip.pro" | |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
64 # endif |
7 | 65 # include "buffer.pro" |
66 # include "charset.pro" | |
67 # ifdef FEAT_CSCOPE | |
68 # include "if_cscope.pro" | |
69 # endif | |
70 # include "diff.pro" | |
71 # include "digraph.pro" | |
72 # include "edit.pro" | |
73 # include "eval.pro" | |
74 # include "ex_cmds.pro" | |
75 # include "ex_cmds2.pro" | |
76 # include "ex_docmd.pro" | |
77 # include "ex_eval.pro" | |
78 # include "ex_getln.pro" | |
79 # include "fileio.pro" | |
80 # include "fold.pro" | |
81 # include "getchar.pro" | |
82 # ifdef FEAT_HANGULIN | |
83 # include "hangulin.pro" | |
84 # endif | |
440 | 85 # include "hardcopy.pro" |
799 | 86 # include "hashtab.pro" |
7712
bce3b5ddb393
commit https://github.com/vim/vim/commit/520e1e41f35b063ede63b41738c82d6636e78c34
Christian Brabandt <cb@256bit.org>
parents:
6122
diff
changeset
|
87 # include "json.pro" |
7 | 88 # include "main.pro" |
89 # include "mark.pro" | |
90 # include "memfile.pro" | |
91 # include "memline.pro" | |
92 # ifdef FEAT_MENU | |
93 # include "menu.pro" | |
94 # endif | |
9403
9b048dced116
commit https://github.com/vim/vim/commit/75464dc434c43efac60e8bfd9bec2a8b736407e9
Christian Brabandt <cb@256bit.org>
parents:
8493
diff
changeset
|
95 # ifdef FEAT_FKMAP |
9b048dced116
commit https://github.com/vim/vim/commit/75464dc434c43efac60e8bfd9bec2a8b736407e9
Christian Brabandt <cb@256bit.org>
parents:
8493
diff
changeset
|
96 # include "farsi.pro" |
9b048dced116
commit https://github.com/vim/vim/commit/75464dc434c43efac60e8bfd9bec2a8b736407e9
Christian Brabandt <cb@256bit.org>
parents:
8493
diff
changeset
|
97 # endif |
9b048dced116
commit https://github.com/vim/vim/commit/75464dc434c43efac60e8bfd9bec2a8b736407e9
Christian Brabandt <cb@256bit.org>
parents:
8493
diff
changeset
|
98 # ifdef FEAT_ARABIC |
9b048dced116
commit https://github.com/vim/vim/commit/75464dc434c43efac60e8bfd9bec2a8b736407e9
Christian Brabandt <cb@256bit.org>
parents:
8493
diff
changeset
|
99 # include "arabic.pro" |
9b048dced116
commit https://github.com/vim/vim/commit/75464dc434c43efac60e8bfd9bec2a8b736407e9
Christian Brabandt <cb@256bit.org>
parents:
8493
diff
changeset
|
100 # endif |
272 | 101 |
7838
cfed0e9f0ca2
commit https://github.com/vim/vim/commit/ba4ef2757cfc126f342b710f1ad9ea39e6b56cec
Christian Brabandt <cb@256bit.org>
parents:
7807
diff
changeset
|
102 /* These prototypes cannot be produced automatically. */ |
272 | 103 int |
104 # ifdef __BORLANDC__ | |
105 _RTLENTRYF | |
106 # endif | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
107 smsg(char_u *, ...); |
2280
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
108 |
272 | 109 int |
110 # ifdef __BORLANDC__ | |
111 _RTLENTRYF | |
112 # endif | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
113 smsg_attr(int, char_u *, ...); |
2280
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
114 |
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
115 int |
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
116 # ifdef __BORLANDC__ |
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
117 _RTLENTRYF |
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
118 # endif |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
119 vim_snprintf_add(char *, size_t, char *, ...); |
2280
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
120 |
272 | 121 int |
122 # ifdef __BORLANDC__ | |
123 _RTLENTRYF | |
124 # endif | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
125 vim_snprintf(char *, size_t, char *, ...); |
2280
941ff1cd317a
Add file save counter to undo information. Add undotree() function.
Bram Moolenaar <bram@vim.org>
parents:
2265
diff
changeset
|
126 |
449 | 127 int vim_vsnprintf(char *str, size_t str_m, char *fmt, va_list ap, typval_T *tvs); |
272 | 128 |
7 | 129 # include "message.pro" |
130 # include "misc1.pro" | |
131 # include "misc2.pro" | |
132 #ifndef HAVE_STRPBRK /* not generated automatically from misc2.c */ | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
133 char_u *vim_strpbrk(char_u *s, char_u *charset); |
7 | 134 #endif |
135 #ifndef HAVE_QSORT | |
136 /* Use our own qsort(), don't define the prototype when not used. */ | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
137 void qsort(void *base, size_t elm_count, size_t elm_size, int (*cmp)(const void *, const void *)); |
7 | 138 #endif |
139 # include "move.pro" | |
140 # if defined(FEAT_MBYTE) || defined(FEAT_XIM) || defined(FEAT_KEYMAP) \ | |
141 || defined(FEAT_POSTSCRIPT) | |
142 # include "mbyte.pro" | |
143 # endif | |
144 # include "normal.pro" | |
145 # include "ops.pro" | |
146 # include "option.pro" | |
799 | 147 # include "popupmnu.pro" |
148 # ifdef FEAT_QUICKFIX | |
149 # include "quickfix.pro" | |
150 # endif | |
7 | 151 # include "regexp.pro" |
152 # include "screen.pro" | |
2265
b7cb69ab616d
Added salt to blowfish encryption.
Bram Moolenaar <bram@vim.org>
parents:
2209
diff
changeset
|
153 # if defined(FEAT_CRYPT) || defined(FEAT_PERSISTENT_UNDO) |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
154 # include "sha256.pro" |
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
155 # endif |
7 | 156 # include "search.pro" |
220 | 157 # include "spell.pro" |
7 | 158 # include "syntax.pro" |
159 # include "tag.pro" | |
160 # include "term.pro" | |
161 # if defined(HAVE_TGETENT) && (defined(AMIGA) || defined(VMS)) | |
162 # include "termlib.pro" | |
163 # endif | |
164 # include "ui.pro" | |
165 # include "undo.pro" | |
166 # include "version.pro" | |
167 # include "window.pro" | |
168 | |
2320
966a5609669e
Added Lua interfae. (Luis Carvalho)
Bram Moolenaar <bram@vim.org>
parents:
2310
diff
changeset
|
169 # ifdef FEAT_LUA |
966a5609669e
Added Lua interfae. (Luis Carvalho)
Bram Moolenaar <bram@vim.org>
parents:
2310
diff
changeset
|
170 # include "if_lua.pro" |
966a5609669e
Added Lua interfae. (Luis Carvalho)
Bram Moolenaar <bram@vim.org>
parents:
2310
diff
changeset
|
171 # endif |
966a5609669e
Added Lua interfae. (Luis Carvalho)
Bram Moolenaar <bram@vim.org>
parents:
2310
diff
changeset
|
172 |
14 | 173 # ifdef FEAT_MZSCHEME |
174 # include "if_mzsch.pro" | |
175 # endif | |
176 | |
7 | 177 # ifdef FEAT_PYTHON |
178 # include "if_python.pro" | |
179 # endif | |
180 | |
2329
ad2889f48843
Added support for Python 3. (Roland Puntaier)
Bram Moolenaar <bram@vim.org>
parents:
2320
diff
changeset
|
181 # ifdef FEAT_PYTHON3 |
ad2889f48843
Added support for Python 3. (Roland Puntaier)
Bram Moolenaar <bram@vim.org>
parents:
2320
diff
changeset
|
182 # include "if_python3.pro" |
ad2889f48843
Added support for Python 3. (Roland Puntaier)
Bram Moolenaar <bram@vim.org>
parents:
2320
diff
changeset
|
183 # endif |
ad2889f48843
Added support for Python 3. (Roland Puntaier)
Bram Moolenaar <bram@vim.org>
parents:
2320
diff
changeset
|
184 |
7 | 185 # ifdef FEAT_TCL |
186 # include "if_tcl.pro" | |
187 # endif | |
188 | |
189 # ifdef FEAT_RUBY | |
190 # include "if_ruby.pro" | |
191 # endif | |
192 | |
2209
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
193 /* Ugly solution for "BalloonEval" not being defined while it's used in some |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
194 * .pro files. */ |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
195 # ifndef FEAT_BEVAL |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
196 # define BalloonEval int |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
197 # endif |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
198 |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
199 # ifdef FEAT_NETBEANS_INTG |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
200 # include "netbeans.pro" |
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
201 # endif |
8493
caed4b2d305f
commit https://github.com/vim/vim/commit/509ce2a558e7e0c03242e32e844255af52f1c821
Christian Brabandt <cb@256bit.org>
parents:
8212
diff
changeset
|
202 # ifdef FEAT_JOB_CHANNEL |
7743
6069f43cea4e
commit https://github.com/vim/vim/commit/e0874f8cbcddfcf9965a85ba35199964efb1d01a
Christian Brabandt <cb@256bit.org>
parents:
7712
diff
changeset
|
203 # include "channel.pro" |
6069f43cea4e
commit https://github.com/vim/vim/commit/e0874f8cbcddfcf9965a85ba35199964efb1d01a
Christian Brabandt <cb@256bit.org>
parents:
7712
diff
changeset
|
204 # endif |
2209
d0ddf7ba1630
Included the patch to support netbeans in a terminal.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
205 |
7 | 206 # ifdef FEAT_GUI |
207 # include "gui.pro" | |
208 # if defined(UNIX) || defined(MACOS) | |
209 # include "pty.pro" | |
210 # endif | |
211 # if !defined(HAVE_SETENV) && !defined(HAVE_PUTENV) && !defined(VMS) | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
212 extern int putenv(const char *string); /* from pty.c */ |
7 | 213 # ifdef USE_VIMPTY_GETENV |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
214 extern char_u *vimpty_getenv(const char_u *string); /* from pty.c */ |
7 | 215 # endif |
216 # endif | |
217 # ifdef FEAT_GUI_W32 | |
218 # include "gui_w32.pro" | |
219 # endif | |
220 # ifdef FEAT_GUI_GTK | |
221 # include "gui_gtk.pro" | |
222 # include "gui_gtk_x11.pro" | |
223 # endif | |
224 # ifdef FEAT_GUI_MOTIF | |
225 # include "gui_motif.pro" | |
44 | 226 # include "gui_xmdlg.pro" |
7 | 227 # endif |
228 # ifdef FEAT_GUI_ATHENA | |
229 # include "gui_athena.pro" | |
230 # ifdef FEAT_BROWSE | |
7807
1a5d34492798
commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents:
7743
diff
changeset
|
231 extern char *vim_SelFile(Widget toplevel, char *prompt, char *init_path, int (*show_entry)(), int x, int y, guicolor_T fg, guicolor_T bg, guicolor_T scroll_fg, guicolor_T scroll_bg); |
7 | 232 # endif |
233 # endif | |
234 # ifdef FEAT_GUI_MAC | |
235 # include "gui_mac.pro" | |
236 # endif | |
237 # ifdef FEAT_GUI_X11 | |
238 # include "gui_x11.pro" | |
239 # endif | |
240 # ifdef FEAT_GUI_PHOTON | |
241 # include "gui_photon.pro" | |
242 # endif | |
243 # ifdef FEAT_SUN_WORKSHOP | |
244 # include "workshop.pro" | |
245 # endif | |
246 # endif /* FEAT_GUI */ | |
247 | |
248 # ifdef FEAT_OLE | |
249 # include "if_ole.pro" | |
250 # endif | |
251 # if defined(FEAT_CLIENTSERVER) && defined(FEAT_X11) | |
252 # include "if_xcmdsrv.pro" | |
253 # endif | |
254 | |
255 /* | |
539 | 256 * The perl include files pollute the namespace, therefore proto.h must be |
7 | 257 * included before the perl include files. But then CV is not defined, which |
258 * is used in if_perl.pro. To get around this, the perl prototype files are | |
259 * not included here for the perl files. Use a dummy define for CV for the | |
260 * other files. | |
261 */ | |
262 #if defined(FEAT_PERL) && !defined(IN_PERL_FILE) | |
263 # define CV void | |
264 # ifdef __BORLANDC__ | |
127 | 265 #pragma option -pc |
7 | 266 # endif |
267 # include "if_perl.pro" | |
268 # ifdef __BORLANDC__ | |
127 | 269 #pragma option -p. |
7 | 270 # endif |
271 # include "if_perlsfio.pro" | |
272 #endif | |
273 | |
763 | 274 #ifdef MACOS_CONVERT |
501 | 275 # include "os_mac_conv.pro" |
276 #endif | |
2310
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
277 #if defined(MACOS_X_UNIX) && defined(FEAT_CLIPBOARD) && !defined(FEAT_GUI) |
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
278 /* functions in os_macosx.m */ |
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
279 void clip_mch_lose_selection(VimClipboard *cbd); |
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
280 int clip_mch_own_selection(VimClipboard *cbd); |
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
281 void clip_mch_request_selection(VimClipboard *cbd); |
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
282 void clip_mch_set_selection(VimClipboard *cbd); |
3e4574a4b627
Fix a few compiler warnings.
Bram Moolenaar <bram@vim.org>
parents:
2280
diff
changeset
|
283 #endif |
501 | 284 |
7 | 285 #ifdef __BORLANDC__ |
286 # define _PROTO_H | |
287 #endif | |
288 #endif /* !PROTO && !NOPROTO */ |