aboutsummaryrefslogtreecommitdiffstats
path: root/parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y10
1 files changed, 4 insertions, 6 deletions
diff --git a/parse.y b/parse.y
index 64e9f4e8a6..886457823f 100644
--- a/parse.y
+++ b/parse.y
@@ -4520,7 +4520,7 @@ static int parser_here_document(struct parser_params*,NODE*);
# define tokadd(c) parser_tokadd(parser, c)
# define tok_hex(numlen) parser_tok_hex(parser, numlen)
# define read_escape(flags,e) parser_read_escape(parser, flags, e)
-# define tokadd_escape(t,e) parser_tokadd_escape(parser, t, e)
+# define tokadd_escape(e) parser_tokadd_escape(parser, e)
# define regx_options() parser_regx_options(parser)
# define tokadd_string(f,t,p,n,e) parser_tokadd_string(parser,f,t,p,n,e)
# define parse_string(n) parser_parse_string(parser,n)
@@ -5203,8 +5203,7 @@ parser_tokaddmbc(struct parser_params *parser, int c, rb_encoding *enc)
}
static int
-parser_tokadd_escape(struct parser_params *parser, int term,
- rb_encoding **encp)
+parser_tokadd_escape(struct parser_params *parser, rb_encoding **encp)
{
int c;
int flags = 0;
@@ -5277,8 +5276,7 @@ parser_tokadd_escape(struct parser_params *parser, int term,
return -1;
default:
- if (c != '\\' || c != term)
- tokadd('\\');
+ tokadd('\\');
tokadd(c);
}
return 0;
@@ -5416,7 +5414,7 @@ parser_tokadd_string(struct parser_params *parser,
default:
if (func & STR_FUNC_REGEXP) {
pushback(c);
- if ((c = tokadd_escape(term, &enc)) < 0)
+ if ((c = tokadd_escape(&enc)) < 0)
return -1;
if (has_nonascii && enc != *encp) {
mixed_escape(beg, enc, *encp);