From f4b417c62a4f272c4cf9a074d0f7a3a97201f9db Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Tue, 17 Apr 2012 11:23:35 +0200 Subject: Update to upstream bash 4.2 This upgrades bash to from 4.1-rc to 4.2-release. See CWRU/changelog for changes. Change-Id: I926269c300cf44fa25964b5b375a148fcf11c4b7 --- subst.h | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'subst.h') diff --git a/subst.h b/subst.h index 7628939..ae388fd 100644 --- a/subst.h +++ b/subst.h @@ -1,6 +1,6 @@ /* subst.h -- Names of externally visible functions in subst.c. */ -/* Copyright (C) 1993-2009 Free Software Foundation, Inc. +/* Copyright (C) 1993-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -30,7 +30,8 @@ decide whether to retain the backslash. Q_KEEP_BACKSLASH means to unconditionally retain the backslash. Q_PATQUOTE means that we're expanding a pattern ${var%#[#%]pattern} in an expansion surrounded - by double quotes. */ + by double quotes. Q_DOLBRACE means we are expanding a ${...} word, so + backslashes should also escape { and } and be removed. */ #define Q_DOUBLE_QUOTES 0x01 #define Q_HERE_DOCUMENT 0x02 #define Q_KEEP_BACKSLASH 0x04 @@ -38,6 +39,7 @@ #define Q_QUOTED 0x10 #define Q_ADDEDQUOTES 0x20 #define Q_QUOTEDNULL 0x40 +#define Q_DOLBRACE 0x80 /* Flag values controlling how assignment statements are treated. */ #define ASS_APPEND 0x01 @@ -45,14 +47,15 @@ #define ASS_MKASSOC 0x04 /* Flags for the string extraction functions. */ -#define SX_NOALLOC 0x01 /* just skip; don't return substring */ -#define SX_VARNAME 0x02 /* variable name; for string_extract () */ -#define SX_REQMATCH 0x04 /* closing/matching delimiter required */ -#define SX_COMMAND 0x08 /* extracting a shell script/command */ -#define SX_NOCTLESC 0x10 /* don't honor CTLESC quoting */ -#define SX_NOESCCTLNUL 0x20 /* don't let CTLESC quote CTLNUL */ -#define SX_NOLONGJMP 0x40 /* don't longjmp on fatal error */ -#define SX_ARITHSUB 0x80 /* extracting $(( ... )) (currently unused) */ +#define SX_NOALLOC 0x0001 /* just skip; don't return substring */ +#define SX_VARNAME 0x0002 /* variable name; for string_extract () */ +#define SX_REQMATCH 0x0004 /* closing/matching delimiter required */ +#define SX_COMMAND 0x0008 /* extracting a shell script/command */ +#define SX_NOCTLESC 0x0010 /* don't honor CTLESC quoting */ +#define SX_NOESCCTLNUL 0x0020 /* don't let CTLESC quote CTLNUL */ +#define SX_NOLONGJMP 0x0040 /* don't longjmp on fatal error */ +#define SX_ARITHSUB 0x0080 /* extracting $(( ... )) (currently unused) */ +#define SX_POSIXEXP 0x0100 /* extracting new Posix pattern removal expansions in extract_dollar_brace_string */ /* Remove backslashes which are quoting backquotes from STRING. Modifies STRING, and returns a pointer to it. */ @@ -121,7 +124,7 @@ extern char *strip_trailing_ifs_whitespace __P((char *, char *, int)); splitting on the result of expansion. */ extern int do_assignment __P((char *)); extern int do_assignment_no_expand __P((char *)); -extern int do_word_assignment __P((WORD_DESC *)); +extern int do_word_assignment __P((WORD_DESC *, int)); /* Append SOURCE to TARGET at INDEX. SIZE is the current amount of space allocated to TARGET. SOURCE can be NULL, in which @@ -251,7 +254,13 @@ extern WORD_DESC *command_substitute __P((char *, int)); extern char *pat_subst __P((char *, char *, char *, int)); extern int fifos_pending __P((void)); +extern int num_fifos __P((void)); extern void unlink_fifo_list __P((void)); +extern void unlink_fifo __P((int)); + +extern char *copy_fifo_list __P((int *)); +extern void unlink_new_fifos __P((char *, int)); +extern void close_new_fifos __P((char *, int)); extern WORD_LIST *list_string_with_quotes __P((char *)); @@ -269,6 +278,7 @@ extern char *cond_expand_word __P((WORD_DESC *, int)); #define SD_INVERT 0x02 /* look for chars NOT in passed set */ #define SD_NOQUOTEDELIM 0x04 /* don't let single or double quotes act as delimiters */ #define SD_NOSKIPCMD 0x08 /* don't skip over $(, <(, or >( command/process substitution */ +#define SD_EXTGLOB 0x10 /* skip over extended globbing patterns if appropriate */ extern int skip_to_delim __P((char *, int, char *, int)); -- cgit v1.1