fixes#712. c.f. [ruby-dev:37516].
* lib/erb.rb (ERB::Compiler#compile): recognizes magic comments.
returns a pair of compiled script and its script encoding.
* lib/erb.rb (ERB#set_eoutvar): make generated scripts return a
string in correct encoding.
* lib/erb.rb (ERB#def_method): use Kernel#eval for encoding-awareness
of the evaluated string.
* bin/erb.rb (ERB::Main.run): adds -E and -U options.
String is no longer Enumerable.
* man/erb.1: new manapage.
* test/erb/test_erb_m17n.rb: new test case for m17n features.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* env.h: move struct METHOD and struct BLOCK from eval.c to
support NodeWrap and ParseTree.
* rubysig.h (CHECK_INTS): prevent signal handler to run during
critical section. [ruby-core:04039]
* eval.c (load_wait): need not to call rb_thread_schedule()
explicitly. [ruby-core:04039]
* eval.c (rb_thread_schedule): clear rb_thread_critical.
[ruby-core:04039]
* eval.c (rb_obj_instance_exec): create instance_exec and
module_exec which pass arguments to the block.
* eval.c (rb_f_funcall): rename fcall to funcall to follow
tradition.
* st.c (st_free_table): do not call free() but xfree().
[ruby-core:06205]
* eval.c (splat_value): call rb_Array() to convert svalue to
values. [ruby-dev:27397]
* lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
not be parsed correctly. A patch from August Z. Flatby
(augustzf) in [ruby-Patches-2595]. [ruby-core:06183]
* object.c (rb_Array): Array() to raise error for objects without
to_ary, nor to_a.
* object.c (nil_to_a): revert NilClass#to_a.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e