summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--lib/irb/ruby-lex.rb4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 432996cab1..093ebec3e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Dec 18 10:24:44 2015 SHIBATA Hiroshi <[email protected]>
+
+ * lib/irb/ruby-lex.rb: fixed parse error for striped heredocument syntax.
+ [fix GH-1127] Patch by @koic
+
Fri Dec 18 09:44:47 2015 SHIBATA Hiroshi <[email protected]>
* ext/pty/pty.c: fix double words typo.
diff --git a/lib/irb/ruby-lex.rb b/lib/irb/ruby-lex.rb
index b1138cd77d..879c45c565 100644
--- a/lib/irb/ruby-lex.rb
+++ b/lib/irb/ruby-lex.rb
@@ -406,7 +406,7 @@ class RubyLex
if @lex_state != EXPR_END && @lex_state != EXPR_CLASS &&
(@lex_state != EXPR_ARG || @space_seen)
c = peek(0)
- if /\S/ =~ c && (/["'`]/ =~ c || /\w/ =~ c || c == "-")
+ if /\S/ =~ c && (/["'`]/ =~ c || /\w/ =~ c || c == "-" || c == "~")
tk = identify_here_document
end
end
@@ -855,7 +855,7 @@ class RubyLex
def identify_here_document
ch = getc
- if ch == "-"
+ if ch == "-" || ch == "~"
ch = getc
indent = true
end