annotate src/gui_xmebw.h @ 33988:7c30841c60a0 v9.0.2180

patch 9.0.2180: POSIX function name in exarg causes issues Commit: https://github.com/vim/vim/commit/6fdb6280821a822768df5689a5d727e37d38306c Author: Zoltan Arpadffy <zoltan.arpadffy@gmail.com> Date: Tue Dec 19 20:53:07 2023 +0100 patch 9.0.2180: POSIX function name in exarg causes issues Problem: POSIX function name in exarg struct causes issues on OpenVMS Solution: Rename getline member in exarg struct to ea_getline, remove isinf() workaround for VMS There are compilers that do not treat well POSIX functions - like getline - usage in the structs. Older VMS compilers could digest this... but the newer OpenVMS compilers ( like VSI C x86-64 X7.4-843 (GEM 50XB9) ) cannot deal with these structs. This could be limited to getline() that is defined via getdelim() and might not affect all POSIX functions in general - but avoiding POSIX function names usage in the structs is a "safe side" practice without compromising the functionality or the code readability. The previous OpenVMS X86 port used a workaround limiting the compiler capabilities using __CRTL_VER_OVERRIDE=80400000 In order to make the OpenVMS port future proof, this pull request proposes a possible solution. closes: #13704 Signed-off-by: Zoltan Arpadffy <zoltan.arpadffy@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Tue, 19 Dec 2023 21:00:04 +0100
parents 4aead6a9b7a9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10042
4aead6a9b7a9 commit https://github.com/vim/vim/commit/edf3f97ae2af024708ebb4ac614227327033ca47
Christian Brabandt <cb@256bit.org>
parents: 1206
diff changeset
1 /* vi:set ts=8 sts=4 sw=4 noet:
48
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
2 *
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
3 * VIM - Vi IMproved by Bram Moolenaar
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
4 *
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
5 * Do ":help uganda" in Vim to read copying and usage conditions.
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
6 * Do ":help credits" in Vim to see a list of people who contributed.
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
7 * See README.txt for an overview of the Vim source code.
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
8 */
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
9 /*
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
10 *
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
11 * (C) 2002,2005 by Marcin Dalecki <martin@dalecki.de>
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
12 *
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
13 * MARCIN DALECKI ASSUMES NO RESPONSIBILITY FOR THE USE OR INABILITY TO USE ANY
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
14 * OF THIS SOFTWARE . THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
15 * KIND, AND MARCIN DALECKI EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES,
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
16 * INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
17 * FITNESS FOR A PARTICULAR PURPOSE.
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
18 */
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
19
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
20 #ifndef EnhancedB_H
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
21 #define EnhancedB_H
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
22
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
23 /*
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
24 * New resources for the Extended Pushbutton widget
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
25 */
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
26
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
27 #ifndef XmNshift
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
28 # define XmNshift "shift"
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
29 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
30 #ifndef XmCShift
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
31 # define XmCShift "Shift"
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
32 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
33
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
34 #ifndef XmNlabelLocation
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
35 # define XmNlabelLocation "labelLocation"
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
36 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
37 #ifndef XmCLocation
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
38 # define XmCLocation "Location"
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
39 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
40
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
41 #ifndef XmNpixmapData
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
42 # define XmNpixmapData "pixmapData"
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
43 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
44
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
45 #ifndef XmNpixmapFile
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
46 # define XmNpixmapFile "pixmapFile"
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
47 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
48
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
49 /*
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
50 * Constants for labelLocation.
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
51 */
147
2f5a3b881ada updated for version 7.0046
vimboss
parents: 48
diff changeset
52 #ifdef HAVE_XM_JOINSIDET_H
48
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
53 # include <Xm/JoinSideT.h>
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
54 #else
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
55 # define XmLEFT 1
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
56 # define XmRIGHT 2
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
57 # define XmTOP 3
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
58 # define XmBOTTOM 4
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
59 #endif
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
60
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
61 #define XmIsEnhancedButton(w) XtIsSubclass(w, xmEnhancedButtonWidgetClass)
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
62
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
63 /*
1206
76130176cf41 updated for version 7.1b
vimboss
parents: 147
diff changeset
64 * Convenience creation function.
48
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
65 */
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
66 extern Widget XgCreateEPushButtonWidget(Widget, char *, ArgList, Cardinal);
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
67
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
68 extern WidgetClass xmEnhancedButtonWidgetClass;
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
69 typedef struct _XmEnhancedButtonClassRec *XmEnhancedButtonWidgetClass;
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
70 typedef struct _XmEnhancedButtonRec *XmEnhancedButtonWidget;
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
71
00c35ea0c2b3 updated for version 7.0028
vimboss
parents:
diff changeset
72 #endif