ruby/bootstraptest
ko1 c39bdb798d `$SAFE` as a process global state. [Feature #14250]
* vm_core.h (rb_vm_t): move `rb_execution_context_t::safe_level` to
  `rb_vm_t::safe_level_` because `$SAFE` is a process (VM) global state.

* vm_core.h (rb_proc_t): remove `rb_proc_t::safe_level` because `Proc`
  objects don't need to keep `$SAFE` at the creation.
  Also make `is_from_method` and `is_lambda` as 1 bit fields.

* cont.c (cont_restore_thread): no need to keep `$SAFE` for Continuation.

* eval.c (ruby_cleanup): use `rb_set_safe_level_force()` instead of access
  `vm->safe_level_` directly.

* eval_jump.c: End procs `END{}` doesn't keep `$SAFE`.

* proc.c (proc_dup): removed and introduce `rb_proc_dup` in vm.c.

* safe.c (rb_set_safe_level): don't check `$SAFE` 1 -> 0 changes.

* safe.c (safe_setter): use `rb_set_safe_level()`.

* thread.c (rb_thread_safe_level): `Thread#safe_level` returns `$SAFE`.
  It should be obsolete.

* transcode.c (load_transcoder_entry): `rb_safe_level()` only returns
  0 or 1 so that this check is not needed.

* vm.c (vm_proc_create_from_captured): don't need to keep `$SAFE` for Proc.

* vm.c (rb_proc_create): renamed to `proc_create`.

* vm.c (rb_proc_dup): moved from proc.c.

* vm.c (vm_invoke_proc): do not need to set and restore `$SAFE`
  for `Proc#call`.

* vm_eval.c (rb_eval_cmd): rename a local variable to represent clearer
  meaning.

* lib/drb/drb.rb: restore `$SAFE`.

* lib/erb.rb: restore `$SAFE`, too.

* test/lib/leakchecker.rb: check `$SAFE == 0` at the end of tests.

* test/rubygems/test_gem.rb: do not set `$SAFE = 1`.

* bootstraptest/test_proc.rb: catch up this change.

* spec/ruby/optional/capi/string_spec.rb: ditto.

* test/bigdecimal/test_bigdecimal.rb: ditto.

* test/fiddle/test_func.rb: ditto.

* test/fiddle/test_handle.rb: ditto.

* test/net/imap/test_imap_response_parser.rb: ditto.

* test/pathname/test_pathname.rb: ditto.

* test/readline/test_readline.rb: ditto.

* test/ruby/test_file.rb: ditto.

* test/ruby/test_optimization.rb: ditto.

* test/ruby/test_proc.rb: ditto.

* test/ruby/test_require.rb: ditto.

* test/ruby/test_thread.rb: ditto.

* test/rubygems/test_gem_specification.rb: ditto.

* test/test_tempfile.rb: ditto.

* test/test_tmpdir.rb: ditto.

* test/win32ole/test_win32ole.rb: ditto.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-28 20:09:24 +00:00
..
pending.rb * KNOWNBUGS.rb, bootstraptest/pending.rb: move a bug (?) to pending. 2008-06-19 16:08:16 +00:00
runner.rb show the location at intterrupted 2017-11-06 07:35:37 +00:00
test_attr.rb * bootstraptest/test_attr.rb: moved test for [ruby-core:14641]. 2008-01-17 16:59:23 +00:00
test_autoload.rb * bootstraptest/test_autoload.rb, bootstraptest/test_method.rb: 2013-06-13 02:01:42 +00:00
test_block.rb vm_insnhelper.c: break from nested rescue 2015-01-23 14:57:08 +00:00
test_class.rb vm.c: initialize defined_module_hash early 2013-10-13 11:59:27 +00:00
test_eval.rb Use Integer instead of Fixnum and Bignum. 2016-05-17 13:15:57 +00:00
test_exception.rb * bootstrap/test_exception.rb: fix a last committed test. 2012-08-08 08:11:12 +00:00
test_finalizer.rb * gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers 2008-08-06 11:48:30 +00:00
test_flip.rb * bootstraptest/test_flip.rb: new test for flip-flop operator. 2007-07-10 06:57:56 +00:00
test_flow.rb vm.c: rewrite all catch points 2012-11-02 19:14:24 +00:00
test_fork.rb * bootstraptest/test_fork.rb ([ruby-dev:37934]): :NPROC (RLIMIT_NPROC) 2015-11-10 08:50:06 +00:00
test_gc.rb * bootstraptest/test_gc.rb: added tests based on [ruby-dev:39484] 2009-10-16 09:42:20 +00:00
test_insns.rb bootstraptest/test_insns.rb: Fix typo 2017-05-27 13:54:09 +00:00
test_io.rb Drop to support NaCl platform. 2017-10-23 05:56:25 +00:00
test_jump.rb * remove trailing spaces. 2011-05-15 11:55:52 +00:00
test_literal.rb Drop to support NaCl platform. 2017-10-23 05:56:25 +00:00
test_literal_suffix.rb parse.y: parse precisely 2013-08-02 14:14:55 +00:00
test_load.rb * file.c (file_load_ok): checks if regular file. [ruby-dev:38097] 2009-02-27 06:49:43 +00:00
test_marshal.rb bootstraptest/test_marshal.rb: test updated 2008-03-01 04:07:26 +00:00
test_massign.rb * insns.def (expandarray): fix stack inc. 2008-01-23 17:17:23 +00:00
test_method.rb relax error message format 2015-10-24 06:42:22 +00:00
test_objectspace.rb Use qualified names 2016-08-30 06:22:30 +00:00
test_proc.rb `$SAFE` as a process global state. [Feature #14250] 2017-12-28 20:09:24 +00:00
test_string.rb * string.c (str_discard): does not free for STR_NOFREE string. 2015-02-13 13:06:58 +00:00
test_struct.rb * bootstraptest/test_struct.rb: some test moved from test to shut 2008-03-13 16:40:33 +00:00
test_syntax.rb parse.y: condition node 2015-01-29 13:22:39 +00:00
test_thread.rb Use qualified names 2016-08-30 06:22:30 +00:00