Project

General

Profile

Actions

Bug #20030

closed

`Ripper.tokenize('"\\C-あ"')` separates encoding valid string to encoding invalid string.

Added by tompng (tomoya ishida) 12 months ago. Updated 4 months ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 3.3.0dev (2023-11-30T16:23:25Z master d048bae96b) [x86_64-linux]
Backport:
[ruby-core:115549]

Description

Ripper.tokenize '"\\C-あ"' # or Ripper.tokenize "\"\\C-\u3042\""
# =>
["\"", "\x81", "\x82", "\""]

I expect all tokens to be valid_encoding if the source string is valid_encoding.

This is causing IRB crash when typing "\C-あ".

Updated by nobu (Nobuyoshi Nakada) 12 months ago

https://github.com/ruby/ruby/pull/9091
This fixes another ripper scanner event issue at a syntax error too.

Actions #2

Updated by nobu (Nobuyoshi Nakada) 12 months ago

  • Status changed from Open to Closed

Applied in changeset git|d503e1b95a40e45d7767e0175de60092de4ba54e.


[Bug #20030] dispatch invalid escaped character without ignoring it

Actions #3

Updated by nagachika (Tomoyuki Chikanaga) 4 months ago

  • Backport changed from 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN to 3.2: REQUIRED

Updated by nagachika (Tomoyuki Chikanaga) 4 months ago

  • Backport changed from 3.2: REQUIRED to 3.2: DONE
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0