The following commit introduces a macro called SET_ALLOW_PRIVATE to be used by several instructions in vm/instructions.def. That macro is used to reset the side-effect of the allow_private instruction when executed by the interpreter. 17d0fa7 Add allow_private instruction to allow private sends But, since the following commit, The allow_private instruction becomes effectively no-op when executed. In turn, SET_ALLOW_PRIVATE becomes meaningless too. The handling of allow_private is moved to VMMethod::initialize_caches in vm/vmmethod.cpp. 4cecf54 Introduce InlineCache, a SendSite replacement Thus, remove the SET_ALLOW_PRIVATE macros, and really make the allow_private instruction no-op when executed by the interpreter.
The code prior to this change and 3986181 appeared to have this intent, however it had a couple of issues: 1. It will have dereferenced an iterator that points past the end of the map. 2. It didn't return after updating the entry value.
Fix file descriptors leak in spec/ruby/library/net/http/http
ConfigMap has been changed to a vector to respect order of insertion when iterating.
Math::gamma fix and spec improvements
Fix 1.9 array slice when the end of the range is >= array.size
… That's what ISO C99 tgamma does.
…les for clarity.
… n in 24..30 the tolerance must be much bigger.
…ter match labels of the cases.
…ath::gamma is only in 1.9 and up and the cases are already enclosed in this guard.