summaryrefslogtreecommitdiff
path: root/xts5/Xopen/keysym
diff options
context:
space:
mode:
authorDan Nicholson <dbn.lists@gmail.com>2009-09-16 12:20:41 -0700
committerDan Nicholson <dbn.lists@gmail.com>2009-09-16 12:20:41 -0700
commit704eb8d4cbfa2f8c47882a8ea6c7732cf5fa20d1 (patch)
tree1f48212ecf5556fbff17172c6904e525481e8653 /xts5/Xopen/keysym
parent5d01bd434ff7186701c931883b110c179d4fa8b8 (diff)
xts5: Move tests out of tset directory
The tset directory was mostly useless and causes extra baggage if the scenario files are going to be used on an installed package. The test directories are now flattened into xts5.
Diffstat (limited to 'xts5/Xopen/keysym')
-rw-r--r--xts5/Xopen/keysym/Test0.c133
-rw-r--r--xts5/Xopen/keysym/Test1.c2074
-rw-r--r--xts5/Xopen/keysym/Test2.c694
-rw-r--r--xts5/Xopen/keysym/Test3.c344
-rw-r--r--xts5/Xopen/keysym/Test4.c484
-rw-r--r--xts5/Xopen/keysym/TestG.c864
-rw-r--r--xts5/Xopen/keysym/TestM.c1604
-rw-r--r--xts5/Xopen/keysym/keysym.m702
8 files changed, 6899 insertions, 0 deletions
diff --git a/xts5/Xopen/keysym/Test0.c b/xts5/Xopen/keysym/Test0.c
new file mode 100644
index 00000000..1e43903b
--- /dev/null
+++ b/xts5/Xopen/keysym/Test0.c
@@ -0,0 +1,133 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/Test0.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/Test0.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: Test0.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:30 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:57:59 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:44 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:18 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:25 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:40 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) Test0.c Rel 1.1 (5/12/92)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysym0()
+{
+int pass = 0, fail = 0;
+#ifdef XK_VoidSymbol
+ if(test("XK_VoidSymbol", XK_VoidSymbol, 0xFFFFFF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_VoidSymbol");
+ FAIL;
+#endif
+
+ CHECKPASS(1);
+}
diff --git a/xts5/Xopen/keysym/Test1.c b/xts5/Xopen/keysym/Test1.c
new file mode 100644
index 00000000..90e18c71
--- /dev/null
+++ b/xts5/Xopen/keysym/Test1.c
@@ -0,0 +1,2074 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/Test1.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/Test1.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: Test1.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:31 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:58:00 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:45 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:18 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:27 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:42 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) Test1.c Rel 1.1 (11/28/91)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysym1()
+{
+int pass = 0, fail = 0;
+#ifdef XK_space
+ if(test("XK_space", XK_space, 0x20) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_space");
+ FAIL;
+#endif
+
+#ifdef XK_exclam
+ if(test("XK_exclam", XK_exclam, 0x21) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_exclam");
+ FAIL;
+#endif
+
+#ifdef XK_quotedbl
+ if(test("XK_quotedbl", XK_quotedbl, 0x22) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_quotedbl");
+ FAIL;
+#endif
+
+#ifdef XK_numbersign
+ if(test("XK_numbersign", XK_numbersign, 0x23) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_numbersign");
+ FAIL;
+#endif
+
+#ifdef XK_dollar
+ if(test("XK_dollar", XK_dollar, 0x24) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_dollar");
+ FAIL;
+#endif
+
+#ifdef XK_percent
+ if(test("XK_percent", XK_percent, 0x25) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_percent");
+ FAIL;
+#endif
+
+#ifdef XK_ampersand
+ if(test("XK_ampersand", XK_ampersand, 0x26) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ampersand");
+ FAIL;
+#endif
+
+#ifdef XK_apostrophe
+ if(test("XK_apostrophe", XK_apostrophe, 0x27) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_apostrophe");
+ FAIL;
+#endif
+
+#ifdef XK_quoteright
+ if(test("XK_quoteright", XK_quoteright, 0x27) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_quoteright");
+ FAIL;
+#endif
+
+#ifdef XK_parenleft
+ if(test("XK_parenleft", XK_parenleft, 0x28) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_parenleft");
+ FAIL;
+#endif
+
+#ifdef XK_parenright
+ if(test("XK_parenright", XK_parenright, 0x29) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_parenright");
+ FAIL;
+#endif
+
+#ifdef XK_asterisk
+ if(test("XK_asterisk", XK_asterisk, 0x2A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_asterisk");
+ FAIL;
+#endif
+
+#ifdef XK_plus
+ if(test("XK_plus", XK_plus, 0x2B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_plus");
+ FAIL;
+#endif
+
+#ifdef XK_comma
+ if(test("XK_comma", XK_comma, 0x2C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_comma");
+ FAIL;
+#endif
+
+#ifdef XK_minus
+ if(test("XK_minus", XK_minus, 0x2D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_minus");
+ FAIL;
+#endif
+
+#ifdef XK_period
+ if(test("XK_period", XK_period, 0x2E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_period");
+ FAIL;
+#endif
+
+#ifdef XK_slash
+ if(test("XK_slash", XK_slash, 0x2F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_slash");
+ FAIL;
+#endif
+
+#ifdef XK_0
+ if(test("XK_0", XK_0, 0x30) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_0");
+ FAIL;
+#endif
+
+#ifdef XK_1
+ if(test("XK_1", XK_1, 0x31) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_1");
+ FAIL;
+#endif
+
+#ifdef XK_2
+ if(test("XK_2", XK_2, 0x32) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_2");
+ FAIL;
+#endif
+
+#ifdef XK_3
+ if(test("XK_3", XK_3, 0x33) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_3");
+ FAIL;
+#endif
+
+#ifdef XK_4
+ if(test("XK_4", XK_4, 0x34) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_4");
+ FAIL;
+#endif
+
+#ifdef XK_5
+ if(test("XK_5", XK_5, 0x35) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_5");
+ FAIL;
+#endif
+
+#ifdef XK_6
+ if(test("XK_6", XK_6, 0x36) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_6");
+ FAIL;
+#endif
+
+#ifdef XK_7
+ if(test("XK_7", XK_7, 0x37) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_7");
+ FAIL;
+#endif
+
+#ifdef XK_8
+ if(test("XK_8", XK_8, 0x38) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_8");
+ FAIL;
+#endif
+
+#ifdef XK_9
+ if(test("XK_9", XK_9, 0x39) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_9");
+ FAIL;
+#endif
+
+#ifdef XK_colon
+ if(test("XK_colon", XK_colon, 0x3A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_colon");
+ FAIL;
+#endif
+
+#ifdef XK_semicolon
+ if(test("XK_semicolon", XK_semicolon, 0x3B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_semicolon");
+ FAIL;
+#endif
+
+#ifdef XK_less
+ if(test("XK_less", XK_less, 0x3C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_less");
+ FAIL;
+#endif
+
+#ifdef XK_equal
+ if(test("XK_equal", XK_equal, 0x3D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_equal");
+ FAIL;
+#endif
+
+#ifdef XK_greater
+ if(test("XK_greater", XK_greater, 0x3E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_greater");
+ FAIL;
+#endif
+
+#ifdef XK_question
+ if(test("XK_question", XK_question, 0x3F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_question");
+ FAIL;
+#endif
+
+#ifdef XK_at
+ if(test("XK_at", XK_at, 0x40) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_at");
+ FAIL;
+#endif
+
+#ifdef XK_A
+ if(test("XK_A", XK_A, 0x41) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_A");
+ FAIL;
+#endif
+
+#ifdef XK_B
+ if(test("XK_B", XK_B, 0x42) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_B");
+ FAIL;
+#endif
+
+#ifdef XK_C
+ if(test("XK_C", XK_C, 0x43) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_C");
+ FAIL;
+#endif
+
+#ifdef XK_D
+ if(test("XK_D", XK_D, 0x44) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_D");
+ FAIL;
+#endif
+
+#ifdef XK_E
+ if(test("XK_E", XK_E, 0x45) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_E");
+ FAIL;
+#endif
+
+#ifdef XK_F
+ if(test("XK_F", XK_F, 0x46) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F");
+ FAIL;
+#endif
+
+#ifdef XK_G
+ if(test("XK_G", XK_G, 0x47) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_G");
+ FAIL;
+#endif
+
+#ifdef XK_H
+ if(test("XK_H", XK_H, 0x48) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_H");
+ FAIL;
+#endif
+
+#ifdef XK_I
+ if(test("XK_I", XK_I, 0x49) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_I");
+ FAIL;
+#endif
+
+#ifdef XK_J
+ if(test("XK_J", XK_J, 0x4A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_J");
+ FAIL;
+#endif
+
+#ifdef XK_K
+ if(test("XK_K", XK_K, 0x4B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_K");
+ FAIL;
+#endif
+
+#ifdef XK_L
+ if(test("XK_L", XK_L, 0x4C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L");
+ FAIL;
+#endif
+
+#ifdef XK_M
+ if(test("XK_M", XK_M, 0x4D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_M");
+ FAIL;
+#endif
+
+#ifdef XK_N
+ if(test("XK_N", XK_N, 0x4E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_N");
+ FAIL;
+#endif
+
+#ifdef XK_O
+ if(test("XK_O", XK_O, 0x4F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_O");
+ FAIL;
+#endif
+
+#ifdef XK_P
+ if(test("XK_P", XK_P, 0x50) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_P");
+ FAIL;
+#endif
+
+#ifdef XK_Q
+ if(test("XK_Q", XK_Q, 0x51) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Q");
+ FAIL;
+#endif
+
+#ifdef XK_R
+ if(test("XK_R", XK_R, 0x52) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R");
+ FAIL;
+#endif
+
+#ifdef XK_S
+ if(test("XK_S", XK_S, 0x53) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_S");
+ FAIL;
+#endif
+
+#ifdef XK_T
+ if(test("XK_T", XK_T, 0x54) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_T");
+ FAIL;
+#endif
+
+#ifdef XK_U
+ if(test("XK_U", XK_U, 0x55) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_U");
+ FAIL;
+#endif
+
+#ifdef XK_V
+ if(test("XK_V", XK_V, 0x56) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_V");
+ FAIL;
+#endif
+
+#ifdef XK_W
+ if(test("XK_W", XK_W, 0x57) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_W");
+ FAIL;
+#endif
+
+#ifdef XK_X
+ if(test("XK_X", XK_X, 0x58) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_X");
+ FAIL;
+#endif
+
+#ifdef XK_Y
+ if(test("XK_Y", XK_Y, 0x59) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Y");
+ FAIL;
+#endif
+
+#ifdef XK_Z
+ if(test("XK_Z", XK_Z, 0x5A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Z");
+ FAIL;
+#endif
+
+#ifdef XK_bracketleft
+ if(test("XK_bracketleft", XK_bracketleft, 0x5B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_bracketleft");
+ FAIL;
+#endif
+
+#ifdef XK_backslash
+ if(test("XK_backslash", XK_backslash, 0x5C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_backslash");
+ FAIL;
+#endif
+
+#ifdef XK_bracketright
+ if(test("XK_bracketright", XK_bracketright, 0x5D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_bracketright");
+ FAIL;
+#endif
+
+#ifdef XK_asciicircum
+ if(test("XK_asciicircum", XK_asciicircum, 0x5E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_asciicircum");
+ FAIL;
+#endif
+
+#ifdef XK_underscore
+ if(test("XK_underscore", XK_underscore, 0x5F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_underscore");
+ FAIL;
+#endif
+
+#ifdef XK_grave
+ if(test("XK_grave", XK_grave, 0x60) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_grave");
+ FAIL;
+#endif
+
+#ifdef XK_quoteleft
+ if(test("XK_quoteleft", XK_quoteleft, 0x60) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_quoteleft");
+ FAIL;
+#endif
+
+#ifdef XK_a
+ if(test("XK_a", XK_a, 0x61) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_a");
+ FAIL;
+#endif
+
+#ifdef XK_b
+ if(test("XK_b", XK_b, 0x62) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_b");
+ FAIL;
+#endif
+
+#ifdef XK_c
+ if(test("XK_c", XK_c, 0x63) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_c");
+ FAIL;
+#endif
+
+#ifdef XK_d
+ if(test("XK_d", XK_d, 0x64) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_d");
+ FAIL;
+#endif
+
+#ifdef XK_e
+ if(test("XK_e", XK_e, 0x65) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_e");
+ FAIL;
+#endif
+
+#ifdef XK_f
+ if(test("XK_f", XK_f, 0x66) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_f");
+ FAIL;
+#endif
+
+#ifdef XK_g
+ if(test("XK_g", XK_g, 0x67) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_g");
+ FAIL;
+#endif
+
+#ifdef XK_h
+ if(test("XK_h", XK_h, 0x68) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_h");
+ FAIL;
+#endif
+
+#ifdef XK_i
+ if(test("XK_i", XK_i, 0x69) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_i");
+ FAIL;
+#endif
+
+#ifdef XK_j
+ if(test("XK_j", XK_j, 0x6A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_j");
+ FAIL;
+#endif
+
+#ifdef XK_k
+ if(test("XK_k", XK_k, 0x6B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_k");
+ FAIL;
+#endif
+
+#ifdef XK_l
+ if(test("XK_l", XK_l, 0x6C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_l");
+ FAIL;
+#endif
+
+#ifdef XK_m
+ if(test("XK_m", XK_m, 0x6D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_m");
+ FAIL;
+#endif
+
+#ifdef XK_n
+ if(test("XK_n", XK_n, 0x6E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_n");
+ FAIL;
+#endif
+
+#ifdef XK_o
+ if(test("XK_o", XK_o, 0x6F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_o");
+ FAIL;
+#endif
+
+#ifdef XK_p
+ if(test("XK_p", XK_p, 0x70) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_p");
+ FAIL;
+#endif
+
+#ifdef XK_q
+ if(test("XK_q", XK_q, 0x71) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_q");
+ FAIL;
+#endif
+
+#ifdef XK_r
+ if(test("XK_r", XK_r, 0x72) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_r");
+ FAIL;
+#endif
+
+#ifdef XK_s
+ if(test("XK_s", XK_s, 0x73) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_s");
+ FAIL;
+#endif
+
+#ifdef XK_t
+ if(test("XK_t", XK_t, 0x74) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_t");
+ FAIL;
+#endif
+
+#ifdef XK_u
+ if(test("XK_u", XK_u, 0x75) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_u");
+ FAIL;
+#endif
+
+#ifdef XK_v
+ if(test("XK_v", XK_v, 0x76) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_v");
+ FAIL;
+#endif
+
+#ifdef XK_w
+ if(test("XK_w", XK_w, 0x77) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_w");
+ FAIL;
+#endif
+
+#ifdef XK_x
+ if(test("XK_x", XK_x, 0x78) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_x");
+ FAIL;
+#endif
+
+#ifdef XK_y
+ if(test("XK_y", XK_y, 0x79) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_y");
+ FAIL;
+#endif
+
+#ifdef XK_z
+ if(test("XK_z", XK_z, 0x7A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_z");
+ FAIL;
+#endif
+
+#ifdef XK_braceleft
+ if(test("XK_braceleft", XK_braceleft, 0x7B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_braceleft");
+ FAIL;
+#endif
+
+#ifdef XK_bar
+ if(test("XK_bar", XK_bar, 0x7C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_bar");
+ FAIL;
+#endif
+
+#ifdef XK_braceright
+ if(test("XK_braceright", XK_braceright, 0x7D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_braceright");
+ FAIL;
+#endif
+
+#ifdef XK_asciitilde
+ if(test("XK_asciitilde", XK_asciitilde, 0x7E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_asciitilde");
+ FAIL;
+#endif
+
+#ifdef XK_nobreakspace
+ if(test("XK_nobreakspace", XK_nobreakspace, 0xA0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_nobreakspace");
+ FAIL;
+#endif
+
+#ifdef XK_exclamdown
+ if(test("XK_exclamdown", XK_exclamdown, 0xA1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_exclamdown");
+ FAIL;
+#endif
+
+#ifdef XK_cent
+ if(test("XK_cent", XK_cent, 0xA2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_cent");
+ FAIL;
+#endif
+
+#ifdef XK_sterling
+ if(test("XK_sterling", XK_sterling, 0xA3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_sterling");
+ FAIL;
+#endif
+
+#ifdef XK_currency
+ if(test("XK_currency", XK_currency, 0xA4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_currency");
+ FAIL;
+#endif
+
+#ifdef XK_yen
+ if(test("XK_yen", XK_yen, 0xA5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_yen");
+ FAIL;
+#endif
+
+#ifdef XK_brokenbar
+ if(test("XK_brokenbar", XK_brokenbar, 0xA6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_brokenbar");
+ FAIL;
+#endif
+
+#ifdef XK_section
+ if(test("XK_section", XK_section, 0xA7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_section");
+ FAIL;
+#endif
+
+#ifdef XK_diaeresis
+ if(test("XK_diaeresis", XK_diaeresis, 0xA8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_diaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_copyright
+ if(test("XK_copyright", XK_copyright, 0xA9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_copyright");
+ FAIL;
+#endif
+
+#ifdef XK_ordfeminine
+ if(test("XK_ordfeminine", XK_ordfeminine, 0xAA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ordfeminine");
+ FAIL;
+#endif
+
+#ifdef XK_guillemotleft
+ if(test("XK_guillemotleft", XK_guillemotleft, 0xAB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_guillemotleft");
+ FAIL;
+#endif
+
+#ifdef XK_notsign
+ if(test("XK_notsign", XK_notsign, 0xAC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_notsign");
+ FAIL;
+#endif
+
+#ifdef XK_hyphen
+ if(test("XK_hyphen", XK_hyphen, 0xAD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_hyphen");
+ FAIL;
+#endif
+
+#ifdef XK_registered
+ if(test("XK_registered", XK_registered, 0xAE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_registered");
+ FAIL;
+#endif
+
+#ifdef XK_macron
+ if(test("XK_macron", XK_macron, 0xAF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_macron");
+ FAIL;
+#endif
+
+#ifdef XK_degree
+ if(test("XK_degree", XK_degree, 0xB0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_degree");
+ FAIL;
+#endif
+
+#ifdef XK_plusminus
+ if(test("XK_plusminus", XK_plusminus, 0xB1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_plusminus");
+ FAIL;
+#endif
+
+#ifdef XK_twosuperior
+ if(test("XK_twosuperior", XK_twosuperior, 0xB2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_twosuperior");
+ FAIL;
+#endif
+
+#ifdef XK_threesuperior
+ if(test("XK_threesuperior", XK_threesuperior, 0xB3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_threesuperior");
+ FAIL;
+#endif
+
+#ifdef XK_acute
+ if(test("XK_acute", XK_acute, 0xB4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_acute");
+ FAIL;
+#endif
+
+#ifdef XK_mu
+ if(test("XK_mu", XK_mu, 0xB5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_mu");
+ FAIL;
+#endif
+
+#ifdef XK_paragraph
+ if(test("XK_paragraph", XK_paragraph, 0xB6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_paragraph");
+ FAIL;
+#endif
+
+#ifdef XK_periodcentered
+ if(test("XK_periodcentered", XK_periodcentered, 0xB7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_periodcentered");
+ FAIL;
+#endif
+
+#ifdef XK_cedilla
+ if(test("XK_cedilla", XK_cedilla, 0xB8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_cedilla");
+ FAIL;
+#endif
+
+#ifdef XK_onesuperior
+ if(test("XK_onesuperior", XK_onesuperior, 0xB9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_onesuperior");
+ FAIL;
+#endif
+
+#ifdef XK_masculine
+ if(test("XK_masculine", XK_masculine, 0xBA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_masculine");
+ FAIL;
+#endif
+
+#ifdef XK_guillemotright
+ if(test("XK_guillemotright", XK_guillemotright, 0xBB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_guillemotright");
+ FAIL;
+#endif
+
+#ifdef XK_onequarter
+ if(test("XK_onequarter", XK_onequarter, 0xBC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_onequarter");
+ FAIL;
+#endif
+
+#ifdef XK_onehalf
+ if(test("XK_onehalf", XK_onehalf, 0xBD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_onehalf");
+ FAIL;
+#endif
+
+#ifdef XK_threequarters
+ if(test("XK_threequarters", XK_threequarters, 0xBE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_threequarters");
+ FAIL;
+#endif
+
+#ifdef XK_questiondown
+ if(test("XK_questiondown", XK_questiondown, 0xBF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_questiondown");
+ FAIL;
+#endif
+
+#ifdef XK_Agrave
+ if(test("XK_Agrave", XK_Agrave, 0xC0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Agrave");
+ FAIL;
+#endif
+
+#ifdef XK_Aacute
+ if(test("XK_Aacute", XK_Aacute, 0xC1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Aacute");
+ FAIL;
+#endif
+
+#ifdef XK_Acircumflex
+ if(test("XK_Acircumflex", XK_Acircumflex, 0xC2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Acircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Atilde
+ if(test("XK_Atilde", XK_Atilde, 0xC3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Atilde");
+ FAIL;
+#endif
+
+#ifdef XK_Adiaeresis
+ if(test("XK_Adiaeresis", XK_Adiaeresis, 0xC4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Adiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_Aring
+ if(test("XK_Aring", XK_Aring, 0xC5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Aring");
+ FAIL;
+#endif
+
+#ifdef XK_AE
+ if(test("XK_AE", XK_AE, 0xC6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_AE");
+ FAIL;
+#endif
+
+#ifdef XK_Ccedilla
+ if(test("XK_Ccedilla", XK_Ccedilla, 0xC7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ccedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Egrave
+ if(test("XK_Egrave", XK_Egrave, 0xC8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Egrave");
+ FAIL;
+#endif
+
+#ifdef XK_Eacute
+ if(test("XK_Eacute", XK_Eacute, 0xC9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Eacute");
+ FAIL;
+#endif
+
+#ifdef XK_Ecircumflex
+ if(test("XK_Ecircumflex", XK_Ecircumflex, 0xCA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ecircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Ediaeresis
+ if(test("XK_Ediaeresis", XK_Ediaeresis, 0xCB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ediaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_Igrave
+ if(test("XK_Igrave", XK_Igrave, 0xCC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Igrave");
+ FAIL;
+#endif
+
+#ifdef XK_Iacute
+ if(test("XK_Iacute", XK_Iacute, 0xCD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Iacute");
+ FAIL;
+#endif
+
+#ifdef XK_Icircumflex
+ if(test("XK_Icircumflex", XK_Icircumflex, 0xCE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Icircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Idiaeresis
+ if(test("XK_Idiaeresis", XK_Idiaeresis, 0xCF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Idiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_ETH
+ if(test("XK_ETH", XK_ETH, 0xD0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ETH");
+ FAIL;
+#endif
+
+#ifdef XK_Eth
+ if(test("XK_Eth", XK_Eth, 0xD0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Eth");
+ FAIL;
+#endif
+
+#ifdef XK_Ntilde
+ if(test("XK_Ntilde", XK_Ntilde, 0xD1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ntilde");
+ FAIL;
+#endif
+
+#ifdef XK_Ograve
+ if(test("XK_Ograve", XK_Ograve, 0xD2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ograve");
+ FAIL;
+#endif
+
+#ifdef XK_Oacute
+ if(test("XK_Oacute", XK_Oacute, 0xD3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Oacute");
+ FAIL;
+#endif
+
+#ifdef XK_Ocircumflex
+ if(test("XK_Ocircumflex", XK_Ocircumflex, 0xD4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ocircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Otilde
+ if(test("XK_Otilde", XK_Otilde, 0xD5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Otilde");
+ FAIL;
+#endif
+
+#ifdef XK_Odiaeresis
+ if(test("XK_Odiaeresis", XK_Odiaeresis, 0xD6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Odiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_multiply
+ if(test("XK_multiply", XK_multiply, 0xD7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_multiply");
+ FAIL;
+#endif
+
+#ifdef XK_Ooblique
+ if(test("XK_Ooblique", XK_Ooblique, 0xD8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ooblique");
+ FAIL;
+#endif
+
+#ifdef XK_Ugrave
+ if(test("XK_Ugrave", XK_Ugrave, 0xD9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ugrave");
+ FAIL;
+#endif
+
+#ifdef XK_Uacute
+ if(test("XK_Uacute", XK_Uacute, 0xDA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Uacute");
+ FAIL;
+#endif
+
+#ifdef XK_Ucircumflex
+ if(test("XK_Ucircumflex", XK_Ucircumflex, 0xDB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ucircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Udiaeresis
+ if(test("XK_Udiaeresis", XK_Udiaeresis, 0xDC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Udiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_Yacute
+ if(test("XK_Yacute", XK_Yacute, 0xDD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Yacute");
+ FAIL;
+#endif
+
+#ifdef XK_THORN
+ if(test("XK_THORN", XK_THORN, 0xDE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_THORN");
+ FAIL;
+#endif
+
+#ifdef XK_Thorn
+ if(test("XK_Thorn", XK_Thorn, 0xDE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Thorn");
+ FAIL;
+#endif
+
+#ifdef XK_ssharp
+ if(test("XK_ssharp", XK_ssharp, 0xDF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ssharp");
+ FAIL;
+#endif
+
+#ifdef XK_agrave
+ if(test("XK_agrave", XK_agrave, 0xE0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_agrave");
+ FAIL;
+#endif
+
+#ifdef XK_aacute
+ if(test("XK_aacute", XK_aacute, 0xE1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_aacute");
+ FAIL;
+#endif
+
+#ifdef XK_acircumflex
+ if(test("XK_acircumflex", XK_acircumflex, 0xE2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_acircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_atilde
+ if(test("XK_atilde", XK_atilde, 0xE3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_atilde");
+ FAIL;
+#endif
+
+#ifdef XK_adiaeresis
+ if(test("XK_adiaeresis", XK_adiaeresis, 0xE4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_adiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_aring
+ if(test("XK_aring", XK_aring, 0xE5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_aring");
+ FAIL;
+#endif
+
+#ifdef XK_ae
+ if(test("XK_ae", XK_ae, 0xE6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ae");
+ FAIL;
+#endif
+
+#ifdef XK_ccedilla
+ if(test("XK_ccedilla", XK_ccedilla, 0xE7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ccedilla");
+ FAIL;
+#endif
+
+#ifdef XK_egrave
+ if(test("XK_egrave", XK_egrave, 0xE8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_egrave");
+ FAIL;
+#endif
+
+#ifdef XK_eacute
+ if(test("XK_eacute", XK_eacute, 0xE9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_eacute");
+ FAIL;
+#endif
+
+#ifdef XK_ecircumflex
+ if(test("XK_ecircumflex", XK_ecircumflex, 0xEA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ecircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_ediaeresis
+ if(test("XK_ediaeresis", XK_ediaeresis, 0xEB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ediaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_igrave
+ if(test("XK_igrave", XK_igrave, 0xEC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_igrave");
+ FAIL;
+#endif
+
+#ifdef XK_iacute
+ if(test("XK_iacute", XK_iacute, 0xED) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_iacute");
+ FAIL;
+#endif
+
+#ifdef XK_icircumflex
+ if(test("XK_icircumflex", XK_icircumflex, 0xEE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_icircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_idiaeresis
+ if(test("XK_idiaeresis", XK_idiaeresis, 0xEF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_idiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_eth
+ if(test("XK_eth", XK_eth, 0xF0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_eth");
+ FAIL;
+#endif
+
+#ifdef XK_ntilde
+ if(test("XK_ntilde", XK_ntilde, 0xF1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ntilde");
+ FAIL;
+#endif
+
+#ifdef XK_ograve
+ if(test("XK_ograve", XK_ograve, 0xF2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ograve");
+ FAIL;
+#endif
+
+#ifdef XK_oacute
+ if(test("XK_oacute", XK_oacute, 0xF3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_oacute");
+ FAIL;
+#endif
+
+#ifdef XK_ocircumflex
+ if(test("XK_ocircumflex", XK_ocircumflex, 0xF4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ocircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_otilde
+ if(test("XK_otilde", XK_otilde, 0xF5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_otilde");
+ FAIL;
+#endif
+
+#ifdef XK_odiaeresis
+ if(test("XK_odiaeresis", XK_odiaeresis, 0xF6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_odiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_division
+ if(test("XK_division", XK_division, 0xF7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_division");
+ FAIL;
+#endif
+
+#ifdef XK_oslash
+ if(test("XK_oslash", XK_oslash, 0xF8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_oslash");
+ FAIL;
+#endif
+
+#ifdef XK_ugrave
+ if(test("XK_ugrave", XK_ugrave, 0xF9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ugrave");
+ FAIL;
+#endif
+
+#ifdef XK_uacute
+ if(test("XK_uacute", XK_uacute, 0xFA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_uacute");
+ FAIL;
+#endif
+
+#ifdef XK_ucircumflex
+ if(test("XK_ucircumflex", XK_ucircumflex, 0xFB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ucircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_udiaeresis
+ if(test("XK_udiaeresis", XK_udiaeresis, 0xFC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_udiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_yacute
+ if(test("XK_yacute", XK_yacute, 0xFD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_yacute");
+ FAIL;
+#endif
+
+#ifdef XK_thorn
+ if(test("XK_thorn", XK_thorn, 0xFE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_thorn");
+ FAIL;
+#endif
+
+#ifdef XK_ydiaeresis
+ if(test("XK_ydiaeresis", XK_ydiaeresis, 0xFF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ydiaeresis");
+ FAIL;
+#endif
+
+
+ CHECKPASS(195);
+}
diff --git a/xts5/Xopen/keysym/Test2.c b/xts5/Xopen/keysym/Test2.c
new file mode 100644
index 00000000..96dc639c
--- /dev/null
+++ b/xts5/Xopen/keysym/Test2.c
@@ -0,0 +1,694 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/Test2.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/Test2.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: Test2.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:31 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:58:01 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:45 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:19 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:28 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:43 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) Test2.c Rel 1.1 (11/28/91)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysym2()
+{
+int pass = 0, fail = 0;
+#ifdef XK_Aogonek
+ if(test("XK_Aogonek", XK_Aogonek, 0x1A1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Aogonek");
+ FAIL;
+#endif
+
+#ifdef XK_breve
+ if(test("XK_breve", XK_breve, 0x1A2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_breve");
+ FAIL;
+#endif
+
+#ifdef XK_Lstroke
+ if(test("XK_Lstroke", XK_Lstroke, 0x1A3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Lstroke");
+ FAIL;
+#endif
+
+#ifdef XK_Lcaron
+ if(test("XK_Lcaron", XK_Lcaron, 0x1A5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Lcaron");
+ FAIL;
+#endif
+
+#ifdef XK_Sacute
+ if(test("XK_Sacute", XK_Sacute, 0x1A6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Sacute");
+ FAIL;
+#endif
+
+#ifdef XK_Scaron
+ if(test("XK_Scaron", XK_Scaron, 0x1A9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Scaron");
+ FAIL;
+#endif
+
+#ifdef XK_Scedilla
+ if(test("XK_Scedilla", XK_Scedilla, 0x1AA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Scedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Tcaron
+ if(test("XK_Tcaron", XK_Tcaron, 0x1AB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Tcaron");
+ FAIL;
+#endif
+
+#ifdef XK_Zacute
+ if(test("XK_Zacute", XK_Zacute, 0x1AC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Zacute");
+ FAIL;
+#endif
+
+#ifdef XK_Zcaron
+ if(test("XK_Zcaron", XK_Zcaron, 0x1AE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Zcaron");
+ FAIL;
+#endif
+
+#ifdef XK_Zabovedot
+ if(test("XK_Zabovedot", XK_Zabovedot, 0x1AF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Zabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_aogonek
+ if(test("XK_aogonek", XK_aogonek, 0x1B1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_aogonek");
+ FAIL;
+#endif
+
+#ifdef XK_ogonek
+ if(test("XK_ogonek", XK_ogonek, 0x1B2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ogonek");
+ FAIL;
+#endif
+
+#ifdef XK_lstroke
+ if(test("XK_lstroke", XK_lstroke, 0x1B3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_lstroke");
+ FAIL;
+#endif
+
+#ifdef XK_lcaron
+ if(test("XK_lcaron", XK_lcaron, 0x1B5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_lcaron");
+ FAIL;
+#endif
+
+#ifdef XK_sacute
+ if(test("XK_sacute", XK_sacute, 0x1B6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_sacute");
+ FAIL;
+#endif
+
+#ifdef XK_caron
+ if(test("XK_caron", XK_caron, 0x1B7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_caron");
+ FAIL;
+#endif
+
+#ifdef XK_scaron
+ if(test("XK_scaron", XK_scaron, 0x1B9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_scaron");
+ FAIL;
+#endif
+
+#ifdef XK_scedilla
+ if(test("XK_scedilla", XK_scedilla, 0x1BA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_scedilla");
+ FAIL;
+#endif
+
+#ifdef XK_tcaron
+ if(test("XK_tcaron", XK_tcaron, 0x1BB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_tcaron");
+ FAIL;
+#endif
+
+#ifdef XK_zacute
+ if(test("XK_zacute", XK_zacute, 0x1BC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_zacute");
+ FAIL;
+#endif
+
+#ifdef XK_doubleacute
+ if(test("XK_doubleacute", XK_doubleacute, 0x1BD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_doubleacute");
+ FAIL;
+#endif
+
+#ifdef XK_zcaron
+ if(test("XK_zcaron", XK_zcaron, 0x1BE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_zcaron");
+ FAIL;
+#endif
+
+#ifdef XK_zabovedot
+ if(test("XK_zabovedot", XK_zabovedot, 0x1BF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_zabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_Racute
+ if(test("XK_Racute", XK_Racute, 0x1C0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Racute");
+ FAIL;
+#endif
+
+#ifdef XK_Abreve
+ if(test("XK_Abreve", XK_Abreve, 0x1C3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Abreve");
+ FAIL;
+#endif
+
+#ifdef XK_Lacute
+ if(test("XK_Lacute", XK_Lacute, 0x1C5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Lacute");
+ FAIL;
+#endif
+
+#ifdef XK_Cacute
+ if(test("XK_Cacute", XK_Cacute, 0x1C6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Cacute");
+ FAIL;
+#endif
+
+#ifdef XK_Ccaron
+ if(test("XK_Ccaron", XK_Ccaron, 0x1C8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ccaron");
+ FAIL;
+#endif
+
+#ifdef XK_Eogonek
+ if(test("XK_Eogonek", XK_Eogonek, 0x1CA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Eogonek");
+ FAIL;
+#endif
+
+#ifdef XK_Ecaron
+ if(test("XK_Ecaron", XK_Ecaron, 0x1CC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ecaron");
+ FAIL;
+#endif
+
+#ifdef XK_Dcaron
+ if(test("XK_Dcaron", XK_Dcaron, 0x1CF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Dcaron");
+ FAIL;
+#endif
+
+#ifdef XK_Dstroke
+ if(test("XK_Dstroke", XK_Dstroke, 0x1D0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Dstroke");
+ FAIL;
+#endif
+
+#ifdef XK_Nacute
+ if(test("XK_Nacute", XK_Nacute, 0x1D1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Nacute");
+ FAIL;
+#endif
+
+#ifdef XK_Ncaron
+ if(test("XK_Ncaron", XK_Ncaron, 0x1D2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ncaron");
+ FAIL;
+#endif
+
+#ifdef XK_Odoubleacute
+ if(test("XK_Odoubleacute", XK_Odoubleacute, 0x1D5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Odoubleacute");
+ FAIL;
+#endif
+
+#ifdef XK_Rcaron
+ if(test("XK_Rcaron", XK_Rcaron, 0x1D8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Rcaron");
+ FAIL;
+#endif
+
+#ifdef XK_Uring
+ if(test("XK_Uring", XK_Uring, 0x1D9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Uring");
+ FAIL;
+#endif
+
+#ifdef XK_Udoubleacute
+ if(test("XK_Udoubleacute", XK_Udoubleacute, 0x1DB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Udoubleacute");
+ FAIL;
+#endif
+
+#ifdef XK_Tcedilla
+ if(test("XK_Tcedilla", XK_Tcedilla, 0x1DE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Tcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_racute
+ if(test("XK_racute", XK_racute, 0x1E0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_racute");
+ FAIL;
+#endif
+
+#ifdef XK_abreve
+ if(test("XK_abreve", XK_abreve, 0x1E3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_abreve");
+ FAIL;
+#endif
+
+#ifdef XK_lacute
+ if(test("XK_lacute", XK_lacute, 0x1E5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_lacute");
+ FAIL;
+#endif
+
+#ifdef XK_cacute
+ if(test("XK_cacute", XK_cacute, 0x1E6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_cacute");
+ FAIL;
+#endif
+
+#ifdef XK_ccaron
+ if(test("XK_ccaron", XK_ccaron, 0x1E8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ccaron");
+ FAIL;
+#endif
+
+#ifdef XK_eogonek
+ if(test("XK_eogonek", XK_eogonek, 0x1EA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_eogonek");
+ FAIL;
+#endif
+
+#ifdef XK_ecaron
+ if(test("XK_ecaron", XK_ecaron, 0x1EC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ecaron");
+ FAIL;
+#endif
+
+#ifdef XK_dcaron
+ if(test("XK_dcaron", XK_dcaron, 0x1EF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_dcaron");
+ FAIL;
+#endif
+
+#ifdef XK_dstroke
+ if(test("XK_dstroke", XK_dstroke, 0x1F0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_dstroke");
+ FAIL;
+#endif
+
+#ifdef XK_nacute
+ if(test("XK_nacute", XK_nacute, 0x1F1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_nacute");
+ FAIL;
+#endif
+
+#ifdef XK_ncaron
+ if(test("XK_ncaron", XK_ncaron, 0x1F2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ncaron");
+ FAIL;
+#endif
+
+#ifdef XK_odoubleacute
+ if(test("XK_odoubleacute", XK_odoubleacute, 0x1F5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_odoubleacute");
+ FAIL;
+#endif
+
+#ifdef XK_rcaron
+ if(test("XK_rcaron", XK_rcaron, 0x1F8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_rcaron");
+ FAIL;
+#endif
+
+#ifdef XK_uring
+ if(test("XK_uring", XK_uring, 0x1F9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_uring");
+ FAIL;
+#endif
+
+#ifdef XK_udoubleacute
+ if(test("XK_udoubleacute", XK_udoubleacute, 0x1FB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_udoubleacute");
+ FAIL;
+#endif
+
+#ifdef XK_tcedilla
+ if(test("XK_tcedilla", XK_tcedilla, 0x1FE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_tcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_abovedot
+ if(test("XK_abovedot", XK_abovedot, 0x1FF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_abovedot");
+ FAIL;
+#endif
+
+
+ CHECKPASS(57);
+}
diff --git a/xts5/Xopen/keysym/Test3.c b/xts5/Xopen/keysym/Test3.c
new file mode 100644
index 00000000..61f2fe70
--- /dev/null
+++ b/xts5/Xopen/keysym/Test3.c
@@ -0,0 +1,344 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/Test3.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/Test3.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: Test3.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:32 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:58:01 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:46 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:19 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:30 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:45 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) Test3.c Rel 1.1 (11/28/91)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysym3()
+{
+int pass = 0, fail = 0;
+#ifdef XK_Hstroke
+ if(test("XK_Hstroke", XK_Hstroke, 0x2A1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hstroke");
+ FAIL;
+#endif
+
+#ifdef XK_Hcircumflex
+ if(test("XK_Hcircumflex", XK_Hcircumflex, 0x2A6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hcircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Iabovedot
+ if(test("XK_Iabovedot", XK_Iabovedot, 0x2A9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Iabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_Gbreve
+ if(test("XK_Gbreve", XK_Gbreve, 0x2AB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Gbreve");
+ FAIL;
+#endif
+
+#ifdef XK_Jcircumflex
+ if(test("XK_Jcircumflex", XK_Jcircumflex, 0x2AC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Jcircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_hstroke
+ if(test("XK_hstroke", XK_hstroke, 0x2B1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_hstroke");
+ FAIL;
+#endif
+
+#ifdef XK_hcircumflex
+ if(test("XK_hcircumflex", XK_hcircumflex, 0x2B6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_hcircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_idotless
+ if(test("XK_idotless", XK_idotless, 0x2B9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_idotless");
+ FAIL;
+#endif
+
+#ifdef XK_gbreve
+ if(test("XK_gbreve", XK_gbreve, 0x2BB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_gbreve");
+ FAIL;
+#endif
+
+#ifdef XK_jcircumflex
+ if(test("XK_jcircumflex", XK_jcircumflex, 0x2BC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_jcircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Cabovedot
+ if(test("XK_Cabovedot", XK_Cabovedot, 0x2C5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Cabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_Ccircumflex
+ if(test("XK_Ccircumflex", XK_Ccircumflex, 0x2C6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ccircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Gabovedot
+ if(test("XK_Gabovedot", XK_Gabovedot, 0x2D5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Gabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_Gcircumflex
+ if(test("XK_Gcircumflex", XK_Gcircumflex, 0x2D8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Gcircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_Ubreve
+ if(test("XK_Ubreve", XK_Ubreve, 0x2DD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ubreve");
+ FAIL;
+#endif
+
+#ifdef XK_Scircumflex
+ if(test("XK_Scircumflex", XK_Scircumflex, 0x2DE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Scircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_cabovedot
+ if(test("XK_cabovedot", XK_cabovedot, 0x2E5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_cabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_ccircumflex
+ if(test("XK_ccircumflex", XK_ccircumflex, 0x2E6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ccircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_gabovedot
+ if(test("XK_gabovedot", XK_gabovedot, 0x2F5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_gabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_gcircumflex
+ if(test("XK_gcircumflex", XK_gcircumflex, 0x2F8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_gcircumflex");
+ FAIL;
+#endif
+
+#ifdef XK_ubreve
+ if(test("XK_ubreve", XK_ubreve, 0x2FD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ubreve");
+ FAIL;
+#endif
+
+#ifdef XK_scircumflex
+ if(test("XK_scircumflex", XK_scircumflex, 0x2FE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_scircumflex");
+ FAIL;
+#endif
+
+
+ CHECKPASS(22);
+}
diff --git a/xts5/Xopen/keysym/Test4.c b/xts5/Xopen/keysym/Test4.c
new file mode 100644
index 00000000..aaeb634e
--- /dev/null
+++ b/xts5/Xopen/keysym/Test4.c
@@ -0,0 +1,484 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/Test4.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/Test4.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: Test4.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:32 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:58:02 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:46 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:20 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:31 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:46 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) Test4.c Rel 1.1 (11/28/91)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysym4()
+{
+int pass = 0, fail = 0;
+#ifdef XK_kra
+ if(test("XK_kra", XK_kra, 0x3A2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_kra");
+ FAIL;
+#endif
+
+#ifdef XK_kappa
+ if(test("XK_kappa", XK_kappa, 0x3A2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_kappa");
+ FAIL;
+#endif
+
+#ifdef XK_Rcedilla
+ if(test("XK_Rcedilla", XK_Rcedilla, 0x3A3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Rcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Itilde
+ if(test("XK_Itilde", XK_Itilde, 0x3A5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Itilde");
+ FAIL;
+#endif
+
+#ifdef XK_Lcedilla
+ if(test("XK_Lcedilla", XK_Lcedilla, 0x3A6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Lcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Emacron
+ if(test("XK_Emacron", XK_Emacron, 0x3AA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Emacron");
+ FAIL;
+#endif
+
+#ifdef XK_Gcedilla
+ if(test("XK_Gcedilla", XK_Gcedilla, 0x3AB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Gcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Tslash
+ if(test("XK_Tslash", XK_Tslash, 0x3AC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Tslash");
+ FAIL;
+#endif
+
+#ifdef XK_rcedilla
+ if(test("XK_rcedilla", XK_rcedilla, 0x3B3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_rcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_itilde
+ if(test("XK_itilde", XK_itilde, 0x3B5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_itilde");
+ FAIL;
+#endif
+
+#ifdef XK_lcedilla
+ if(test("XK_lcedilla", XK_lcedilla, 0x3B6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_lcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_emacron
+ if(test("XK_emacron", XK_emacron, 0x3BA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_emacron");
+ FAIL;
+#endif
+
+#ifdef XK_gcedilla
+ if(test("XK_gcedilla", XK_gcedilla, 0x3BB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_gcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_tslash
+ if(test("XK_tslash", XK_tslash, 0x3BC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_tslash");
+ FAIL;
+#endif
+
+#ifdef XK_ENG
+ if(test("XK_ENG", XK_ENG, 0x3BD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ENG");
+ FAIL;
+#endif
+
+#ifdef XK_eng
+ if(test("XK_eng", XK_eng, 0x3BF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_eng");
+ FAIL;
+#endif
+
+#ifdef XK_Amacron
+ if(test("XK_Amacron", XK_Amacron, 0x3C0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Amacron");
+ FAIL;
+#endif
+
+#ifdef XK_Iogonek
+ if(test("XK_Iogonek", XK_Iogonek, 0x3C7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Iogonek");
+ FAIL;
+#endif
+
+#ifdef XK_Eabovedot
+ if(test("XK_Eabovedot", XK_Eabovedot, 0x3CC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Eabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_Imacron
+ if(test("XK_Imacron", XK_Imacron, 0x3CF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Imacron");
+ FAIL;
+#endif
+
+#ifdef XK_Ncedilla
+ if(test("XK_Ncedilla", XK_Ncedilla, 0x3D1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Ncedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Omacron
+ if(test("XK_Omacron", XK_Omacron, 0x3D2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Omacron");
+ FAIL;
+#endif
+
+#ifdef XK_Kcedilla
+ if(test("XK_Kcedilla", XK_Kcedilla, 0x3D3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Kcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_Uogonek
+ if(test("XK_Uogonek", XK_Uogonek, 0x3D9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Uogonek");
+ FAIL;
+#endif
+
+#ifdef XK_Utilde
+ if(test("XK_Utilde", XK_Utilde, 0x3DD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Utilde");
+ FAIL;
+#endif
+
+#ifdef XK_Umacron
+ if(test("XK_Umacron", XK_Umacron, 0x3DE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Umacron");
+ FAIL;
+#endif
+
+#ifdef XK_amacron
+ if(test("XK_amacron", XK_amacron, 0x3E0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_amacron");
+ FAIL;
+#endif
+
+#ifdef XK_iogonek
+ if(test("XK_iogonek", XK_iogonek, 0x3E7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_iogonek");
+ FAIL;
+#endif
+
+#ifdef XK_eabovedot
+ if(test("XK_eabovedot", XK_eabovedot, 0x3EC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_eabovedot");
+ FAIL;
+#endif
+
+#ifdef XK_imacron
+ if(test("XK_imacron", XK_imacron, 0x3EF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_imacron");
+ FAIL;
+#endif
+
+#ifdef XK_ncedilla
+ if(test("XK_ncedilla", XK_ncedilla, 0x3F1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_ncedilla");
+ FAIL;
+#endif
+
+#ifdef XK_omacron
+ if(test("XK_omacron", XK_omacron, 0x3F2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_omacron");
+ FAIL;
+#endif
+
+#ifdef XK_kcedilla
+ if(test("XK_kcedilla", XK_kcedilla, 0x3F3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_kcedilla");
+ FAIL;
+#endif
+
+#ifdef XK_uogonek
+ if(test("XK_uogonek", XK_uogonek, 0x3F9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_uogonek");
+ FAIL;
+#endif
+
+#ifdef XK_utilde
+ if(test("XK_utilde", XK_utilde, 0x3FD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_utilde");
+ FAIL;
+#endif
+
+#ifdef XK_umacron
+ if(test("XK_umacron", XK_umacron, 0x3FE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_umacron");
+ FAIL;
+#endif
+
+
+ CHECKPASS(36);
+}
diff --git a/xts5/Xopen/keysym/TestG.c b/xts5/Xopen/keysym/TestG.c
new file mode 100644
index 00000000..9b45e33a
--- /dev/null
+++ b/xts5/Xopen/keysym/TestG.c
@@ -0,0 +1,864 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/TestG.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/TestG.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: TestG.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:33 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:58:04 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:47 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:20 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:32 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:48 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) TestG.c Rel 1.1 (11/28/91)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysymG()
+{
+int pass = 0, fail = 0;
+#ifdef XK_Greek_ALPHAaccent
+ if(test("XK_Greek_ALPHAaccent", XK_Greek_ALPHAaccent, 0x7A1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_ALPHAaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_EPSILONaccent
+ if(test("XK_Greek_EPSILONaccent", XK_Greek_EPSILONaccent, 0x7A2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_EPSILONaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_ETAaccent
+ if(test("XK_Greek_ETAaccent", XK_Greek_ETAaccent, 0x7A3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_ETAaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_IOTAaccent
+ if(test("XK_Greek_IOTAaccent", XK_Greek_IOTAaccent, 0x7A4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_IOTAaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_IOTAdiaeresis
+ if(test("XK_Greek_IOTAdiaeresis", XK_Greek_IOTAdiaeresis, 0x7A5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_IOTAdiaeresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_OMICRONaccent
+ if(test("XK_Greek_OMICRONaccent", XK_Greek_OMICRONaccent, 0x7A7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_OMICRONaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_UPSILONaccent
+ if(test("XK_Greek_UPSILONaccent", XK_Greek_UPSILONaccent, 0x7A8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_UPSILONaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_UPSILONdieresis
+ if(test("XK_Greek_UPSILONdieresis", XK_Greek_UPSILONdieresis, 0x7A9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_UPSILONdieresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_OMEGAaccent
+ if(test("XK_Greek_OMEGAaccent", XK_Greek_OMEGAaccent, 0x7AB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_OMEGAaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_accentdieresis
+ if(test("XK_Greek_accentdieresis", XK_Greek_accentdieresis, 0x7AE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_accentdieresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_horizbar
+ if(test("XK_Greek_horizbar", XK_Greek_horizbar, 0x7AF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_horizbar");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_alphaaccent
+ if(test("XK_Greek_alphaaccent", XK_Greek_alphaaccent, 0x7B1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_alphaaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_epsilonaccent
+ if(test("XK_Greek_epsilonaccent", XK_Greek_epsilonaccent, 0x7B2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_epsilonaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_etaaccent
+ if(test("XK_Greek_etaaccent", XK_Greek_etaaccent, 0x7B3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_etaaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_iotaaccent
+ if(test("XK_Greek_iotaaccent", XK_Greek_iotaaccent, 0x7B4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_iotaaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_iotadieresis
+ if(test("XK_Greek_iotadieresis", XK_Greek_iotadieresis, 0x7B5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_iotadieresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_iotaaccentdieresis
+ if(test("XK_Greek_iotaaccentdieresis", XK_Greek_iotaaccentdieresis, 0x7B6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_iotaaccentdieresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_omicronaccent
+ if(test("XK_Greek_omicronaccent", XK_Greek_omicronaccent, 0x7B7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_omicronaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_upsilonaccent
+ if(test("XK_Greek_upsilonaccent", XK_Greek_upsilonaccent, 0x7B8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_upsilonaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_upsilondieresis
+ if(test("XK_Greek_upsilondieresis", XK_Greek_upsilondieresis, 0x7B9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_upsilondieresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_upsilonaccentdieresis
+ if(test("XK_Greek_upsilonaccentdieresis", XK_Greek_upsilonaccentdieresis, 0x7BA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_upsilonaccentdieresis");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_omegaaccent
+ if(test("XK_Greek_omegaaccent", XK_Greek_omegaaccent, 0x7BB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_omegaaccent");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_ALPHA
+ if(test("XK_Greek_ALPHA", XK_Greek_ALPHA, 0x7C1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_ALPHA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_BETA
+ if(test("XK_Greek_BETA", XK_Greek_BETA, 0x7C2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_BETA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_GAMMA
+ if(test("XK_Greek_GAMMA", XK_Greek_GAMMA, 0x7C3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_GAMMA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_DELTA
+ if(test("XK_Greek_DELTA", XK_Greek_DELTA, 0x7C4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_DELTA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_EPSILON
+ if(test("XK_Greek_EPSILON", XK_Greek_EPSILON, 0x7C5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_EPSILON");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_ZETA
+ if(test("XK_Greek_ZETA", XK_Greek_ZETA, 0x7C6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_ZETA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_ETA
+ if(test("XK_Greek_ETA", XK_Greek_ETA, 0x7C7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_ETA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_THETA
+ if(test("XK_Greek_THETA", XK_Greek_THETA, 0x7C8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_THETA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_IOTA
+ if(test("XK_Greek_IOTA", XK_Greek_IOTA, 0x7C9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_IOTA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_KAPPA
+ if(test("XK_Greek_KAPPA", XK_Greek_KAPPA, 0x7CA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_KAPPA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_LAMBDA
+ if(test("XK_Greek_LAMBDA", XK_Greek_LAMBDA, 0x7CB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_LAMBDA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_LAMDA
+ if(test("XK_Greek_LAMDA", XK_Greek_LAMDA, 0x7CB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_LAMDA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_MU
+ if(test("XK_Greek_MU", XK_Greek_MU, 0x7CC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_MU");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_NU
+ if(test("XK_Greek_NU", XK_Greek_NU, 0x7CD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_NU");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_XI
+ if(test("XK_Greek_XI", XK_Greek_XI, 0x7CE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_XI");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_OMICRON
+ if(test("XK_Greek_OMICRON", XK_Greek_OMICRON, 0x7CF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_OMICRON");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_PI
+ if(test("XK_Greek_PI", XK_Greek_PI, 0x7D0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_PI");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_RHO
+ if(test("XK_Greek_RHO", XK_Greek_RHO, 0x7D1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_RHO");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_SIGMA
+ if(test("XK_Greek_SIGMA", XK_Greek_SIGMA, 0x7D2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_SIGMA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_TAU
+ if(test("XK_Greek_TAU", XK_Greek_TAU, 0x7D4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_TAU");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_UPSILON
+ if(test("XK_Greek_UPSILON", XK_Greek_UPSILON, 0x7D5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_UPSILON");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_PHI
+ if(test("XK_Greek_PHI", XK_Greek_PHI, 0x7D6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_PHI");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_CHI
+ if(test("XK_Greek_CHI", XK_Greek_CHI, 0x7D7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_CHI");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_PSI
+ if(test("XK_Greek_PSI", XK_Greek_PSI, 0x7D8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_PSI");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_OMEGA
+ if(test("XK_Greek_OMEGA", XK_Greek_OMEGA, 0x7D9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_OMEGA");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_alpha
+ if(test("XK_Greek_alpha", XK_Greek_alpha, 0x7E1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_alpha");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_beta
+ if(test("XK_Greek_beta", XK_Greek_beta, 0x7E2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_beta");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_gamma
+ if(test("XK_Greek_gamma", XK_Greek_gamma, 0x7E3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_gamma");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_delta
+ if(test("XK_Greek_delta", XK_Greek_delta, 0x7E4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_delta");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_epsilon
+ if(test("XK_Greek_epsilon", XK_Greek_epsilon, 0x7E5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_epsilon");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_zeta
+ if(test("XK_Greek_zeta", XK_Greek_zeta, 0x7E6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_zeta");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_eta
+ if(test("XK_Greek_eta", XK_Greek_eta, 0x7E7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_eta");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_theta
+ if(test("XK_Greek_theta", XK_Greek_theta, 0x7E8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_theta");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_iota
+ if(test("XK_Greek_iota", XK_Greek_iota, 0x7E9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_iota");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_kappa
+ if(test("XK_Greek_kappa", XK_Greek_kappa, 0x7EA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_kappa");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_lambda
+ if(test("XK_Greek_lambda", XK_Greek_lambda, 0x7EB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_lambda");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_lamda
+ if(test("XK_Greek_lamda", XK_Greek_lamda, 0x7EB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_lamda");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_mu
+ if(test("XK_Greek_mu", XK_Greek_mu, 0x7EC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_mu");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_nu
+ if(test("XK_Greek_nu", XK_Greek_nu, 0x7ED) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_nu");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_xi
+ if(test("XK_Greek_xi", XK_Greek_xi, 0x7EE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_xi");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_omicron
+ if(test("XK_Greek_omicron", XK_Greek_omicron, 0x7EF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_omicron");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_pi
+ if(test("XK_Greek_pi", XK_Greek_pi, 0x7F0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_pi");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_rho
+ if(test("XK_Greek_rho", XK_Greek_rho, 0x7F1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_rho");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_sigma
+ if(test("XK_Greek_sigma", XK_Greek_sigma, 0x7F2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_sigma");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_finalsmallsigma
+ if(test("XK_Greek_finalsmallsigma", XK_Greek_finalsmallsigma, 0x7F3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_finalsmallsigma");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_tau
+ if(test("XK_Greek_tau", XK_Greek_tau, 0x7F4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_tau");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_upsilon
+ if(test("XK_Greek_upsilon", XK_Greek_upsilon, 0x7F5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_upsilon");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_phi
+ if(test("XK_Greek_phi", XK_Greek_phi, 0x7F6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_phi");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_chi
+ if(test("XK_Greek_chi", XK_Greek_chi, 0x7F7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_chi");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_psi
+ if(test("XK_Greek_psi", XK_Greek_psi, 0x7F8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_psi");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_omega
+ if(test("XK_Greek_omega", XK_Greek_omega, 0x7F9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_omega");
+ FAIL;
+#endif
+
+#ifdef XK_Greek_switch
+ if(test("XK_Greek_switch", XK_Greek_switch, 0xFF7E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Greek_switch");
+ FAIL;
+#endif
+
+
+ CHECKPASS(74);
+}
diff --git a/xts5/Xopen/keysym/TestM.c b/xts5/Xopen/keysym/TestM.c
new file mode 100644
index 00000000..c6e0f847
--- /dev/null
+++ b/xts5/Xopen/keysym/TestM.c
@@ -0,0 +1,1604 @@
+/*
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+/*
+* $Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/TestM.c,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+*
+* Project: VSW5
+*
+* File: xts5/tset/Xopen/keysym/TestM.c
+*
+* Description:
+* Tests for keysym()
+*
+* Modifications:
+* $Log: TestM.c,v $
+* Revision 1.2 2005-11-03 08:44:00 jmichael
+* clean up all vsw5 paths to use xts5 instead.
+*
+* Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+* Reimport of the base with the legal name in the copyright fixed.
+*
+* Revision 8.0 1998/12/23 23:35:33 mar
+* Branch point for Release 5.0.2
+*
+* Revision 7.0 1998/10/30 22:58:06 mar
+* Branch point for Release 5.0.2b1
+*
+* Revision 6.0 1998/03/02 05:26:47 tbr
+* Branch point for Release 5.0.1
+*
+* Revision 5.0 1998/01/26 03:23:21 tbr
+* Branch point for Release 5.0.1b1
+*
+* Revision 4.1 1996/05/09 21:14:55 andy
+* Fixed X includes
+*
+* Revision 4.0 1995/12/15 09:13:34 tbr
+* Branch point for Release 5.0.0
+*
+* Revision 3.1 1995/12/15 01:16:50 andy
+* Prepare for GA Release
+*
+*/
+/*
+ * SCCS: @(#) TestM.c Rel 1.1 (11/28/91)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "xtest.h"
+#include "X11/Xlib.h"
+#include "X11/Xutil.h"
+#include "X11/Xresource.h"
+#include "tet_api.h"
+#include "xtestlib.h"
+#include "pixval.h"
+
+extern char *TestName;
+
+static int
+test(name, val, aval)
+char *name;
+int val;
+int aval;
+{
+
+ if(val != aval) {
+ report("KeySym \"%s\" is defined to have value 0x%x instead of 0x%x.", name, val, aval);
+ return(0);
+ }
+ return(1);
+}
+
+
+
+static void
+reporterr(s)
+char *s;
+{
+ report("Keysym \"%s\" is not defined.", s);
+}
+
+#include <X11/keysym.h>
+
+kysymM()
+{
+int pass = 0, fail = 0;
+#ifdef XK_BackSpace
+ if(test("XK_BackSpace", XK_BackSpace, 0xFF08) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_BackSpace");
+ FAIL;
+#endif
+
+#ifdef XK_Tab
+ if(test("XK_Tab", XK_Tab, 0xFF09) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Tab");
+ FAIL;
+#endif
+
+#ifdef XK_Linefeed
+ if(test("XK_Linefeed", XK_Linefeed, 0xFF0A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Linefeed");
+ FAIL;
+#endif
+
+#ifdef XK_Clear
+ if(test("XK_Clear", XK_Clear, 0xFF0B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Clear");
+ FAIL;
+#endif
+
+#ifdef XK_Return
+ if(test("XK_Return", XK_Return, 0xFF0D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Return");
+ FAIL;
+#endif
+
+#ifdef XK_Pause
+ if(test("XK_Pause", XK_Pause, 0xFF13) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Pause");
+ FAIL;
+#endif
+
+#ifdef XK_Scroll_Lock
+ if(test("XK_Scroll_Lock", XK_Scroll_Lock, 0xFF14) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Scroll_Lock");
+ FAIL;
+#endif
+
+#ifdef XK_Escape
+ if(test("XK_Escape", XK_Escape, 0xFF1B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Escape");
+ FAIL;
+#endif
+
+#ifdef XK_Multi_key
+ if(test("XK_Multi_key", XK_Multi_key, 0xFF20) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Multi_key");
+ FAIL;
+#endif
+
+#ifdef XK_Kanji
+ if(test("XK_Kanji", XK_Kanji, 0xFF21) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Kanji");
+ FAIL;
+#endif
+
+#ifdef XK_Muhenkan
+ if(test("XK_Muhenkan", XK_Muhenkan, 0xFF22) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Muhenkan");
+ FAIL;
+#endif
+
+#ifdef XK_Henkan
+ if(test("XK_Henkan", XK_Henkan, 0xFF23) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Henkan");
+ FAIL;
+#endif
+
+#ifdef XK_Henkan_Mode
+ if(test("XK_Henkan_Mode", XK_Henkan_Mode, 0xFF23) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Henkan_Mode");
+ FAIL;
+#endif
+
+#ifdef XK_Romaji
+ if(test("XK_Romaji", XK_Romaji, 0xFF24) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Romaji");
+ FAIL;
+#endif
+
+#ifdef XK_Hiragana
+ if(test("XK_Hiragana", XK_Hiragana, 0xFF25) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hiragana");
+ FAIL;
+#endif
+
+#ifdef XK_Katakana
+ if(test("XK_Katakana", XK_Katakana, 0xFF26) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Katakana");
+ FAIL;
+#endif
+
+#ifdef XK_Hiragana_Katakana
+ if(test("XK_Hiragana_Katakana", XK_Hiragana_Katakana, 0xFF27) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hiragana_Katakana");
+ FAIL;
+#endif
+
+#ifdef XK_Zenkaku
+ if(test("XK_Zenkaku", XK_Zenkaku, 0xFF28) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Zenkaku");
+ FAIL;
+#endif
+
+#ifdef XK_Hankaku
+ if(test("XK_Hankaku", XK_Hankaku, 0xFF29) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hankaku");
+ FAIL;
+#endif
+
+#ifdef XK_Zenkaku_Hankaku
+ if(test("XK_Zenkaku_Hankaku", XK_Zenkaku_Hankaku, 0xFF2A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Zenkaku_Hankaku");
+ FAIL;
+#endif
+
+#ifdef XK_Touroku
+ if(test("XK_Touroku", XK_Touroku, 0xFF2B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Touroku");
+ FAIL;
+#endif
+
+#ifdef XK_Massyo
+ if(test("XK_Massyo", XK_Massyo, 0xFF2C) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Massyo");
+ FAIL;
+#endif
+
+#ifdef XK_Kana_Lock
+ if(test("XK_Kana_Lock", XK_Kana_Lock, 0xFF2D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Kana_Lock");
+ FAIL;
+#endif
+
+#ifdef XK_Kana_Shift
+ if(test("XK_Kana_Shift", XK_Kana_Shift, 0xFF2E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Kana_Shift");
+ FAIL;
+#endif
+
+#ifdef XK_Eisu_Shift
+ if(test("XK_Eisu_Shift", XK_Eisu_Shift, 0xFF2F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Eisu_Shift");
+ FAIL;
+#endif
+
+#ifdef XK_Eisu_toggle
+ if(test("XK_Eisu_toggle", XK_Eisu_toggle, 0xFF30) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Eisu_toggle");
+ FAIL;
+#endif
+
+#ifdef XK_Home
+ if(test("XK_Home", XK_Home, 0xFF50) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Home");
+ FAIL;
+#endif
+
+#ifdef XK_Left
+ if(test("XK_Left", XK_Left, 0xFF51) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Left");
+ FAIL;
+#endif
+
+#ifdef XK_Up
+ if(test("XK_Up", XK_Up, 0xFF52) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Up");
+ FAIL;
+#endif
+
+#ifdef XK_Right
+ if(test("XK_Right", XK_Right, 0xFF53) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Right");
+ FAIL;
+#endif
+
+#ifdef XK_Down
+ if(test("XK_Down", XK_Down, 0xFF54) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Down");
+ FAIL;
+#endif
+
+#ifdef XK_Prior
+ if(test("XK_Prior", XK_Prior, 0xFF55) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Prior");
+ FAIL;
+#endif
+
+#ifdef XK_Next
+ if(test("XK_Next", XK_Next, 0xFF56) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Next");
+ FAIL;
+#endif
+
+#ifdef XK_End
+ if(test("XK_End", XK_End, 0xFF57) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_End");
+ FAIL;
+#endif
+
+#ifdef XK_Begin
+ if(test("XK_Begin", XK_Begin, 0xFF58) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Begin");
+ FAIL;
+#endif
+
+#ifdef XK_Select
+ if(test("XK_Select", XK_Select, 0xFF60) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Select");
+ FAIL;
+#endif
+
+#ifdef XK_Print
+ if(test("XK_Print", XK_Print, 0xFF61) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Print");
+ FAIL;
+#endif
+
+#ifdef XK_Execute
+ if(test("XK_Execute", XK_Execute, 0xFF62) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Execute");
+ FAIL;
+#endif
+
+#ifdef XK_Insert
+ if(test("XK_Insert", XK_Insert, 0xFF63) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Insert");
+ FAIL;
+#endif
+
+#ifdef XK_Undo
+ if(test("XK_Undo", XK_Undo, 0xFF65) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Undo");
+ FAIL;
+#endif
+
+#ifdef XK_Redo
+ if(test("XK_Redo", XK_Redo, 0xFF66) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Redo");
+ FAIL;
+#endif
+
+#ifdef XK_Menu
+ if(test("XK_Menu", XK_Menu, 0xFF67) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Menu");
+ FAIL;
+#endif
+
+#ifdef XK_Find
+ if(test("XK_Find", XK_Find, 0xFF68) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Find");
+ FAIL;
+#endif
+
+#ifdef XK_Cancel
+ if(test("XK_Cancel", XK_Cancel, 0xFF69) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Cancel");
+ FAIL;
+#endif
+
+#ifdef XK_Help
+ if(test("XK_Help", XK_Help, 0xFF6A) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Help");
+ FAIL;
+#endif
+
+#ifdef XK_Break
+ if(test("XK_Break", XK_Break, 0xFF6B) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Break");
+ FAIL;
+#endif
+
+#ifdef XK_Mode_switch
+ if(test("XK_Mode_switch", XK_Mode_switch, 0xFF7E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Mode_switch");
+ FAIL;
+#endif
+
+#ifdef XK_script_switch
+ if(test("XK_script_switch", XK_script_switch, 0xFF7E) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_script_switch");
+ FAIL;
+#endif
+
+#ifdef XK_Num_Lock
+ if(test("XK_Num_Lock", XK_Num_Lock, 0xFF7F) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Num_Lock");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Space
+ if(test("XK_KP_Space", XK_KP_Space, 0xFF80) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Space");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Tab
+ if(test("XK_KP_Tab", XK_KP_Tab, 0xFF89) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Tab");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Enter
+ if(test("XK_KP_Enter", XK_KP_Enter, 0xFF8D) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Enter");
+ FAIL;
+#endif
+
+#ifdef XK_KP_F1
+ if(test("XK_KP_F1", XK_KP_F1, 0xFF91) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_F1");
+ FAIL;
+#endif
+
+#ifdef XK_KP_F2
+ if(test("XK_KP_F2", XK_KP_F2, 0xFF92) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_F2");
+ FAIL;
+#endif
+
+#ifdef XK_KP_F3
+ if(test("XK_KP_F3", XK_KP_F3, 0xFF93) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_F3");
+ FAIL;
+#endif
+
+#ifdef XK_KP_F4
+ if(test("XK_KP_F4", XK_KP_F4, 0xFF94) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_F4");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Multiply
+ if(test("XK_KP_Multiply", XK_KP_Multiply, 0xFFAA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Multiply");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Add
+ if(test("XK_KP_Add", XK_KP_Add, 0xFFAB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Add");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Separator
+ if(test("XK_KP_Separator", XK_KP_Separator, 0xFFAC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Separator");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Subtract
+ if(test("XK_KP_Subtract", XK_KP_Subtract, 0xFFAD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Subtract");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Decimal
+ if(test("XK_KP_Decimal", XK_KP_Decimal, 0xFFAE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Decimal");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Divide
+ if(test("XK_KP_Divide", XK_KP_Divide, 0xFFAF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Divide");
+ FAIL;
+#endif
+
+#ifdef XK_KP_0
+ if(test("XK_KP_0", XK_KP_0, 0xFFB0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_0");
+ FAIL;
+#endif
+
+#ifdef XK_KP_1
+ if(test("XK_KP_1", XK_KP_1, 0xFFB1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_1");
+ FAIL;
+#endif
+
+#ifdef XK_KP_2
+ if(test("XK_KP_2", XK_KP_2, 0xFFB2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_2");
+ FAIL;
+#endif
+
+#ifdef XK_KP_3
+ if(test("XK_KP_3", XK_KP_3, 0xFFB3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_3");
+ FAIL;
+#endif
+
+#ifdef XK_KP_4
+ if(test("XK_KP_4", XK_KP_4, 0xFFB4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_4");
+ FAIL;
+#endif
+
+#ifdef XK_KP_5
+ if(test("XK_KP_5", XK_KP_5, 0xFFB5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_5");
+ FAIL;
+#endif
+
+#ifdef XK_KP_6
+ if(test("XK_KP_6", XK_KP_6, 0xFFB6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_6");
+ FAIL;
+#endif
+
+#ifdef XK_KP_7
+ if(test("XK_KP_7", XK_KP_7, 0xFFB7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_7");
+ FAIL;
+#endif
+
+#ifdef XK_KP_8
+ if(test("XK_KP_8", XK_KP_8, 0xFFB8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_8");
+ FAIL;
+#endif
+
+#ifdef XK_KP_9
+ if(test("XK_KP_9", XK_KP_9, 0xFFB9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_9");
+ FAIL;
+#endif
+
+#ifdef XK_KP_Equal
+ if(test("XK_KP_Equal", XK_KP_Equal, 0xFFBD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_KP_Equal");
+ FAIL;
+#endif
+
+#ifdef XK_F1
+ if(test("XK_F1", XK_F1, 0xFFBE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F1");
+ FAIL;
+#endif
+
+#ifdef XK_F2
+ if(test("XK_F2", XK_F2, 0xFFBF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F2");
+ FAIL;
+#endif
+
+#ifdef XK_F3
+ if(test("XK_F3", XK_F3, 0xFFC0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F3");
+ FAIL;
+#endif
+
+#ifdef XK_F4
+ if(test("XK_F4", XK_F4, 0xFFC1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F4");
+ FAIL;
+#endif
+
+#ifdef XK_F5
+ if(test("XK_F5", XK_F5, 0xFFC2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F5");
+ FAIL;
+#endif
+
+#ifdef XK_F6
+ if(test("XK_F6", XK_F6, 0xFFC3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F6");
+ FAIL;
+#endif
+
+#ifdef XK_F7
+ if(test("XK_F7", XK_F7, 0xFFC4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F7");
+ FAIL;
+#endif
+
+#ifdef XK_F8
+ if(test("XK_F8", XK_F8, 0xFFC5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F8");
+ FAIL;
+#endif
+
+#ifdef XK_F9
+ if(test("XK_F9", XK_F9, 0xFFC6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F9");
+ FAIL;
+#endif
+
+#ifdef XK_F10
+ if(test("XK_F10", XK_F10, 0xFFC7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F10");
+ FAIL;
+#endif
+
+#ifdef XK_F11
+ if(test("XK_F11", XK_F11, 0xFFC8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F11");
+ FAIL;
+#endif
+
+#ifdef XK_L1
+ if(test("XK_L1", XK_L1, 0xFFC8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L1");
+ FAIL;
+#endif
+
+#ifdef XK_F12
+ if(test("XK_F12", XK_F12, 0xFFC9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F12");
+ FAIL;
+#endif
+
+#ifdef XK_L2
+ if(test("XK_L2", XK_L2, 0xFFC9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L2");
+ FAIL;
+#endif
+
+#ifdef XK_F13
+ if(test("XK_F13", XK_F13, 0xFFCA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F13");
+ FAIL;
+#endif
+
+#ifdef XK_L3
+ if(test("XK_L3", XK_L3, 0xFFCA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L3");
+ FAIL;
+#endif
+
+#ifdef XK_F14
+ if(test("XK_F14", XK_F14, 0xFFCB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F14");
+ FAIL;
+#endif
+
+#ifdef XK_L4
+ if(test("XK_L4", XK_L4, 0xFFCB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L4");
+ FAIL;
+#endif
+
+#ifdef XK_F15
+ if(test("XK_F15", XK_F15, 0xFFCC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F15");
+ FAIL;
+#endif
+
+#ifdef XK_L5
+ if(test("XK_L5", XK_L5, 0xFFCC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L5");
+ FAIL;
+#endif
+
+#ifdef XK_F16
+ if(test("XK_F16", XK_F16, 0xFFCD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F16");
+ FAIL;
+#endif
+
+#ifdef XK_L6
+ if(test("XK_L6", XK_L6, 0xFFCD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L6");
+ FAIL;
+#endif
+
+#ifdef XK_F17
+ if(test("XK_F17", XK_F17, 0xFFCE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F17");
+ FAIL;
+#endif
+
+#ifdef XK_L7
+ if(test("XK_L7", XK_L7, 0xFFCE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L7");
+ FAIL;
+#endif
+
+#ifdef XK_F18
+ if(test("XK_F18", XK_F18, 0xFFCF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F18");
+ FAIL;
+#endif
+
+#ifdef XK_L8
+ if(test("XK_L8", XK_L8, 0xFFCF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L8");
+ FAIL;
+#endif
+
+#ifdef XK_F19
+ if(test("XK_F19", XK_F19, 0xFFD0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F19");
+ FAIL;
+#endif
+
+#ifdef XK_L9
+ if(test("XK_L9", XK_L9, 0xFFD0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L9");
+ FAIL;
+#endif
+
+#ifdef XK_F20
+ if(test("XK_F20", XK_F20, 0xFFD1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F20");
+ FAIL;
+#endif
+
+#ifdef XK_L10
+ if(test("XK_L10", XK_L10, 0xFFD1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_L10");
+ FAIL;
+#endif
+
+#ifdef XK_F21
+ if(test("XK_F21", XK_F21, 0xFFD2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F21");
+ FAIL;
+#endif
+
+#ifdef XK_R1
+ if(test("XK_R1", XK_R1, 0xFFD2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R1");
+ FAIL;
+#endif
+
+#ifdef XK_F22
+ if(test("XK_F22", XK_F22, 0xFFD3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F22");
+ FAIL;
+#endif
+
+#ifdef XK_R2
+ if(test("XK_R2", XK_R2, 0xFFD3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R2");
+ FAIL;
+#endif
+
+#ifdef XK_F23
+ if(test("XK_F23", XK_F23, 0xFFD4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F23");
+ FAIL;
+#endif
+
+#ifdef XK_R3
+ if(test("XK_R3", XK_R3, 0xFFD4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R3");
+ FAIL;
+#endif
+
+#ifdef XK_F24
+ if(test("XK_F24", XK_F24, 0xFFD5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F24");
+ FAIL;
+#endif
+
+#ifdef XK_R4
+ if(test("XK_R4", XK_R4, 0xFFD5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R4");
+ FAIL;
+#endif
+
+#ifdef XK_F25
+ if(test("XK_F25", XK_F25, 0xFFD6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F25");
+ FAIL;
+#endif
+
+#ifdef XK_R5
+ if(test("XK_R5", XK_R5, 0xFFD6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R5");
+ FAIL;
+#endif
+
+#ifdef XK_F26
+ if(test("XK_F26", XK_F26, 0xFFD7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F26");
+ FAIL;
+#endif
+
+#ifdef XK_R6
+ if(test("XK_R6", XK_R6, 0xFFD7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R6");
+ FAIL;
+#endif
+
+#ifdef XK_F27
+ if(test("XK_F27", XK_F27, 0xFFD8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F27");
+ FAIL;
+#endif
+
+#ifdef XK_R7
+ if(test("XK_R7", XK_R7, 0xFFD8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R7");
+ FAIL;
+#endif
+
+#ifdef XK_F28
+ if(test("XK_F28", XK_F28, 0xFFD9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F28");
+ FAIL;
+#endif
+
+#ifdef XK_R8
+ if(test("XK_R8", XK_R8, 0xFFD9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R8");
+ FAIL;
+#endif
+
+#ifdef XK_F29
+ if(test("XK_F29", XK_F29, 0xFFDA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F29");
+ FAIL;
+#endif
+
+#ifdef XK_R9
+ if(test("XK_R9", XK_R9, 0xFFDA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R9");
+ FAIL;
+#endif
+
+#ifdef XK_F30
+ if(test("XK_F30", XK_F30, 0xFFDB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F30");
+ FAIL;
+#endif
+
+#ifdef XK_R10
+ if(test("XK_R10", XK_R10, 0xFFDB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R10");
+ FAIL;
+#endif
+
+#ifdef XK_F31
+ if(test("XK_F31", XK_F31, 0xFFDC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F31");
+ FAIL;
+#endif
+
+#ifdef XK_R11
+ if(test("XK_R11", XK_R11, 0xFFDC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R11");
+ FAIL;
+#endif
+
+#ifdef XK_F32
+ if(test("XK_F32", XK_F32, 0xFFDD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F32");
+ FAIL;
+#endif
+
+#ifdef XK_R12
+ if(test("XK_R12", XK_R12, 0xFFDD) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R12");
+ FAIL;
+#endif
+
+#ifdef XK_F33
+ if(test("XK_F33", XK_F33, 0xFFDE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F33");
+ FAIL;
+#endif
+
+#ifdef XK_R13
+ if(test("XK_R13", XK_R13, 0xFFDE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R13");
+ FAIL;
+#endif
+
+#ifdef XK_F34
+ if(test("XK_F34", XK_F34, 0xFFDF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F34");
+ FAIL;
+#endif
+
+#ifdef XK_R14
+ if(test("XK_R14", XK_R14, 0xFFDF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R14");
+ FAIL;
+#endif
+
+#ifdef XK_F35
+ if(test("XK_F35", XK_F35, 0xFFE0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_F35");
+ FAIL;
+#endif
+
+#ifdef XK_R15
+ if(test("XK_R15", XK_R15, 0xFFE0) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_R15");
+ FAIL;
+#endif
+
+#ifdef XK_Shift_L
+ if(test("XK_Shift_L", XK_Shift_L, 0xFFE1) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Shift_L");
+ FAIL;
+#endif
+
+#ifdef XK_Shift_R
+ if(test("XK_Shift_R", XK_Shift_R, 0xFFE2) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Shift_R");
+ FAIL;
+#endif
+
+#ifdef XK_Control_L
+ if(test("XK_Control_L", XK_Control_L, 0xFFE3) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Control_L");
+ FAIL;
+#endif
+
+#ifdef XK_Control_R
+ if(test("XK_Control_R", XK_Control_R, 0xFFE4) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Control_R");
+ FAIL;
+#endif
+
+#ifdef XK_Caps_Lock
+ if(test("XK_Caps_Lock", XK_Caps_Lock, 0xFFE5) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Caps_Lock");
+ FAIL;
+#endif
+
+#ifdef XK_Shift_Lock
+ if(test("XK_Shift_Lock", XK_Shift_Lock, 0xFFE6) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Shift_Lock");
+ FAIL;
+#endif
+
+#ifdef XK_Meta_L
+ if(test("XK_Meta_L", XK_Meta_L, 0xFFE7) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Meta_L");
+ FAIL;
+#endif
+
+#ifdef XK_Meta_R
+ if(test("XK_Meta_R", XK_Meta_R, 0xFFE8) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Meta_R");
+ FAIL;
+#endif
+
+#ifdef XK_Alt_L
+ if(test("XK_Alt_L", XK_Alt_L, 0xFFE9) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Alt_L");
+ FAIL;
+#endif
+
+#ifdef XK_Alt_R
+ if(test("XK_Alt_R", XK_Alt_R, 0xFFEA) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Alt_R");
+ FAIL;
+#endif
+
+#ifdef XK_Super_L
+ if(test("XK_Super_L", XK_Super_L, 0xFFEB) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Super_L");
+ FAIL;
+#endif
+
+#ifdef XK_Super_R
+ if(test("XK_Super_R", XK_Super_R, 0xFFEC) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Super_R");
+ FAIL;
+#endif
+
+#ifdef XK_Hyper_L
+ if(test("XK_Hyper_L", XK_Hyper_L, 0xFFED) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hyper_L");
+ FAIL;
+#endif
+
+#ifdef XK_Hyper_R
+ if(test("XK_Hyper_R", XK_Hyper_R, 0xFFEE) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Hyper_R");
+ FAIL;
+#endif
+
+#ifdef XK_Delete
+ if(test("XK_Delete", XK_Delete, 0xFFFF) == 0)
+ FAIL;
+ else
+ CHECK;
+#else
+ reporterr("XK_Delete");
+ FAIL;
+#endif
+
+
+ CHECKPASS(148);
+}
diff --git a/xts5/Xopen/keysym/keysym.m b/xts5/Xopen/keysym/keysym.m
new file mode 100644
index 00000000..1280c4ee
--- /dev/null
+++ b/xts5/Xopen/keysym/keysym.m
@@ -0,0 +1,702 @@
+Copyright (c) 2005 X.Org Foundation L.L.C.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+$Header: /cvs/xtest/xtest/xts5/tset/Xopen/keysym/keysym.m,v 1.2 2005-11-03 08:44:00 jmichael Exp $
+
+>># Project: VSW5
+>>#
+>># File: xts5/tset/Xopen/keysym/keysym.m
+>>#
+>># Description:
+>># Tests for keysym()
+>>#
+>># Modifications:
+>># $Log: kysym.m,v $
+>># Revision 1.2 2005-11-03 08:44:00 jmichael
+>># clean up all vsw5 paths to use xts5 instead.
+>>#
+>># Revision 1.1.1.2 2005/04/15 14:05:40 anderson
+>># Reimport of the base with the legal name in the copyright fixed.
+>>#
+>># Revision 8.0 1998/12/23 23:35:34 mar
+>># Branch point for Release 5.0.2
+>>#
+>># Revision 7.0 1998/10/30 22:58:07 mar
+>># Branch point for Release 5.0.2b1
+>>#
+>># Revision 6.0 1998/03/02 05:26:48 tbr
+>># Branch point for Release 5.0.1
+>>#
+>># Revision 5.0 1998/01/26 03:23:22 tbr
+>># Branch point for Release 5.0.1b1
+>>#
+>># Revision 4.0 1995/12/15 09:13:36 tbr
+>># Branch point for Release 5.0.0
+>>#
+>># Revision 3.1 1995/12/15 01:16:53 andy
+>># Prepare for GA Release
+>>#
+/*
+ * SCCS: @(#) kysym.m Rel 1.11 (5/12/92)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1991 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+>>TITLE keysym Xopen
+>>CFILES Test0.c Test1.c Test2.c Test3.c Test4.c TestG.c TestM.c
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table which have code 1
+are defined to have the hexadecimal values given in the table.
+.tL "Code" "Value" "Name"
+.tL "1" "20" "XK_space"
+.tL "1" "21" "XK_exclam"
+.tL "1" "22" "XK_quotedbl"
+.tL "1" "23" "XK_numbersign"
+.tL "1" "24" "XK_dollar"
+.tL "1" "25" "XK_percent"
+.tL "1" "26" "XK_ampersand"
+.tL "1" "27" "XK_apostrophe"
+.tL "1" "27" "XK_quoteright"
+.tL "1" "28" "XK_parenleft"
+.tL "1" "29" "XK_parenright"
+.tL "1" "2A" "XK_asterisk"
+.tL "1" "2B" "XK_plus"
+.tL "1" "2C" "XK_comma"
+.tL "1" "2D" "XK_minus"
+.tL "1" "2E" "XK_period"
+.tL "1" "2F" "XK_slash"
+.tL "1" "30" "XK_0"
+.tL "1" "31" "XK_1"
+.tL "1" "32" "XK_2"
+.tL "1" "33" "XK_3"
+.tL "1" "34" "XK_4"
+.tL "1" "35" "XK_5"
+.tL "1" "36" "XK_6"
+.tL "1" "37" "XK_7"
+.tL "1" "38" "XK_8"
+.tL "1" "39" "XK_9"
+.tL "1" "3A" "XK_colon"
+.tL "1" "3B" "XK_semicolon"
+.tL "1" "3C" "XK_less"
+.tL "1" "3D" "XK_equal"
+.tL "1" "3E" "XK_greater"
+.tL "1" "3F" "XK_question"
+.tL "1" "40" "XK_at"
+.tL "1" "41" "XK_A"
+.tL "1" "42" "XK_B"
+.tL "1" "43" "XK_C"
+.tL "1" "44" "XK_D"
+.tL "1" "45" "XK_E"
+.tL "1" "46" "XK_F"
+.tL "1" "47" "XK_G"
+.tL "1" "48" "XK_H"
+.tL "1" "49" "XK_I"
+.tL "1" "4A" "XK_J"
+.tL "1" "4B" "XK_K"
+.tL "1" "4C" "XK_L"
+.tL "1" "4D" "XK_M"
+.tL "1" "4E" "XK_N"
+.tL "1" "4F" "XK_O"
+.tL "1" "50" "XK_P"
+.tL "1" "51" "XK_Q"
+.tL "1" "52" "XK_R"
+.tL "1" "53" "XK_S"
+.tL "1" "54" "XK_T"
+.tL "1" "55" "XK_U"
+.tL "1" "56" "XK_V"
+.tL "1" "57" "XK_W"
+.tL "1" "58" "XK_X"
+.tL "1" "59" "XK_Y"
+.tL "1" "5A" "XK_Z"
+.tL "1" "5B" "XK_bracketleft"
+.tL "1" "5C" "XK_backslash"
+.tL "1" "5D" "XK_bracketright"
+.tL "1" "5E" "XK_asciicircum"
+.tL "1" "5F" "XK_underscore"
+.tL "1" "60" "XK_grave"
+.tL "1" "60" "XK_quoteleft"
+.tL "1" "61" "XK_a"
+.tL "1" "62" "XK_b"
+.tL "1" "63" "XK_c"
+.tL "1" "64" "XK_d"
+.tL "1" "65" "XK_e"
+.tL "1" "66" "XK_f"
+.tL "1" "67" "XK_g"
+.tL "1" "68" "XK_h"
+.tL "1" "69" "XK_i"
+.tL "1" "6A" "XK_j"
+.tL "1" "6B" "XK_k"
+.tL "1" "6C" "XK_l"
+.tL "1" "6D" "XK_m"
+.tL "1" "6E" "XK_n"
+.tL "1" "6F" "XK_o"
+.tL "1" "70" "XK_p"
+.tL "1" "71" "XK_q"
+.tL "1" "72" "XK_r"
+.tL "1" "73" "XK_s"
+.tL "1" "74" "XK_t"
+.tL "1" "75" "XK_u"
+.tL "1" "76" "XK_v"
+.tL "1" "77" "XK_w"
+.tL "1" "78" "XK_x"
+.tL "1" "79" "XK_y"
+.tL "1" "7A" "XK_z"
+.tL "1" "7B" "XK_braceleft"
+.tL "1" "7C" "XK_bar"
+.tL "1" "7D" "XK_braceright"
+.tL "1" "7E" "XK_asciitilde"
+.tL "1" "A0" "XK_nobreakspace"
+.tL "1" "A1" "XK_exclamdown"
+.tL "1" "A2" "XK_cent"
+.tL "1" "A3" "XK_sterling"
+.tL "1" "A4" "XK_currency"
+.tL "1" "A5" "XK_yen"
+.tL "1" "A6" "XK_brokenbar"
+.tL "1" "A7" "XK_section"
+.tL "1" "A8" "XK_diaeresis"
+.tL "1" "A9" "XK_copyright"
+.tL "1" "AA" "XK_ordfeminine"
+.tL "1" "AB" "XK_guillemotleft"
+.tL "1" "AC" "XK_notsign"
+.tL "1" "AD" "XK_hyphen"
+.tL "1" "AE" "XK_registered"
+.tL "1" "AF" "XK_macron"
+.tL "1" "B0" "XK_degree"
+.tL "1" "B1" "XK_plusminus"
+.tL "1" "B2" "XK_twosuperior"
+.tL "1" "B3" "XK_threesuperior"
+.tL "1" "B4" "XK_acute"
+.tL "1" "B5" "XK_mu"
+.tL "1" "B6" "XK_paragraph"
+.tL "1" "B7" "XK_periodcentered"
+.tL "1" "B8" "XK_cedilla"
+.tL "1" "B9" "XK_onesuperior"
+.tL "1" "BA" "XK_masculine"
+.tL "1" "BB" "XK_guillemotright"
+.tL "1" "BC" "XK_onequarter"
+.tL "1" "BD" "XK_onehalf"
+.tL "1" "BE" "XK_threequarters"
+.tL "1" "BF" "XK_questiondown"
+.tL "1" "C0" "XK_Agrave"
+.tL "1" "C1" "XK_Aacute"
+.tL "1" "C2" "XK_Acircumflex"
+.tL "1" "C3" "XK_Atilde"
+.tL "1" "C4" "XK_Adiaeresis"
+.tL "1" "C5" "XK_Aring"
+.tL "1" "C6" "XK_AE"
+.tL "1" "C7" "XK_Ccedilla"
+.tL "1" "C8" "XK_Egrave"
+.tL "1" "C9" "XK_Eacute"
+.tL "1" "CA" "XK_Ecircumflex"
+.tL "1" "CB" "XK_Ediaeresis"
+.tL "1" "CC" "XK_Igrave"
+.tL "1" "CD" "XK_Iacute"
+.tL "1" "CE" "XK_Icircumflex"
+.tL "1" "CF" "XK_Idiaeresis"
+.tL "1" "D0" "XK_ETH"
+.tL "1" "D0" "XK_Eth"
+.tL "1" "D1" "XK_Ntilde"
+.tL "1" "D2" "XK_Ograve"
+.tL "1" "D3" "XK_Oacute"
+.tL "1" "D4" "XK_Ocircumflex"
+.tL "1" "D5" "XK_Otilde"
+.tL "1" "D6" "XK_Odiaeresis"
+.tL "1" "D7" "XK_multiply"
+.tL "1" "D8" "XK_Ooblique"
+.tL "1" "D9" "XK_Ugrave"
+.tL "1" "DA" "XK_Uacute"
+.tL "1" "DB" "XK_Ucircumflex"
+.tL "1" "DC" "XK_Udiaeresis"
+.tL "1" "DD" "XK_Yacute"
+.tL "1" "DE" "XK_THORN"
+.tL "1" "DE" "XK_Thorn"
+.tL "1" "DF" "XK_ssharp"
+.tL "1" "E0" "XK_agrave"
+.tL "1" "E1" "XK_aacute"
+.tL "1" "E2" "XK_acircumflex"
+.tL "1" "E3" "XK_atilde"
+.tL "1" "E4" "XK_adiaeresis"
+.tL "1" "E5" "XK_aring"
+.tL "1" "E6" "XK_ae"
+.tL "1" "E7" "XK_ccedilla"
+.tL "1" "E8" "XK_egrave"
+.tL "1" "E9" "XK_eacute"
+.tL "1" "EA" "XK_ecircumflex"
+.tL "1" "EB" "XK_ediaeresis"
+.tL "1" "EC" "XK_igrave"
+.tL "1" "ED" "XK_iacute"
+.tL "1" "EE" "XK_icircumflex"
+.tL "1" "EF" "XK_idiaeresis"
+.tL "1" "F0" "XK_eth"
+.tL "1" "F1" "XK_ntilde"
+.tL "1" "F2" "XK_ograve"
+.tL "1" "F3" "XK_oacute"
+.tL "1" "F4" "XK_ocircumflex"
+.tL "1" "F5" "XK_otilde"
+.tL "1" "F6" "XK_odiaeresis"
+.tL "1" "F7" "XK_division"
+.tL "1" "F8" "XK_oslash"
+.tL "1" "F9" "XK_ugrave"
+.tL "1" "FA" "XK_uacute"
+.tL "1" "FB" "XK_ucircumflex"
+.tL "1" "FC" "XK_udiaeresis"
+.tL "1" "FD" "XK_yacute"
+.tL "1" "FE" "XK_thorn"
+.tL "1" "FF" "XK_ydiaeresis"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table with code 1:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysym1();
+
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table which have code 2
+are defined to have the hexadecimal values given in the table.
+.tL "Code" "Value" "Name"
+.tL "2" "1A1" "XK_Aogonek"
+.tL "2" "1A2" "XK_breve"
+.tL "2" "1A3" "XK_Lstroke"
+.tL "2" "1A5" "XK_Lcaron"
+.tL "2" "1A6" "XK_Sacute"
+.tL "2" "1A9" "XK_Scaron"
+.tL "2" "1AA" "XK_Scedilla"
+.tL "2" "1AB" "XK_Tcaron"
+.tL "2" "1AC" "XK_Zacute"
+.tL "2" "1AE" "XK_Zcaron"
+.tL "2" "1AF" "XK_Zabovedot"
+.tL "2" "1B1" "XK_aogonek"
+.tL "2" "1B2" "XK_ogonek"
+.tL "2" "1B3" "XK_lstroke"
+.tL "2" "1B5" "XK_lcaron"
+.tL "2" "1B6" "XK_sacute"
+.tL "2" "1B7" "XK_caron"
+.tL "2" "1B9" "XK_scaron"
+.tL "2" "1BA" "XK_scedilla"
+.tL "2" "1BB" "XK_tcaron"
+.tL "2" "1BC" "XK_zacute"
+.tL "2" "1BD" "XK_doubleacute"
+.tL "2" "1BE" "XK_zcaron"
+.tL "2" "1BF" "XK_zabovedot"
+.tL "2" "1C0" "XK_Racute"
+.tL "2" "1C3" "XK_Abreve"
+.tL "2" "1C5" "XK_Lacute"
+.tL "2" "1C6" "XK_Cacute"
+.tL "2" "1C8" "XK_Ccaron"
+.tL "2" "1CA" "XK_Eogonek"
+.tL "2" "1CC" "XK_Ecaron"
+.tL "2" "1CF" "XK_Dcaron"
+.tL "2" "1D0" "XK_Dstroke"
+.tL "2" "1D1" "XK_Nacute"
+.tL "2" "1D2" "XK_Ncaron"
+.tL "2" "1D5" "XK_Odoubleacute"
+.tL "2" "1D8" "XK_Rcaron"
+.tL "2" "1D9" "XK_Uring"
+.tL "2" "1DB" "XK_Udoubleacute"
+.tL "2" "1DE" "XK_Tcedilla"
+.tL "2" "1E0" "XK_racute"
+.tL "2" "1E3" "XK_abreve"
+.tL "2" "1E5" "XK_lacute"
+.tL "2" "1E6" "XK_cacute"
+.tL "2" "1E8" "XK_ccaron"
+.tL "2" "1EA" "XK_eogonek"
+.tL "2" "1EC" "XK_ecaron"
+.tL "2" "1EF" "XK_dcaron"
+.tL "2" "1F0" "XK_dstroke"
+.tL "2" "1F1" "XK_nacute"
+.tL "2" "1F2" "XK_ncaron"
+.tL "2" "1F5" "XK_odoubleacute"
+.tL "2" "1F8" "XK_rcaron"
+.tL "2" "1F9" "XK_uring"
+.tL "2" "1FB" "XK_udoubleacute"
+.tL "2" "1FE" "XK_tcedilla"
+.tL "2" "1FF" "XK_abovedot"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table with code 2:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysym2();
+
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table which have code 3
+are defined to have the hexadecimal values given in the table.
+.tL "Code" "Value" "Name"
+.tL "3" "2A1" "XK_Hstroke"
+.tL "3" "2A6" "XK_Hcircumflex"
+.tL "3" "2A9" "XK_Iabovedot"
+.tL "3" "2AB" "XK_Gbreve"
+.tL "3" "2AC" "XK_Jcircumflex"
+.tL "3" "2B1" "XK_hstroke"
+.tL "3" "2B6" "XK_hcircumflex"
+.tL "3" "2B9" "XK_idotless"
+.tL "3" "2BB" "XK_gbreve"
+.tL "3" "2BC" "XK_jcircumflex"
+.tL "3" "2C5" "XK_Cabovedot"
+.tL "3" "2C6" "XK_Ccircumflex"
+.tL "3" "2D5" "XK_Gabovedot"
+.tL "3" "2D8" "XK_Gcircumflex"
+.tL "3" "2DD" "XK_Ubreve"
+.tL "3" "2DE" "XK_Scircumflex"
+.tL "3" "2E5" "XK_cabovedot"
+.tL "3" "2E6" "XK_ccircumflex"
+.tL "3" "2F5" "XK_gabovedot"
+.tL "3" "2F8" "XK_gcircumflex"
+.tL "3" "2FD" "XK_ubreve"
+.tL "3" "2FE" "XK_scircumflex"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table with code 3:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysym3();
+
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table which have code 4
+are defined to have the hexadecimal values given in the table.
+.tL "Code" "Value" "Name"
+.tL "4" "3A2" "XK_kra"
+.tL "4" "3A2" "XK_kappa"
+.tL "4" "3A3" "XK_Rcedilla"
+.tL "4" "3A5" "XK_Itilde"
+.tL "4" "3A6" "XK_Lcedilla"
+.tL "4" "3AA" "XK_Emacron"
+.tL "4" "3AB" "XK_Gcedilla"
+.tL "4" "3AC" "XK_Tslash"
+.tL "4" "3B3" "XK_rcedilla"
+.tL "4" "3B5" "XK_itilde"
+.tL "4" "3B6" "XK_lcedilla"
+.tL "4" "3BA" "XK_emacron"
+.tL "4" "3BB" "XK_gcedilla"
+.tL "4" "3BC" "XK_tslash"
+.tL "4" "3BD" "XK_ENG"
+.tL "4" "3BF" "XK_eng"
+.tL "4" "3C0" "XK_Amacron"
+.tL "4" "3C7" "XK_Iogonek"
+.tL "4" "3CC" "XK_Eabovedot"
+.tL "4" "3CF" "XK_Imacron"
+.tL "4" "3D1" "XK_Ncedilla"
+.tL "4" "3D2" "XK_Omacron"
+.tL "4" "3D3" "XK_Kcedilla"
+.tL "4" "3D9" "XK_Uogonek"
+.tL "4" "3DD" "XK_Utilde"
+.tL "4" "3DE" "XK_Umacron"
+.tL "4" "3E0" "XK_amacron"
+.tL "4" "3E7" "XK_iogonek"
+.tL "4" "3EC" "XK_eabovedot"
+.tL "4" "3EF" "XK_imacron"
+.tL "4" "3F1" "XK_ncedilla"
+.tL "4" "3F2" "XK_omacron"
+.tL "4" "3F3" "XK_kcedilla"
+.tL "4" "3F9" "XK_uogonek"
+.tL "4" "3FD" "XK_utilde"
+.tL "4" "3FE" "XK_umacron"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table with code 4:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysym4();
+
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table which have code G
+are defined to have the hexadecimal values given in the table.
+.tL "Code" "Value" "Name"
+.tL "G" "7A1" "XK_Greek_ALPHAaccent"
+.tL "G" "7A2" "XK_Greek_EPSILONaccent"
+.tL "G" "7A3" "XK_Greek_ETAaccent"
+.tL "G" "7A4" "XK_Greek_IOTAaccent"
+.tL "G" "7A5" "XK_Greek_IOTAdiaeresis"
+.tL "G" "7A7" "XK_Greek_OMICRONaccent"
+.tL "G" "7A8" "XK_Greek_UPSILONaccent"
+.tL "G" "7A9" "XK_Greek_UPSILONdieresis"
+.tL "G" "7AB" "XK_Greek_OMEGAaccent"
+.tL "G" "7AE" "XK_Greek_accentdieresis"
+.tL "G" "7AF" "XK_Greek_horizbar"
+.tL "G" "7B1" "XK_Greek_alphaaccent"
+.tL "G" "7B2" "XK_Greek_epsilonaccent"
+.tL "G" "7B3" "XK_Greek_etaaccent"
+.tL "G" "7B4" "XK_Greek_iotaaccent"
+.tL "G" "7B5" "XK_Greek_iotadieresis"
+.tL "G" "7B6" "XK_Greek_iotaaccentdieresis"
+.tL "G" "7B7" "XK_Greek_omicronaccent"
+.tL "G" "7B8" "XK_Greek_upsilonaccent"
+.tL "G" "7B9" "XK_Greek_upsilondieresis"
+.tL "G" "7BA" "XK_Greek_upsilonaccentdieresis"
+.tL "G" "7BB" "XK_Greek_omegaaccent"
+.tL "G" "7C1" "XK_Greek_ALPHA"
+.tL "G" "7C2" "XK_Greek_BETA"
+.tL "G" "7C3" "XK_Greek_GAMMA"
+.tL "G" "7C4" "XK_Greek_DELTA"
+.tL "G" "7C5" "XK_Greek_EPSILON"
+.tL "G" "7C6" "XK_Greek_ZETA"
+.tL "G" "7C7" "XK_Greek_ETA"
+.tL "G" "7C8" "XK_Greek_THETA"
+.tL "G" "7C9" "XK_Greek_IOTA"
+.tL "G" "7CA" "XK_Greek_KAPPA"
+.tL "G" "7CB" "XK_Greek_LAMBDA"
+.tL "G" "7CB" "XK_Greek_LAMDA"
+.tL "G" "7CC" "XK_Greek_MU"
+.tL "G" "7CD" "XK_Greek_NU"
+.tL "G" "7CE" "XK_Greek_XI"
+.tL "G" "7CF" "XK_Greek_OMICRON"
+.tL "G" "7D0" "XK_Greek_PI"
+.tL "G" "7D1" "XK_Greek_RHO"
+.tL "G" "7D2" "XK_Greek_SIGMA"
+.tL "G" "7D4" "XK_Greek_TAU"
+.tL "G" "7D5" "XK_Greek_UPSILON"
+.tL "G" "7D6" "XK_Greek_PHI"
+.tL "G" "7D7" "XK_Greek_CHI"
+.tL "G" "7D8" "XK_Greek_PSI"
+.tL "G" "7D9" "XK_Greek_OMEGA"
+.tL "G" "7E1" "XK_Greek_alpha"
+.tL "G" "7E2" "XK_Greek_beta"
+.tL "G" "7E3" "XK_Greek_gamma"
+.tL "G" "7E4" "XK_Greek_delta"
+.tL "G" "7E5" "XK_Greek_epsilon"
+.tL "G" "7E6" "XK_Greek_zeta"
+.tL "G" "7E7" "XK_Greek_eta"
+.tL "G" "7E8" "XK_Greek_theta"
+.tL "G" "7E9" "XK_Greek_iota"
+.tL "G" "7EA" "XK_Greek_kappa"
+.tL "G" "7EB" "XK_Greek_lambda"
+.tL "G" "7EB" "XK_Greek_lamda"
+.tL "G" "7EC" "XK_Greek_mu"
+.tL "G" "7ED" "XK_Greek_nu"
+.tL "G" "7EE" "XK_Greek_xi"
+.tL "G" "7EF" "XK_Greek_omicron"
+.tL "G" "7F0" "XK_Greek_pi"
+.tL "G" "7F1" "XK_Greek_rho"
+.tL "G" "7F2" "XK_Greek_sigma"
+.tL "G" "7F3" "XK_Greek_finalsmallsigma"
+.tL "G" "7F4" "XK_Greek_tau"
+.tL "G" "7F5" "XK_Greek_upsilon"
+.tL "G" "7F6" "XK_Greek_phi"
+.tL "G" "7F7" "XK_Greek_chi"
+.tL "G" "7F8" "XK_Greek_psi"
+.tL "G" "7F9" "XK_Greek_omega"
+.tL "G" "FF7E" "XK_Greek_switch"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table with code G:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysymG();
+
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table which have code M
+are defined to have the hexadecimal values given in the table.
+.tL "Code" "Value" "Name"
+.tL "M" "FF08" "XK_BackSpace"
+.tL "M" "FF09" "XK_Tab"
+.tL "M" "FF0A" "XK_Linefeed"
+.tL "M" "FF0B" "XK_Clear"
+.tL "M" "FF0D" "XK_Return"
+.tL "M" "FF13" "XK_Pause"
+.tL "M" "FF14" "XK_Scroll_Lock"
+.tL "M" "FF1B" "XK_Escape"
+.tL "M" "FF20" "XK_Multi_key"
+.tL "M" "FF21" "XK_Kanji"
+.tL "M" "FF22" "XK_Muhenkan"
+.tL "M" "FF23" "XK_Henkan"
+.tL "M" "FF23" "XK_Henkan_Mode"
+.tL "M" "FF24" "XK_Romaji"
+.tL "M" "FF25" "XK_Hiragana"
+.tL "M" "FF26" "XK_Katakana"
+.tL "M" "FF27" "XK_Hiragana_Katakana"
+.tL "M" "FF28" "XK_Zenkaku"
+.tL "M" "FF29" "XK_Hankaku"
+.tL "M" "FF2A" "XK_Zenkaku_Hankaku"
+.tL "M" "FF2B" "XK_Touroku"
+.tL "M" "FF2C" "XK_Massyo"
+.tL "M" "FF2D" "XK_Kana_Lock"
+.tL "M" "FF2E" "XK_Kana_Shift"
+.tL "M" "FF2F" "XK_Eisu_Shift"
+.tL "M" "FF30" "XK_Eisu_toggle"
+.tL "M" "FF50" "XK_Home"
+.tL "M" "FF51" "XK_Left"
+.tL "M" "FF52" "XK_Up"
+.tL "M" "FF53" "XK_Right"
+.tL "M" "FF54" "XK_Down"
+.tL "M" "FF55" "XK_Prior"
+.tL "M" "FF56" "XK_Next"
+.tL "M" "FF57" "XK_End"
+.tL "M" "FF58" "XK_Begin"
+.tL "M" "FF60" "XK_Select"
+.tL "M" "FF61" "XK_Print"
+.tL "M" "FF62" "XK_Execute"
+.tL "M" "FF63" "XK_Insert"
+.tL "M" "FF65" "XK_Undo"
+.tL "M" "FF66" "XK_Redo"
+.tL "M" "FF67" "XK_Menu"
+.tL "M" "FF68" "XK_Find"
+.tL "M" "FF69" "XK_Cancel"
+.tL "M" "FF6A" "XK_Help"
+.tL "M" "FF6B" "XK_Break"
+.tL "M" "FF7E" "XK_Mode_switch"
+.tL "M" "FF7E" "XK_script_switch"
+.tL "M" "FF7F" "XK_Num_Lock"
+.tL "M" "FF80" "XK_KP_Space"
+.tL "M" "FF89" "XK_KP_Tab"
+.tL "M" "FF8D" "XK_KP_Enter"
+.tL "M" "FF91" "XK_KP_F1"
+.tL "M" "FF92" "XK_KP_F2"
+.tL "M" "FF93" "XK_KP_F3"
+.tL "M" "FF94" "XK_KP_F4"
+.tL "M" "FFAA" "XK_KP_Multiply"
+.tL "M" "FFAB" "XK_KP_Add"
+.tL "M" "FFAC" "XK_KP_Separator"
+.tL "M" "FFAD" "XK_KP_Subtract"
+.tL "M" "FFAE" "XK_KP_Decimal"
+.tL "M" "FFAF" "XK_KP_Divide"
+.tL "M" "FFB0" "XK_KP_0"
+.tL "M" "FFB1" "XK_KP_1"
+.tL "M" "FFB2" "XK_KP_2"
+.tL "M" "FFB3" "XK_KP_3"
+.tL "M" "FFB4" "XK_KP_4"
+.tL "M" "FFB5" "XK_KP_5"
+.tL "M" "FFB6" "XK_KP_6"
+.tL "M" "FFB7" "XK_KP_7"
+.tL "M" "FFB8" "XK_KP_8"
+.tL "M" "FFB9" "XK_KP_9"
+.tL "M" "FFBD" "XK_KP_Equal"
+.tL "M" "FFBE" "XK_F1"
+.tL "M" "FFBF" "XK_F2"
+.tL "M" "FFC0" "XK_F3"
+.tL "M" "FFC1" "XK_F4"
+.tL "M" "FFC2" "XK_F5"
+.tL "M" "FFC3" "XK_F6"
+.tL "M" "FFC4" "XK_F7"
+.tL "M" "FFC5" "XK_F8"
+.tL "M" "FFC6" "XK_F9"
+.tL "M" "FFC7" "XK_F10"
+.tL "M" "FFC8" "XK_F11"
+.tL "M" "FFC8" "XK_L1"
+.tL "M" "FFC9" "XK_F12"
+.tL "M" "FFC9" "XK_L2"
+.tL "M" "FFCA" "XK_F13"
+.tL "M" "FFCA" "XK_L3"
+.tL "M" "FFCB" "XK_F14"
+.tL "M" "FFCB" "XK_L4"
+.tL "M" "FFCC" "XK_F15"
+.tL "M" "FFCC" "XK_L5"
+.tL "M" "FFCD" "XK_F16"
+.tL "M" "FFCD" "XK_L6"
+.tL "M" "FFCE" "XK_F17"
+.tL "M" "FFCE" "XK_L7"
+.tL "M" "FFCF" "XK_F18"
+.tL "M" "FFCF" "XK_L8"
+.tL "M" "FFD0" "XK_F19"
+.tL "M" "FFD0" "XK_L9"
+.tL "M" "FFD1" "XK_F20"
+.tL "M" "FFD1" "XK_L10"
+.tL "M" "FFD2" "XK_F21"
+.tL "M" "FFD2" "XK_R1"
+.tL "M" "FFD3" "XK_F22"
+.tL "M" "FFD3" "XK_R2"
+.tL "M" "FFD4" "XK_F23"
+.tL "M" "FFD4" "XK_R3"
+.tL "M" "FFD5" "XK_F24"
+.tL "M" "FFD5" "XK_R4"
+.tL "M" "FFD6" "XK_F25"
+.tL "M" "FFD6" "XK_R5"
+.tL "M" "FFD7" "XK_F26"
+.tL "M" "FFD7" "XK_R6"
+.tL "M" "FFD8" "XK_F27"
+.tL "M" "FFD8" "XK_R7"
+.tL "M" "FFD9" "XK_F28"
+.tL "M" "FFD9" "XK_R8"
+.tL "M" "FFDA" "XK_F29"
+.tL "M" "FFDA" "XK_R9"
+.tL "M" "FFDB" "XK_F30"
+.tL "M" "FFDB" "XK_R10"
+.tL "M" "FFDC" "XK_F31"
+.tL "M" "FFDC" "XK_R11"
+.tL "M" "FFDD" "XK_F32"
+.tL "M" "FFDD" "XK_R12"
+.tL "M" "FFDE" "XK_F33"
+.tL "M" "FFDE" "XK_R13"
+.tL "M" "FFDF" "XK_F34"
+.tL "M" "FFDF" "XK_R14"
+.tL "M" "FFE0" "XK_F35"
+.tL "M" "FFE0" "XK_R15"
+.tL "M" "FFE1" "XK_Shift_L"
+.tL "M" "FFE2" "XK_Shift_R"
+.tL "M" "FFE3" "XK_Control_L"
+.tL "M" "FFE4" "XK_Control_R"
+.tL "M" "FFE5" "XK_Caps_Lock"
+.tL "M" "FFE6" "XK_Shift_Lock"
+.tL "M" "FFE7" "XK_Meta_L"
+.tL "M" "FFE8" "XK_Meta_R"
+.tL "M" "FFE9" "XK_Alt_L"
+.tL "M" "FFEA" "XK_Alt_R"
+.tL "M" "FFEB" "XK_Super_L"
+.tL "M" "FFEC" "XK_Super_R"
+.tL "M" "FFED" "XK_Hyper_L"
+.tL "M" "FFEE" "XK_Hyper_R"
+.tL "M" "FFFF" "XK_Delete"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table with code M:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysymM();
+
+>>ASSERTION Good A
+When the header file <X11/keysym.h> is included,
+then the symbols in the table
+are defined to have the hexadecimal values given in the table.
+.tL "Value" "Name"
+.tL "FFFFFF" "XK_VoidSymbol"
+>>STRATEGY
+Include header file <X11/keysym.h>
+For each KeySym in table:
+ Verify that the symbol is defined using #ifdef.
+ Verify that the symbol has the expected value using #if.
+>>CODE
+
+ kysym0();