From: "nobu (Nobuyoshi Nakada) via ruby-core" Date: 2024-12-10T16:33:32+00:00 Subject: [ruby-core:120165] [Ruby master Bug#20938] Percent String literal delimiter impacts string contents with parse.y Issue #20938 has been updated by nobu (Nobuyoshi Nakada). Status changed from Open to Assigned Assignee set to prism ---------------------------------------- Bug #20938: Percent String literal delimiter impacts string contents with parse.y https://bugs.ruby-lang.org/issues/20938#change-110923 * Author: eightbitraptor (Matt V-H) * Status: Assigned * Assignee: prism * ruby -v: ruby 3.4.0dev (2024-11-28T09:19:02Z master 31a3e87777) +PRISM +GC [arm64-darwin24] * Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN ---------------------------------------- The following code defines 2 programs that declare string literals using `%` and a single byte delimiter. I'd expect these programs to have the same output no matter which delimiter is used. With Prism, both programs output the same value (the string content: `1_\n`), but using parse.y the output values differ depending on the delimiter. Are the outputs supposed to be the same or different? ``` program1 = "%\n1_\r\n\n" # => parse.y: 1_, prism: "1_\n" program2 = "%'1_\r\n'" # => "1_\n" p eval(program1) p eval(program2) ``` [[Github Issue]](https://github.com/ruby/prism/pull/3290) -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/