1 /***********************************************************************
2 *                                                                      *
3 *               This software is part of the ast package               *
4 *          Copyright (c) 1982-2012 AT&T Intellectual Property          *
5 *                      and is licensed under the                       *
6 *                 Eclipse Public License, Version 1.0                  *
7 *                    by AT&T Intellectual Property                     *
8 *                                                                      *
9 *                A copy of the License is available at                 *
10 *          http://www.eclipse.org/org/documents/epl-v10.html           *
11 *         (with md5 checksum b35adb5213ca9657e911e9befb180842)         *
12 *                                                                      *
13 *              Information and Software Systems Research               *
14 *                            AT&T Research                             *
15 *                           Florham Park NJ                            *
16 *                                                                      *
17 *                  David Korn <dgk@research.att.com>                   *
18 *                                                                      *
19 ***********************************************************************/
20 #pragma prototyped
21 #include	"shell.h"
22 #include	"shlex.h"
23 #include	"FEATURE/options"
24 
25 /*
26  * table of reserved words in shell language
27  * This list must be in in ascii sorted order
28  */
29 
30 const Shtable_t shtab_reserved[] =
31 {
32 		"!",		NOTSYM,
33 		"[[",		BTESTSYM,
34 		"case",		CASESYM,
35 		"do",		DOSYM,
36 		"done",		DONESYM,
37 		"elif",		ELIFSYM,
38 		"else",		ELSESYM,
39 		"esac",		ESACSYM,
40 		"fi",		FISYM,
41 		"for",		FORSYM,
42 		"function",	FUNCTSYM,
43 		"if",		IFSYM,
44 		"in",		INSYM,
45 #if SHOPT_NAMESPACE
46 		"namespace",	NSPACESYM,
47 #endif /* SHOPT_NAMESPACE */
48 		"select",	SELECTSYM,
49 		"then",		THENSYM,
50 		"time",		TIMESYM,
51 		"until",	UNTILSYM,
52 		"while",	WHILESYM,
53 		"{",		LBRACE,
54 		"}",		RBRACE,
55 		"",		0,
56 };
57 
58 const char	e_unexpected[]	= "unexpected";
59 const char	e_unmatched[]	= "unmatched";
60 const char	e_endoffile[]	= "end of file";
61 const char	e_newline[]	= "newline";
62 
63