82a19c4144
Fix HTTP response splitting in CGI. Fix ReDos vulnerability in URI. Fix ReDos vulnerability in Time. Make RDoc soft dependency in IRB. Rebased from latest Ruby 3.1 present in Fedora 37, commit: 4048f893da1d56ed65667e7f15405224653c83e2 Resolves: RHEL-5584 Resolves: CVE-2021-33621 Resolves: CVE-2023-28755 Resolves: CVE-2023-36617 Resolves: CVE-2023-28756 Resolves: RHEL-5615
503 lines
19 KiB
Diff
503 lines
19 KiB
Diff
--- ruby-3.1.3/gc.rbinc 2022-11-24 11:20:33.000000000 +0100
|
|
+++ ruby/gc.rbinc 2022-11-25 11:50:19.939820992 +0100
|
|
@@ -9,27 +9,27 @@
|
|
#include "builtin.h" /* for RB_BUILTIN_FUNCTION */
|
|
struct rb_execution_context_struct; /* in vm_core.h */
|
|
|
|
-static VALUE builtin_inline_class_277(struct rb_execution_context_struct *ec, const VALUE self)
|
|
+static VALUE builtin_inline_class_209(struct rb_execution_context_struct *ec, const VALUE self)
|
|
{
|
|
MAYBE_UNUSED(const VALUE) flag = rb_vm_lvar(ec, -3);
|
|
-#line 277 "gc.rb"
|
|
+#line 209 "gc.rb"
|
|
|
|
rb_objspace.flags.measure_gc = RTEST(flag) ? TRUE : FALSE;
|
|
return flag;
|
|
#line 20 "gc.rbinc"
|
|
}
|
|
|
|
-static VALUE builtin_inline_class_289(struct rb_execution_context_struct *ec, const VALUE self)
|
|
+static VALUE builtin_inline_class_221(struct rb_execution_context_struct *ec, const VALUE self)
|
|
{
|
|
-#line 289 "gc.rb"
|
|
+#line 221 "gc.rb"
|
|
return
|
|
RBOOL(rb_objspace.flags.measure_gc);
|
|
#line 28 "gc.rbinc"
|
|
}
|
|
|
|
-static VALUE builtin_inline_class_299(struct rb_execution_context_struct *ec, const VALUE self)
|
|
+static VALUE builtin_inline_class_231(struct rb_execution_context_struct *ec, const VALUE self)
|
|
{
|
|
-#line 299 "gc.rb"
|
|
+#line 231 "gc.rb"
|
|
return
|
|
ULL2NUM(rb_objspace.profile.total_time_ns);
|
|
#line 36 "gc.rbinc"
|
|
@@ -52,31 +52,6 @@
|
|
}
|
|
|
|
static void
|
|
-mjit_compile_invokebuiltin_for_gc_get_auto_compact(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
-{
|
|
- fprintf(f, " VALUE self = GET_SELF();\n");
|
|
- fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE);\n");
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == gc_get_auto_compact */\n", (VALUE)gc_get_auto_compact);
|
|
- fprintf(f, " val = f(ec, self);\n");
|
|
-}
|
|
-
|
|
-static void
|
|
-mjit_compile_invokebuiltin_for_gc_set_auto_compact(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
-{
|
|
- fprintf(f, " VALUE self = GET_SELF();\n");
|
|
- fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE, VALUE);\n");
|
|
- if (index == -1) {
|
|
- fprintf(f, " const VALUE *argv = &stack[%d];\n", stack_size - 1);
|
|
- }
|
|
- else {
|
|
- fprintf(f, " const unsigned int lnum = GET_ISEQ()->body->local_table_size;\n");
|
|
- fprintf(f, " const VALUE *argv = GET_EP() - lnum - VM_ENV_DATA_SIZE + 1 + %ld;\n", index);
|
|
- }
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == gc_set_auto_compact */\n", (VALUE)gc_set_auto_compact);
|
|
- fprintf(f, " val = f(ec, self, argv[0]);\n");
|
|
-}
|
|
-
|
|
-static void
|
|
mjit_compile_invokebuiltin_for_gc_enable(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
{
|
|
fprintf(f, " VALUE self = GET_SELF();\n");
|
|
@@ -161,40 +136,6 @@
|
|
}
|
|
|
|
static void
|
|
-mjit_compile_invokebuiltin_for_gc_compact_stats(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
-{
|
|
- fprintf(f, " VALUE self = GET_SELF();\n");
|
|
- fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE);\n");
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == gc_compact_stats */\n", (VALUE)gc_compact_stats);
|
|
- fprintf(f, " val = f(ec, self);\n");
|
|
-}
|
|
-
|
|
-static void
|
|
-mjit_compile_invokebuiltin_for_gc_compact(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
-{
|
|
- fprintf(f, " VALUE self = GET_SELF();\n");
|
|
- fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE);\n");
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == gc_compact */\n", (VALUE)gc_compact);
|
|
- fprintf(f, " val = f(ec, self);\n");
|
|
-}
|
|
-
|
|
-static void
|
|
-mjit_compile_invokebuiltin_for_gc_verify_compaction_references(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
-{
|
|
- fprintf(f, " VALUE self = GET_SELF();\n");
|
|
- fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE, VALUE, VALUE);\n");
|
|
- if (index == -1) {
|
|
- fprintf(f, " const VALUE *argv = &stack[%d];\n", stack_size - 2);
|
|
- }
|
|
- else {
|
|
- fprintf(f, " const unsigned int lnum = GET_ISEQ()->body->local_table_size;\n");
|
|
- fprintf(f, " const VALUE *argv = GET_EP() - lnum - VM_ENV_DATA_SIZE + 1 + %ld;\n", index);
|
|
- }
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == gc_verify_compaction_references */\n", (VALUE)gc_verify_compaction_references);
|
|
- fprintf(f, " val = f(ec, self, argv[0], argv[1]);\n");
|
|
-}
|
|
-
|
|
-static void
|
|
mjit_compile_invokebuiltin_for__bi0(FILE *f, long index, unsigned stack_size, bool inlinable_p)
|
|
{
|
|
fprintf(f, " VALUE self = GET_SELF();\n");
|
|
@@ -202,7 +143,7 @@
|
|
if (inlinable_p) {
|
|
fprintf(f, "%s", " {\n");
|
|
fprintf(f, "%s", " MAYBE_UNUSED(const VALUE) flag = rb_vm_lvar(ec, -3);\n");
|
|
- fprintf(f, "%s", "#line 277 \"gc.rb\"\n");
|
|
+ fprintf(f, "%s", "#line 209 \"gc.rb\"\n");
|
|
fprintf(f, "%s", " \n");
|
|
fprintf(f, "%s", " rb_objspace.flags.measure_gc = RTEST(flag) ? TRUE : FALSE;\n");
|
|
fprintf(f, "%s", " return flag;\n");
|
|
@@ -211,7 +152,7 @@
|
|
fprintf(f, "%s", " \n");
|
|
return;
|
|
}
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == builtin_inline_class_277 */\n", (VALUE)builtin_inline_class_277);
|
|
+ fprintf(f, " func f = (func)%"PRIuVALUE"; /* == builtin_inline_class_209 */\n", (VALUE)builtin_inline_class_209);
|
|
fprintf(f, " val = f(ec, self);\n");
|
|
}
|
|
|
|
@@ -222,7 +163,7 @@
|
|
fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE);\n");
|
|
if (inlinable_p) {
|
|
fprintf(f, "%s", " {\n");
|
|
- fprintf(f, "%s", "#line 289 \"gc.rb\"\n");
|
|
+ fprintf(f, "%s", "#line 221 \"gc.rb\"\n");
|
|
fprintf(f, "%s", " return \n");
|
|
fprintf(f, "%s", " RBOOL(rb_objspace.flags.measure_gc);\n");
|
|
fprintf(f, "%s", "#line 52 \"gc.rbinc\"\n");
|
|
@@ -230,7 +171,7 @@
|
|
fprintf(f, "%s", " \n");
|
|
return;
|
|
}
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == builtin_inline_class_289 */\n", (VALUE)builtin_inline_class_289);
|
|
+ fprintf(f, " func f = (func)%"PRIuVALUE"; /* == builtin_inline_class_221 */\n", (VALUE)builtin_inline_class_221);
|
|
fprintf(f, " val = f(ec, self);\n");
|
|
}
|
|
|
|
@@ -241,7 +182,7 @@
|
|
fprintf(f, " typedef VALUE (*func)(rb_execution_context_t *, VALUE);\n");
|
|
if (inlinable_p) {
|
|
fprintf(f, "%s", " {\n");
|
|
- fprintf(f, "%s", "#line 299 \"gc.rb\"\n");
|
|
+ fprintf(f, "%s", "#line 231 \"gc.rb\"\n");
|
|
fprintf(f, "%s", " return \n");
|
|
fprintf(f, "%s", " ULL2NUM(rb_objspace.profile.total_time_ns);\n");
|
|
fprintf(f, "%s", "#line 59 \"gc.rbinc\"\n");
|
|
@@ -249,7 +190,7 @@
|
|
fprintf(f, "%s", " \n");
|
|
return;
|
|
}
|
|
- fprintf(f, " func f = (func)%"PRIuVALUE"; /* == builtin_inline_class_299 */\n", (VALUE)builtin_inline_class_299);
|
|
+ fprintf(f, " func f = (func)%"PRIuVALUE"; /* == builtin_inline_class_231 */\n", (VALUE)builtin_inline_class_231);
|
|
fprintf(f, " val = f(ec, self);\n");
|
|
}
|
|
|
|
@@ -258,21 +199,16 @@
|
|
// table definition
|
|
static const struct rb_builtin_function gc_table[] = {
|
|
RB_BUILTIN_FUNCTION(0, gc_start_internal, gc_start_internal, 4, mjit_compile_invokebuiltin_for_gc_start_internal),
|
|
- RB_BUILTIN_FUNCTION(1, gc_get_auto_compact, gc_get_auto_compact, 0, mjit_compile_invokebuiltin_for_gc_get_auto_compact),
|
|
- RB_BUILTIN_FUNCTION(2, gc_set_auto_compact, gc_set_auto_compact, 1, mjit_compile_invokebuiltin_for_gc_set_auto_compact),
|
|
- RB_BUILTIN_FUNCTION(3, gc_enable, gc_enable, 0, mjit_compile_invokebuiltin_for_gc_enable),
|
|
- RB_BUILTIN_FUNCTION(4, gc_disable, gc_disable, 0, mjit_compile_invokebuiltin_for_gc_disable),
|
|
- RB_BUILTIN_FUNCTION(5, gc_stress_get, gc_stress_get, 0, mjit_compile_invokebuiltin_for_gc_stress_get),
|
|
- RB_BUILTIN_FUNCTION(6, gc_stress_set_m, gc_stress_set_m, 1, mjit_compile_invokebuiltin_for_gc_stress_set_m),
|
|
- RB_BUILTIN_FUNCTION(7, gc_count, gc_count, 0, mjit_compile_invokebuiltin_for_gc_count),
|
|
- RB_BUILTIN_FUNCTION(8, gc_stat, gc_stat, 1, mjit_compile_invokebuiltin_for_gc_stat),
|
|
- RB_BUILTIN_FUNCTION(9, gc_latest_gc_info, gc_latest_gc_info, 1, mjit_compile_invokebuiltin_for_gc_latest_gc_info),
|
|
- RB_BUILTIN_FUNCTION(10, gc_compact_stats, gc_compact_stats, 0, mjit_compile_invokebuiltin_for_gc_compact_stats),
|
|
- RB_BUILTIN_FUNCTION(11, gc_compact, gc_compact, 0, mjit_compile_invokebuiltin_for_gc_compact),
|
|
- RB_BUILTIN_FUNCTION(12, gc_verify_compaction_references, gc_verify_compaction_references, 2, mjit_compile_invokebuiltin_for_gc_verify_compaction_references),
|
|
- RB_BUILTIN_FUNCTION(13, _bi0, builtin_inline_class_277, 0, mjit_compile_invokebuiltin_for__bi0),
|
|
- RB_BUILTIN_FUNCTION(14, _bi1, builtin_inline_class_289, 0, mjit_compile_invokebuiltin_for__bi1),
|
|
- RB_BUILTIN_FUNCTION(15, _bi2, builtin_inline_class_299, 0, mjit_compile_invokebuiltin_for__bi2),
|
|
+ RB_BUILTIN_FUNCTION(1, gc_enable, gc_enable, 0, mjit_compile_invokebuiltin_for_gc_enable),
|
|
+ RB_BUILTIN_FUNCTION(2, gc_disable, gc_disable, 0, mjit_compile_invokebuiltin_for_gc_disable),
|
|
+ RB_BUILTIN_FUNCTION(3, gc_stress_get, gc_stress_get, 0, mjit_compile_invokebuiltin_for_gc_stress_get),
|
|
+ RB_BUILTIN_FUNCTION(4, gc_stress_set_m, gc_stress_set_m, 1, mjit_compile_invokebuiltin_for_gc_stress_set_m),
|
|
+ RB_BUILTIN_FUNCTION(5, gc_count, gc_count, 0, mjit_compile_invokebuiltin_for_gc_count),
|
|
+ RB_BUILTIN_FUNCTION(6, gc_stat, gc_stat, 1, mjit_compile_invokebuiltin_for_gc_stat),
|
|
+ RB_BUILTIN_FUNCTION(7, gc_latest_gc_info, gc_latest_gc_info, 1, mjit_compile_invokebuiltin_for_gc_latest_gc_info),
|
|
+ RB_BUILTIN_FUNCTION(8, _bi0, builtin_inline_class_209, 0, mjit_compile_invokebuiltin_for__bi0),
|
|
+ RB_BUILTIN_FUNCTION(9, _bi1, builtin_inline_class_221, 0, mjit_compile_invokebuiltin_for__bi1),
|
|
+ RB_BUILTIN_FUNCTION(10, _bi2, builtin_inline_class_231, 0, mjit_compile_invokebuiltin_for__bi2),
|
|
RB_BUILTIN_FUNCTION(-1, NULL, NULL, 0, 0),
|
|
};
|
|
|
|
@@ -282,8 +218,6 @@
|
|
COMPILER_WARNING_ERROR(-Wincompatible-pointer-types)
|
|
#endif
|
|
if (0) rb_builtin_function_check_arity4(gc_start_internal);
|
|
- if (0) rb_builtin_function_check_arity0(gc_get_auto_compact);
|
|
- if (0) rb_builtin_function_check_arity1(gc_set_auto_compact);
|
|
if (0) rb_builtin_function_check_arity0(gc_enable);
|
|
if (0) rb_builtin_function_check_arity0(gc_disable);
|
|
if (0) rb_builtin_function_check_arity0(gc_stress_get);
|
|
@@ -291,12 +225,9 @@
|
|
if (0) rb_builtin_function_check_arity0(gc_count);
|
|
if (0) rb_builtin_function_check_arity1(gc_stat);
|
|
if (0) rb_builtin_function_check_arity1(gc_latest_gc_info);
|
|
- if (0) rb_builtin_function_check_arity0(gc_compact_stats);
|
|
- if (0) rb_builtin_function_check_arity0(gc_compact);
|
|
- if (0) rb_builtin_function_check_arity2(gc_verify_compaction_references);
|
|
- if (0) rb_builtin_function_check_arity0(builtin_inline_class_277);
|
|
- if (0) rb_builtin_function_check_arity0(builtin_inline_class_289);
|
|
- if (0) rb_builtin_function_check_arity0(builtin_inline_class_299);
|
|
+ if (0) rb_builtin_function_check_arity0(builtin_inline_class_209);
|
|
+ if (0) rb_builtin_function_check_arity0(builtin_inline_class_221);
|
|
+ if (0) rb_builtin_function_check_arity0(builtin_inline_class_231);
|
|
COMPILER_WARNING_POP
|
|
|
|
// load
|
|
--- ruby-3.1.3/miniprelude.c 2022-11-24 11:20:33.000000000 +0100
|
|
+++ ruby/miniprelude.c 2022-11-25 11:50:20.012820803 +0100
|
|
@@ -545,11 +545,10 @@
|
|
|
|
static const char prelude_name2[] = "<internal:gc>";
|
|
static const struct {
|
|
- char L0[479]; /* 1..58 */
|
|
- char L58[508]; /* 59..204 */
|
|
- char L204[504]; /* 205..275 */
|
|
- char L275[490]; /* 276..306 */
|
|
- char L306[128]; /* 307..312 */
|
|
+ char L0[492]; /* 1..70 */
|
|
+ char L70[468]; /* 71..197 */
|
|
+ char L197[470]; /* 198..237 */
|
|
+ char L237[211]; /* 238..244 */
|
|
} prelude_code2 = {
|
|
#line 1 "gc.rb"
|
|
""/* for gc.c */
|
|
@@ -593,29 +592,6 @@
|
|
" end\n"
|
|
"\n"
|
|
"\n"/* call-seq: */
|
|
-"\n"/* GC.auto_compact -> true or false */
|
|
-"\n"/* */
|
|
-"\n"/* Returns whether or not automatic compaction has been enabled. */
|
|
-"\n"/* */
|
|
-" def self.auto_compact\n"
|
|
-" Primitive.gc_get_auto_compact\n"
|
|
-" end\n"
|
|
-"\n"
|
|
-"\n"/* call-seq: */
|
|
-"\n"/* GC.auto_compact = flag */
|
|
-"\n"/* */
|
|
-"\n"/* Updates automatic compaction mode. */
|
|
-"\n"/* */
|
|
-"\n"/* When enabled, the compactor will execute on every major collection. */
|
|
-"\n"/* */
|
|
-"\n"/* Enabling compaction will degrade performance on major collections. */
|
|
-" def self.auto_compact=(flag)\n"
|
|
-,
|
|
-#line 59 "gc.rb"
|
|
-" Primitive.gc_set_auto_compact(flag)\n"
|
|
-" end\n"
|
|
-"\n"
|
|
-"\n"/* call-seq: */
|
|
"\n"/* GC.enable -> true or false */
|
|
"\n"/* */
|
|
"\n"/* Enables garbage collection, returning +true+ if garbage */
|
|
@@ -645,6 +621,8 @@
|
|
"\n"/* GC.stress -> integer, true or false */
|
|
"\n"/* */
|
|
"\n"/* Returns current status of GC stress mode. */
|
|
+,
|
|
+#line 71 "gc.rb"
|
|
" def self.stress\n"
|
|
" Primitive.gc_stress_get\n"
|
|
" end\n"
|
|
@@ -758,8 +736,6 @@
|
|
"\n"/* GC.latest_gc_info(:major_by) -> :malloc */
|
|
"\n"/* */
|
|
"\n"/* Returns information about the most recent garbage collection. */
|
|
-,
|
|
-#line 205 "gc.rb"
|
|
"\n"/* */
|
|
"\n"/* If the optional argument, hash, is given, */
|
|
"\n"/* it is overwritten and returned. */
|
|
@@ -768,59 +744,14 @@
|
|
" Primitive.gc_latest_gc_info hash_or_key\n"
|
|
" end\n"
|
|
"\n"
|
|
-"\n"/* call-seq: */
|
|
-"\n"/* GC.latest_compact_info -> {:considered=>{:T_CLASS=>11}, :moved=>{:T_CLASS=>11}} */
|
|
-"\n"/* */
|
|
-"\n"/* Returns information about object moved in the most recent GC compaction. */
|
|
-"\n"/* */
|
|
-"\n"/* The returned hash has two keys :considered and :moved. The hash for */
|
|
-"\n"/* :considered lists the number of objects that were considered for movement */
|
|
-"\n"/* by the compactor, and the :moved hash lists the number of objects that */
|
|
-"\n"/* were actually moved. Some objects can't be moved (maybe they were pinned) */
|
|
-"\n"/* so these numbers can be used to calculate compaction efficiency. */
|
|
-" def self.latest_compact_info\n"
|
|
-" Primitive.gc_compact_stats\n"
|
|
-" end\n"
|
|
-"\n"
|
|
-"\n"/* call-seq: */
|
|
-"\n"/* GC.compact */
|
|
-"\n"/* */
|
|
-"\n"/* This function compacts objects together in Ruby's heap. It eliminates */
|
|
-"\n"/* unused space (or fragmentation) in the heap by moving objects in to that */
|
|
-"\n"/* unused space. This function returns a hash which contains statistics about */
|
|
-"\n"/* which objects were moved. See `GC.latest_gc_info` for details about */
|
|
-"\n"/* compaction statistics. */
|
|
-"\n"/* */
|
|
-"\n"/* This method is implementation specific and not expected to be implemented */
|
|
-"\n"/* in any implementation besides MRI. */
|
|
-" def self.compact\n"
|
|
-" Primitive.gc_compact\n"
|
|
-" end\n"
|
|
-"\n"
|
|
-"\n"/* call-seq: */
|
|
-"\n"/* GC.verify_compaction_references(toward: nil, double_heap: false) -> hash */
|
|
-"\n"/* */
|
|
-"\n"/* Verify compaction reference consistency. */
|
|
-"\n"/* */
|
|
-"\n"/* This method is implementation specific. During compaction, objects that */
|
|
-"\n"/* were moved are replaced with T_MOVED objects. No object should have a */
|
|
-"\n"/* reference to a T_MOVED object after compaction. */
|
|
-"\n"/* */
|
|
-"\n"/* This function doubles the heap to ensure room to move all objects, */
|
|
-"\n"/* compacts the heap to make sure everything moves, updates all references, */
|
|
-"\n"/* then performs a full GC. If any object contains a reference to a T_MOVED */
|
|
-"\n"/* object, that object should be pushed on the mark stack, and will */
|
|
-"\n"/* make a SEGV. */
|
|
-" def self.verify_compaction_references(toward: nil, double_heap: false)\n"
|
|
-" Primitive.gc_verify_compaction_references(double_heap, toward == :empty)\n"
|
|
-" end\n"
|
|
-"\n"
|
|
"\n"/* call-seq: */
|
|
"\n"/* GC.using_rvargc? -> true or false */
|
|
"\n"/* */
|
|
"\n"/* Returns true if using experimental feature Variable Width Allocation, false */
|
|
"\n"/* otherwise. */
|
|
" def self.using_rvargc?\n"/* :nodoc: */
|
|
+,
|
|
+#line 198 "gc.rb"
|
|
" GC::INTERNAL_CONSTANTS[:SIZE_POOL_COUNT] > 1\n"
|
|
" end\n"
|
|
"\n"
|
|
@@ -831,8 +762,6 @@
|
|
"\n"/* Enable to measure GC time. */
|
|
"\n"/* You can get the result with <tt>GC.stat(:time)</tt>. */
|
|
"\n"/* Note that GC time measurement can cause some performance overhead. */
|
|
-,
|
|
-#line 276 "gc.rb"
|
|
" def self.measure_total_time=(flag)\n"
|
|
" Primitive.cstmt! %{\n"
|
|
" rb_objspace.flags.measure_gc = RTEST(flag) ? TRUE : FALSE;\n"
|
|
@@ -863,15 +792,15 @@
|
|
"end\n"
|
|
"\n"
|
|
"module ObjectSpace\n"
|
|
-" def garbage_collect full_mark: true, immediate_mark: true, immediate_sweep: true\n"
|
|
,
|
|
-#line 307 "gc.rb"
|
|
+#line 238 "gc.rb"
|
|
+" def garbage_collect full_mark: true, immediate_mark: true, immediate_sweep: true\n"
|
|
" Primitive.gc_start_internal full_mark, immediate_mark, immediate_sweep, false\n"
|
|
" end\n"
|
|
"\n"
|
|
" module_function :garbage_collect\n"
|
|
"end\n"
|
|
-#line 875 "miniprelude.c"
|
|
+#line 804 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name3[] = "<internal:numeric>";
|
|
@@ -1223,7 +1152,7 @@
|
|
" end\n"
|
|
"\n"
|
|
"end\n"
|
|
-#line 1227 "miniprelude.c"
|
|
+#line 1156 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name4[] = "<internal:io>";
|
|
@@ -1354,7 +1283,7 @@
|
|
" Primitive.io_write_nonblock(buf, exception)\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 1358 "miniprelude.c"
|
|
+#line 1287 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name5[] = "<internal:marshal>";
|
|
@@ -1402,7 +1331,7 @@
|
|
" alias restore load\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 1406 "miniprelude.c"
|
|
+#line 1335 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name6[] = "<internal:pack>";
|
|
@@ -1724,7 +1653,7 @@
|
|
" Primitive.pack_unpack1(fmt, offset)\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 1728 "miniprelude.c"
|
|
+#line 1657 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name7[] = "<internal:trace_point>";
|
|
@@ -2111,7 +2040,7 @@
|
|
" Primitive.tracepoint_attr_instruction_sequence\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 2115 "miniprelude.c"
|
|
+#line 2044 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name8[] = "<internal:warning>";
|
|
@@ -2172,7 +2101,7 @@
|
|
" Primitive.rb_warn_m(msgs, uplevel, category)\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 2176 "miniprelude.c"
|
|
+#line 2105 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name9[] = "<internal:array>";
|
|
@@ -2249,7 +2178,7 @@
|
|
" end\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 2253 "miniprelude.c"
|
|
+#line 2182 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name10[] = "<internal:kernel>";
|
|
@@ -2438,7 +2367,7 @@
|
|
" end\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 2442 "miniprelude.c"
|
|
+#line 2371 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name11[] = "<internal:ractor>";
|
|
@@ -3309,7 +3238,7 @@
|
|
" }\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 3313 "miniprelude.c"
|
|
+#line 3242 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name12[] = "<internal:timev>";
|
|
@@ -3632,7 +3561,7 @@
|
|
" Primitive.time_init_args(year, mon, mday, hour, min, sec, zone)\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 3636 "miniprelude.c"
|
|
+#line 3565 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name13[] = "<internal:nilclass>";
|
|
@@ -3665,7 +3594,7 @@
|
|
" return 0.0\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 3669 "miniprelude.c"
|
|
+#line 3598 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name14[] = "<internal:prelude>";
|
|
@@ -3695,7 +3624,7 @@
|
|
"\n"
|
|
" private :pp\n"
|
|
"end\n"
|
|
-#line 3699 "miniprelude.c"
|
|
+#line 3628 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name15[] = "<internal:gem_prelude>";
|
|
@@ -3722,7 +3651,7 @@
|
|
"rescue LoadError\n"
|
|
" warn \"`did_you_mean' was not loaded.\"\n"
|
|
"end if defined?(DidYouMean)\n"
|
|
-#line 3726 "miniprelude.c"
|
|
+#line 3655 "miniprelude.c"
|
|
};
|
|
|
|
static const char prelude_name16[] = "<internal:yjit>";
|
|
@@ -4063,7 +3992,7 @@
|
|
" end\n"
|
|
" end\n"
|
|
"end\n"
|
|
-#line 4067 "miniprelude.c"
|
|
+#line 3996 "miniprelude.c"
|
|
};
|
|
|
|
COMPILER_WARNING_POP
|