backslash
int backslash;
backslash = 0;
if (backslash) {
backslash = 0;
backslash++;
case '\n': c = 'n'; goto backslash;
case '\t': c = 't'; goto backslash;
case '\r': c = 'r'; goto backslash;
case '"': c = '"'; goto backslash;
case '\\': c = '\\'; goto backslash;
case CTLESC: c = 'e'; goto backslash;
case CTLVAR: c = 'v'; goto backslash;
case CTLVAR+CTLQUOTE: c = 'V'; goto backslash;
case CTLBACKQ: c = 'q'; goto backslash;
case CTLBACKQ+CTLQUOTE: c = 'Q'; goto backslash;
backslash: putc('\\', tracefile);
const char *slash, *backslash;
backslash = strrchr(path, '\\');
if (slash != NULL && backslash != NULL)
return (slash > backslash) ? slash : backslash;
return (slash != NULL) ? slash : backslash;
static const char *newline_escape_filename(const char *file, int *backslash)
*backslash = 1;
int i, backslash = 0;
file = newline_escape_filename(file, &backslash);
if (backslash == 1)
uint8_t backslash = 0;
if ((backslash ^= 1) == 0)
} else if (backslash) {
backslash = 0;
backslash = 0;
uint8_t backslash = 0;
if ((backslash ^= 1) == 0)
} else if (backslash) {
backslash = 0;
backslash = 0;
int backslash;
backslash = 0;
if (!isspace(*fc) && *fc != '\\' && backslash == 0)
else if (backslash > 0 && *fc != 'n')
backslash++;
if (backslash > 2)
uint8_t backslash = 0;
backslash++;
backslash = 0;
else if (backslash > 0) {
*(--cp1) = (backslash & 1) == 1 ? '\n' : 'n';
backslash = 0;
char *backslash(const char *str);
if (!str || (p = copy = backslash(str)) == NULL)
s->equiv[0] = backslash(s, NULL);
stopval = backslash(s, &octal);
s->lastch = backslash(s, NULL);
s->cnt = backslash(s, NULL);
static int backslash(STR *, int *);
s->lastch = backslash(s, &is_octal);