Issue #11711 has been reported by Trevor Rosen.

----------------------------------------
Bug #11711: Documentation for ARGV behavior is incorrect
https://bugs.ruby-lang.org/issues/11711

* Author: Trevor Rosen
* Status: Open
* Priority: Normal
* Assignee: Trevor Rosen
* ruby -v: 2.2.3
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
http://ruby-doc.org/core-2.2.3/Object.html#ARGV

The above documentation states that ARGV[0] will contain the name of the Ruby program. While this is the behavior of ARGV in other places (C, Python, etc), it is *not* the behavior in Ruby.

In Ruby, ARGV[0] contains the name of the first argument supplied to the program's invocation.

To reproduce:

~~~
# argv-tester.rb
#!/usr/bin/env ruby

p ARGV[0]
~~~

Then execute with an argument:

~~~
$> ruby argv-tester.rb foo
foo
~~~

And without an argument:

~~~
$> ruby argv-tester.rb
nil
~~~




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