jihg です。みんなごめんなさい。

バグです。グローバル変数とメソッド名を考慮してませんでした。

[^\w@] を [^\w@$\.] に変えてください。

さらにくだらないバグが...

×	reEnd = /^#{sREEnd}end\b"/
○	reEnd = /^#{sREEnd}end\b/

信用なくすなあ。はずかしい。

※挙動サンプルの出力、見逃してるし。

必須じゃないけど、追加の挙動サンプル。

  def func(a)
    a << "break!"
    end
  a << "break!"
  
  def func(a);a<<"break!";end
  a << "break!"
  
  def func(a)
    eval <<EOS
      def foo(b)
        a << "break!"
        b << "break!"
      end
  EOS
    a << "break!"
  end
  
  def func(a)
  if flag
    true
  end
    a << "break!"
  end
    a << "break!"
  
  def func(a
    a << "break!"
  end
    a << "break!"