Issue #6251 has been updated by ko1 (Koichi Sasada).

Target version changed from 2.0.0 to Next Major

Sorry, I can't implement it until 2.0 release.

----------------------------------------
Feature #6251: Magic comments for compile options
https://bugs.ruby-lang.org/issues/6251#change-31684

Author: shugo (Shugo Maeda)
Status: Assigned
Priority: Normal
Assignee: ko1 (Koichi Sasada)
Category: core
Target version: Next Major


Currently, compile options can be set by RubyVM::InstructionSequence.compile_option=.
However, it takes effect only on code compiled after the options are set.

So, how about to add new magic comments for compile options?
For example, the following code sets the options tailcall_optimization and trace_instruction.

  # -*- tailcall-optimization: true; trace-instruction: false -*-
  
  def fact(n, i = 1)
    if n == 0
      i
    else
      fact(n - 1, n * i)
    end
  end
  p fact(10000)

With the attached patch, magic comments in the main script sets global options,
and magic comments in a required library are effective only in that library.




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