]> git.ipfire.org Git - thirdparty/bash.git/blobdiff - command.h
Bash-5.0 patch 4: the wait builtin without arguments only waits for known children...
[thirdparty/bash.git] / command.h
index 6e9d1e4bc80c54030a2df330ed7a93c8d792ab50..32495162af65d1eb3af0944c6b193b070646cba2 100644 (file)
--- a/command.h
+++ b/command.h
@@ -1,7 +1,7 @@
 /* command.h -- The structures used internally to represent commands, and
    the extern declarations of the functions used to create them. */
 
-/* Copyright (C) 1993-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1993-2016 Free Software Foundation, Inc.
 
    This file is part of GNU Bash, the Bourne Again SHell.
 
@@ -94,13 +94,23 @@ enum command_type { cm_for, cm_case, cm_while, cm_if, cm_simple, cm_select,
 #define W_HASQUOTEDNULL        0x040000        /* word contains a quoted null character */
 #define W_DQUOTE       0x080000        /* word should be treated as if double-quoted */
 #define W_NOPROCSUB    0x100000        /* don't perform process substitution */
-#define W_HASCTLESC    0x200000        /* word contains literal CTLESC characters */
+#define W_SAWQUOTEDNULL        0x200000        /* word contained a quoted null that was removed */
 #define W_ASSIGNASSOC  0x400000        /* word looks like associative array assignment */
 #define W_ASSIGNARRAY  0x800000        /* word looks like a compound indexed array assignment */
 #define W_ARRAYIND     0x1000000       /* word is an array index being expanded */
 #define W_ASSNGLOBAL   0x2000000       /* word is a global assignment to declare (declare/typeset -g) */
 #define W_NOBRACE      0x4000000       /* Don't perform brace expansion */
-#define W_ASSIGNINT    0x8000000       /* word is an integer assignment to declare */
+#define W_COMPLETE     0x8000000       /* word is being expanded for completion */
+#define W_CHKLOCAL     0x10000000      /* check for local vars on assignment */
+#define W_NOASSNTILDE  0x20000000      /* don't do tilde expansion like an assignment statement */
+
+/* Flags for the `pflags' argument to param_expand() and various
+   parameter_brace_expand_xxx functions; also used for string_list_dollar_at */
+#define PF_NOCOMSUB    0x01    /* Do not perform command substitution */
+#define PF_IGNUNBOUND  0x02    /* ignore unbound vars even if -u set */
+#define PF_NOSPLIT2    0x04    /* same as W_NOSPLIT2 */
+#define PF_ASSIGNRHS   0x08    /* same as W_ASSIGNRHS */
+#define PF_COMPLETE    0x10    /* same as W_COMPLETE, sets SX_COMPLETE */
 
 /* Possible values for subshell_environment */
 #define SUBSHELL_ASYNC 0x01    /* subshell caused by `command &' */
@@ -175,6 +185,7 @@ typedef struct element {
 #define CMD_COMMAND_BUILTIN 0x0800 /* command executed by `command' builtin */
 #define CMD_COPROC_SUBSHELL 0x1000
 #define CMD_LASTPIPE       0x2000
+#define CMD_STDPATH        0x4000      /* use standard path for command lookup */
 
 /* What a command looks like. */
 typedef struct command {
@@ -343,6 +354,7 @@ typedef struct group_com {
 
 typedef struct subshell_com {
   int flags;
+  int line;
   COMMAND *command;
 } SUBSHELL_COM;