[ruby-core:84353] [Ruby trunk Bug#14206] Null-byte ignored inside class/module/method bodies

From: nobu@...
Date: 2017-12-20 00:21:00 UTC
List: ruby-core #84353
Issue #14206 has been updated by nobu (Nobuyoshi Nakada).

Backport changed from 2.3: UNKNOWN, 2.4: UNKNOWN to 2.3: REQUIRED, 2.4: REQUIRED

It's a bug since 1.9, by "fluent style".

----------------------------------------
Bug #14206: Null-byte ignored inside class/module/method bodies
https://bugs.ruby-lang.org/issues/14206#change-68534

* Author: grddev (Gustav Munkby)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-darwin14]
* Backport: 2.3: REQUIRED, 2.4: REQUIRED
----------------------------------------
I would have expected the following code to not be accepted by the Ruby parser, but instead it acts as if the zero-byte wasn't part of the string.

~~~ ruby
eval("def m\n\0end")
~~~

Changing to a block to start with begin

~~~ ruby
eval("begin\n\0end")
~~~

Produces the expected syntax error

~~~
SyntaxError: (eval):2: syntax error, unexpected end-of-input
~~~



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next