datadog-ruby_core_source 3.3.7 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.datadog.md +9 -0
- data/README.md +8 -5
- data/datadog-ruby_core_source.gemspec +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/id.h +2 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/gc.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/proc.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/sanitizers.h +24 -36
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/ast.h +10 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/version.h +2 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/ractor_core.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/rubyparser.h +3 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/id.h +5 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/basic_operators.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/bits.h +82 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/cmdlineopt.h +0 -4
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/encoding.h +2 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/error.h +26 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/fixnum.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/gc.h +20 -9
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/hash.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/imemo.h +9 -13
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/io.h +2 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/parse.h +4 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/proc.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/ractor.h +4 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/re.h +2 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/sanitizers.h +43 -39
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/string.h +23 -10
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/struct.h +0 -8
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/symbol.h +2 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/thread.h +23 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/time.h +4 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/variable.h +0 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/vm.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/iseq.h +12 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/method.h +4 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/node.h +14 -3
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/ast.h +443 -3
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/defines.h +26 -8
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/diagnostic.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/extension.h +4 -4
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/options.h +47 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/prism.h +51 -4
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_buffer.h +10 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/version.h +2 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism_compile.h +11 -5
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ractor_core.h +6 -6
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/rubyparser.h +39 -9
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/thread_pthread.h +2 -3
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/vm_core.h +43 -30
- data/lib/datadog/ruby_core_source/version.rb +1 -1
- metadata +209 -209
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id_table.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/basic_operators.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/bits.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compar.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compile.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/complex.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/cont.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/dir.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enc.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/encoding.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/eval.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/file.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/fixnum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/imemo.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/inits.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/io.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/load.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/math.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/missing.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/object.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/process.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/ractor.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/random.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/range.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/rational.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/re.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/serial.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/signal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/string.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/struct.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/thread.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/time.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/util.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/variable.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/vm.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/iseq.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/method.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/parser_st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/parser_value.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/defines.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/diagnostic.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/pack.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/prism.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism_compile.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_none.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/thread_pthread.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/vm_core.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_debug.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_opts.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/check_type/check_type.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/container_of/container_of.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/list/list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/str/str.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/id_table.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/array.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/bignum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/class.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/compar.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/compile.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/compilers.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/complex.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/cont.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/dir.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/enc.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/enum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/enumerator.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/eval.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/file.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/inits.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/load.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/loadpath.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/math.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/missing.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/numeric.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/object.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/process.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/random.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/range.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/rational.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/ruby_parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/serial.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/signal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/static_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/transcode.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/util.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/warnings.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/parser_st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/parser_value.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/encoding.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/pack.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/prettyprint.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/regexp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/static_literals.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_char.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_constant_pool.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_integer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_memchr.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_newline_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_string.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ruby_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ruby_atomic.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/shape.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/thread_none.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/vm_debug.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/vm_opts.h +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7470c7abdc5d94bc72ee812550d229f64dba4c2dec7b4f60820dc37967c2cf2e
|
4
|
+
data.tar.gz: a504f8f22d8cc0de40f3a4fec72b0e185b323166a1057d7943c2943eed80994e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1b091fedb7e84e5d9afdb6e2c62f65a70f006e097b0db3b1bd72f701921b98799928afd34c841f5531448e2f2726d3fb620fc575d08853810698dee90c5ae5da
|
7
|
+
data.tar.gz: 1bfe4205e866f8c692350cb6563e664715f87eab4ebd965e2e59b6e7bbd096acc892683b83969f042896740fb43a8cd6eef5e2eaee78ba5ac11069378477528d
|
data/CHANGELOG.datadog.md
CHANGED
data/README.md
CHANGED
@@ -1,8 +1,10 @@
|
|
1
|
+
# `datadog-ruby_core_source`
|
2
|
+
|
1
3
|
## Description
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
Only Ruby 2.5
|
4
|
+
|
5
|
+
This gem is a fork of [debase-ruby\_core\_source](https://github.com/ruby-debug/debase-ruby_core_source/) for [dd-trace-rb](https://github.com/DataDog/dd-trace-rb).
|
6
|
+
|
7
|
+
Only Ruby 2.5 and 3.3+ Rubies are included [see here for more information on why](https://github.com/DataDog/dd-trace-rb/blob/master/ext/datadog_profiling_native_extension/NativeExtensionDesign.md#usage-of-private-vm-headers).
|
6
8
|
|
7
9
|
## Usage
|
8
10
|
|
@@ -24,11 +26,12 @@ To add another ruby version's source to this gem's directory:
|
|
24
26
|
|
25
27
|
_Adding released versions_. `add_source` can use a pre-downloaded .tgz file. Use TGZ_FILE_NAME to pass it. Note that the PATCHLEVEL variable is optional because `add_source` can extract the patch level from version.h of the downloaded sources.
|
26
28
|
|
27
|
-
|
29
|
+
Then, run the `find_includes.rb` to minimize the shipped files. See comments on that file for how to use it, and/or reference previous PRs.
|
28
30
|
|
29
31
|
## Credits
|
30
32
|
|
31
33
|
The following credits are in the upstream `debase-ruby_core_source` README:
|
34
|
+
|
32
35
|
* @valich for 2.5.0-preview1 headers and src-based ruby support
|
33
36
|
* @dirknilius for 2.2.3 headers
|
34
37
|
* @andremedeiros for 2.1.1 headers
|
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.description = %q{Provide Ruby core source files for C extensions that need them.}
|
13
13
|
s.license = "MIT"
|
14
14
|
s.required_rubygems_version = ">= 1.3.6"
|
15
|
-
s.required_ruby_version = '>= 2.
|
15
|
+
s.required_ruby_version = '>= 2.5.0'
|
16
16
|
s.extra_rdoc_files = [ "README.md"]
|
17
17
|
s.files = `git ls-files`.split("\n")
|
18
18
|
.reject { |fn| fn.include?('find_includes.rb') }
|
@@ -223,6 +223,7 @@ enum ruby_method_ids {
|
|
223
223
|
|
224
224
|
/* CONST tokens {{{ */
|
225
225
|
tTOKEN_CONST_BEGIN = tTOKEN_GLOBAL_END-1,
|
226
|
+
tRuby,
|
226
227
|
tTOKEN_CONST_END,
|
227
228
|
/* CONST tokens }}} */
|
228
229
|
|
@@ -330,6 +331,7 @@ enum ruby_method_ids {
|
|
330
331
|
|
331
332
|
/* CONST IDs {{{ */
|
332
333
|
#define DEFINE_CONSTID_FROM_TOKEN(n) id##n = TOKEN2CONSTID(t##n)
|
334
|
+
DEFINE_CONSTID_FROM_TOKEN(Ruby),
|
333
335
|
#undef DEFINE_CONSTID_FROM_TOKEN
|
334
336
|
/* CONST IDs }}} */
|
335
337
|
|
@@ -72,6 +72,7 @@ const char *rb_builtin_type_name(int t);
|
|
72
72
|
const char *rb_builtin_class_name(VALUE x);
|
73
73
|
PRINTF_ARGS(void rb_warn_deprecated(const char *fmt, const char *suggest, ...), 1, 3);
|
74
74
|
PRINTF_ARGS(void rb_warn_deprecated_to_remove(const char *removal, const char *fmt, const char *suggest, ...), 2, 4);
|
75
|
+
PRINTF_ARGS(void rb_warn_reserved_name(const char *removal, const char *fmt, ...), 2, 3);
|
75
76
|
#if RUBY_DEBUG
|
76
77
|
# include "ruby/version.h"
|
77
78
|
# define RUBY_VERSION_SINCE(major, minor) (RUBY_API_VERSION_CODE >= (major * 10000) + (minor) * 100)
|
@@ -110,6 +111,14 @@ rb_deprecated_method_to_be_removed(const char *removal)
|
|
110
111
|
RBIMPL_ATTR_DIAGNOSE_IF(RUBY_VERSION_STRING_SINCE(removal), "deprecated method to be removed", "error")
|
111
112
|
{
|
112
113
|
}
|
114
|
+
|
115
|
+
RBIMPL_ATTR_FORCEINLINE()
|
116
|
+
static void
|
117
|
+
rb_diagnose_reserved_name_at(const char *coming)
|
118
|
+
RBIMPL_ATTR_DIAGNOSE_IF(!RUBY_VERSION_isdigit(coming[0]), "malformed version number", "error")
|
119
|
+
RBIMPL_ATTR_DIAGNOSE_IF(RUBY_VERSION_STRING_SINCE(coming), "reserved name already in use", "error")
|
120
|
+
{
|
121
|
+
}
|
113
122
|
# else
|
114
123
|
RBIMPL_ATTR_ERROR(("deprecated"))
|
115
124
|
void rb_deprecated_method_to_be_removed(const char *);
|
@@ -117,16 +126,32 @@ void rb_deprecated_method_to_be_removed(const char *);
|
|
117
126
|
(sizeof(char[1-2*(!RUBY_VERSION_isdigit(removal[0]) || RUBY_VERSION_STRING_SINCE(removal))])!=1 ? \
|
118
127
|
rb_deprecated_method_to_be_removed(removal) : \
|
119
128
|
RBIMPL_ASSERT_NOTHING)
|
129
|
+
|
130
|
+
RBIMPL_ATTR_ERROR(("deprecated"))
|
131
|
+
void rb_diagnose_reserved_name_at(const char *);
|
132
|
+
# define rb_diagnose_reserved_name_at(coming) \
|
133
|
+
(sizeof(char[1-2*(!RUBY_VERSION_isdigit(coming[0]) || RUBY_VERSION_STRING_SINCE(coming))])!=1 ? \
|
134
|
+
rb_diagnose_reserved_name_at(coming) : \
|
135
|
+
RBIMPL_ASSERT_NOTHING)
|
136
|
+
|
120
137
|
# endif
|
121
138
|
# define rb_warn_deprecated_to_remove_at(removal, ...) \
|
122
139
|
(rb_deprecated_method_to_be_removed(#removal), \
|
123
140
|
rb_warn_deprecated_to_remove(#removal, __VA_ARGS__))
|
141
|
+
|
142
|
+
# define rb_warn_reserved_name_at(coming, ...) \
|
143
|
+
(rb_diagnose_reserved_name_at(#coming), \
|
144
|
+
rb_warn_reserved_name(#coming, __VA_ARGS__))
|
124
145
|
# endif
|
125
146
|
#endif
|
126
147
|
#ifndef rb_warn_deprecated_to_remove_at
|
127
148
|
# define rb_warn_deprecated_to_remove_at(removal, ...) \
|
128
149
|
rb_warn_deprecated_to_remove(#removal, __VA_ARGS__)
|
129
150
|
#endif
|
151
|
+
#ifndef rb_warn_reserved_name_at
|
152
|
+
# define rb_warn_reserved_name_at(removal, ...) \
|
153
|
+
rb_warn_reserved_name(#removal, __VA_ARGS__)
|
154
|
+
#endif
|
130
155
|
#ifndef RUBY_VERSION_SINCE
|
131
156
|
# define RUBY_VERSION_SINCE(major, minor) 0
|
132
157
|
#endif
|
@@ -160,6 +185,7 @@ NORETURN(static inline void rb_key_err_raise(VALUE mesg, VALUE recv, VALUE name)
|
|
160
185
|
static inline void Check_Type(VALUE v, enum ruby_value_type t);
|
161
186
|
static inline bool rb_typeddata_is_instance_of_inline(VALUE obj, const rb_data_type_t *data_type);
|
162
187
|
#define rb_typeddata_is_instance_of rb_typeddata_is_instance_of_inline
|
188
|
+
void rb_bug_without_die(const char *fmt, ...);
|
163
189
|
|
164
190
|
RUBY_SYMBOL_EXPORT_BEGIN
|
165
191
|
/* error.c (export) */
|
@@ -227,6 +227,7 @@ void rb_objspace_reachable_objects_from(VALUE obj, void (func)(VALUE, void *), v
|
|
227
227
|
void rb_objspace_reachable_objects_from_root(void (func)(const char *category, VALUE, void *), void *data);
|
228
228
|
int rb_objspace_internal_object_p(VALUE obj);
|
229
229
|
int rb_objspace_garbage_object_p(VALUE obj);
|
230
|
+
bool rb_gc_pointer_to_heap_p(VALUE obj);
|
230
231
|
|
231
232
|
void rb_objspace_each_objects(
|
232
233
|
int (*callback)(void *start, void *end, size_t stride, void *data),
|
@@ -79,8 +79,9 @@ void rb_parser_string_free(rb_parser_t *p, rb_parser_string_t *str);
|
|
79
79
|
int rb_parser_dvar_defined_ref(struct parser_params*, ID, ID**);
|
80
80
|
ID rb_parser_internal_id(struct parser_params*);
|
81
81
|
int rb_parser_reg_fragment_check(struct parser_params*, rb_parser_string_t*, int);
|
82
|
-
int rb_reg_named_capture_assign_iter_impl(struct parser_params *p, const char *s, long len, rb_encoding *enc, NODE **succ_block, const rb_code_location_t *loc);
|
82
|
+
int rb_reg_named_capture_assign_iter_impl(struct parser_params *p, const char *s, long len, rb_encoding *enc, NODE **succ_block, const rb_code_location_t *loc, rb_parser_assignable_func assignable);
|
83
83
|
int rb_parser_local_defined(struct parser_params *p, ID id, const struct rb_iseq_struct *iseq);
|
84
|
+
NODE *rb_parser_assignable(struct parser_params *p, ID id, NODE *val, const YYLTYPE *loc);
|
84
85
|
|
85
86
|
RUBY_SYMBOL_EXPORT_END
|
86
87
|
|
@@ -23,6 +23,7 @@ VALUE rb_block_to_s(VALUE self, const struct rb_block *block, const char *additi
|
|
23
23
|
VALUE rb_callable_receiver(VALUE);
|
24
24
|
|
25
25
|
VALUE rb_func_proc_new(rb_block_call_func_t func, VALUE val);
|
26
|
+
VALUE rb_func_proc_dup(VALUE src_obj);
|
26
27
|
VALUE rb_func_lambda_new(rb_block_call_func_t func, VALUE val, int min_argc, int max_argc);
|
27
28
|
VALUE rb_iseq_location(const struct rb_iseq_struct *iseq);
|
28
29
|
VALUE rb_sym_to_proc(VALUE sym);
|
@@ -16,7 +16,7 @@
|
|
16
16
|
#endif
|
17
17
|
|
18
18
|
#ifdef HAVE_SANITIZER_ASAN_INTERFACE_H
|
19
|
-
# if __has_feature(address_sanitizer)
|
19
|
+
# if __has_feature(address_sanitizer) || defined(__SANITIZE_ADDRESS__)
|
20
20
|
# define RUBY_ASAN_ENABLED
|
21
21
|
# include <sanitizer/asan_interface.h>
|
22
22
|
# endif
|
@@ -119,26 +119,22 @@ asan_poison_memory_region(const volatile void *ptr, size_t size)
|
|
119
119
|
__asan_poison_memory_region(ptr, size);
|
120
120
|
}
|
121
121
|
|
122
|
-
/**
|
123
|
-
* This is a variant of asan_poison_memory_region that takes a VALUE.
|
124
|
-
*
|
125
|
-
* @param[in] obj target object.
|
126
|
-
*/
|
127
|
-
static inline void
|
128
|
-
asan_poison_object(VALUE obj)
|
129
|
-
{
|
130
|
-
MAYBE_UNUSED(struct RVALUE *) ptr = (void *)obj;
|
131
|
-
asan_poison_memory_region(ptr, SIZEOF_VALUE);
|
132
|
-
}
|
133
|
-
|
134
122
|
#ifdef RUBY_ASAN_ENABLED
|
135
123
|
#define asan_poison_object_if(ptr, obj) do { \
|
136
|
-
if (ptr)
|
124
|
+
if (ptr) rb_asan_poison_object(obj); \
|
137
125
|
} while (0)
|
138
126
|
#else
|
139
127
|
#define asan_poison_object_if(ptr, obj) ((void)(ptr), (void)(obj))
|
140
128
|
#endif
|
141
129
|
|
130
|
+
RUBY_SYMBOL_EXPORT_BEGIN
|
131
|
+
/**
|
132
|
+
* This is a variant of asan_poison_memory_region that takes a VALUE.
|
133
|
+
*
|
134
|
+
* @param[in] obj target object.
|
135
|
+
*/
|
136
|
+
void rb_asan_poison_object(VALUE obj);
|
137
|
+
|
142
138
|
/**
|
143
139
|
* This function predicates if the given object is fully addressable or not.
|
144
140
|
*
|
@@ -146,12 +142,17 @@ asan_poison_object(VALUE obj)
|
|
146
142
|
* @retval 0 the given object is fully addressable.
|
147
143
|
* @retval otherwise pointer to first such byte who is poisoned.
|
148
144
|
*/
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
145
|
+
void *rb_asan_poisoned_object_p(VALUE obj);
|
146
|
+
|
147
|
+
/**
|
148
|
+
* This is a variant of asan_unpoison_memory_region that takes a VALUE.
|
149
|
+
*
|
150
|
+
* @param[in] obj target object.
|
151
|
+
* @param[in] malloc_p if the memory region is like a malloc's return value or not.
|
152
|
+
*/
|
153
|
+
void rb_asan_unpoison_object(VALUE obj, bool newobj_p);
|
154
|
+
|
155
|
+
RUBY_SYMBOL_EXPORT_END
|
155
156
|
|
156
157
|
/**
|
157
158
|
* This function asserts that a (formally poisoned) memory region from ptr to
|
@@ -180,24 +181,11 @@ asan_unpoison_memory_region(const volatile void *ptr, size_t size, bool malloc_p
|
|
180
181
|
}
|
181
182
|
}
|
182
183
|
|
183
|
-
/**
|
184
|
-
* This is a variant of asan_unpoison_memory_region that takes a VALUE.
|
185
|
-
*
|
186
|
-
* @param[in] obj target object.
|
187
|
-
* @param[in] malloc_p if the memory region is like a malloc's return value or not.
|
188
|
-
*/
|
189
|
-
static inline void
|
190
|
-
asan_unpoison_object(VALUE obj, bool newobj_p)
|
191
|
-
{
|
192
|
-
MAYBE_UNUSED(struct RVALUE *) ptr = (void *)obj;
|
193
|
-
asan_unpoison_memory_region(ptr, SIZEOF_VALUE, newobj_p);
|
194
|
-
}
|
195
|
-
|
196
184
|
static inline void *
|
197
185
|
asan_unpoison_object_temporary(VALUE obj)
|
198
186
|
{
|
199
|
-
void *ptr =
|
200
|
-
|
187
|
+
void *ptr = rb_asan_poisoned_object_p(obj);
|
188
|
+
rb_asan_unpoison_object(obj, false);
|
201
189
|
return ptr;
|
202
190
|
}
|
203
191
|
|
@@ -205,7 +193,7 @@ static inline void *
|
|
205
193
|
asan_poison_object_restore(VALUE obj, void *ptr)
|
206
194
|
{
|
207
195
|
if (ptr) {
|
208
|
-
|
196
|
+
rb_asan_poison_object(obj);
|
209
197
|
}
|
210
198
|
return NULL;
|
211
199
|
}
|
@@ -7548,6 +7548,11 @@ typedef struct pm_until_node {
|
|
7548
7548
|
*/
|
7549
7549
|
pm_location_t keyword_loc;
|
7550
7550
|
|
7551
|
+
/**
|
7552
|
+
* UntilNode#do_keyword_loc
|
7553
|
+
*/
|
7554
|
+
pm_location_t do_keyword_loc;
|
7555
|
+
|
7551
7556
|
/**
|
7552
7557
|
* UntilNode#closing_loc
|
7553
7558
|
*/
|
@@ -7632,6 +7637,11 @@ typedef struct pm_while_node {
|
|
7632
7637
|
*/
|
7633
7638
|
pm_location_t keyword_loc;
|
7634
7639
|
|
7640
|
+
/**
|
7641
|
+
* WhileNode#do_keyword_loc
|
7642
|
+
*/
|
7643
|
+
pm_location_t do_keyword_loc;
|
7644
|
+
|
7635
7645
|
/**
|
7636
7646
|
* WhileNode#closing_loc
|
7637
7647
|
*/
|
@@ -14,7 +14,7 @@
|
|
14
14
|
/**
|
15
15
|
* The minor version of the Prism library as an int.
|
16
16
|
*/
|
17
|
-
#define PRISM_VERSION_MINOR
|
17
|
+
#define PRISM_VERSION_MINOR 2
|
18
18
|
|
19
19
|
/**
|
20
20
|
* The patch version of the Prism library as an int.
|
@@ -24,6 +24,6 @@
|
|
24
24
|
/**
|
25
25
|
* The version of the Prism library as a constant string.
|
26
26
|
*/
|
27
|
-
#define PRISM_VERSION "1.
|
27
|
+
#define PRISM_VERSION "1.2.0"
|
28
28
|
|
29
29
|
#endif
|
@@ -1171,6 +1171,8 @@ typedef struct parser_params rb_parser_t;
|
|
1171
1171
|
typedef struct rb_imemo_tmpbuf_struct rb_imemo_tmpbuf_t;
|
1172
1172
|
#endif
|
1173
1173
|
|
1174
|
+
typedef NODE *(*rb_parser_assignable_func)(struct parser_params *p, ID id, NODE *val, const rb_code_location_t *loc);
|
1175
|
+
|
1174
1176
|
#ifdef UNIVERSAL_PARSER
|
1175
1177
|
typedef struct rb_parser_config_struct {
|
1176
1178
|
/* Memory */
|
@@ -1188,7 +1190,7 @@ typedef struct rb_parser_config_struct {
|
|
1188
1190
|
|
1189
1191
|
// VALUE rb_suppress_tracing(VALUE (*func)(VALUE), VALUE arg);
|
1190
1192
|
VALUE (*compile_callback)(VALUE (*func)(VALUE), VALUE arg);
|
1191
|
-
NODE *(*reg_named_capture_assign)(struct parser_params* p, VALUE regexp, const rb_code_location_t *loc);
|
1193
|
+
NODE *(*reg_named_capture_assign)(struct parser_params* p, VALUE regexp, const rb_code_location_t *loc, rb_parser_assignable_func assignable);
|
1192
1194
|
|
1193
1195
|
/* Variable */
|
1194
1196
|
VALUE (*attr_get)(VALUE obj, ID id);
|
@@ -110,6 +110,7 @@ enum ruby_method_ids {
|
|
110
110
|
idANDDOT = RUBY_TOKEN(ANDDOT),
|
111
111
|
tPRESERVED_ID_BEGIN = 150,
|
112
112
|
idNilP,
|
113
|
+
idIncludeP,
|
113
114
|
idNULL,
|
114
115
|
idEmptyP,
|
115
116
|
idEqlP,
|
@@ -139,6 +140,7 @@ enum ruby_method_ids {
|
|
139
140
|
tInspect,
|
140
141
|
tIntern,
|
141
142
|
tObject_id,
|
143
|
+
t__id__,
|
142
144
|
tConst_added,
|
143
145
|
tConst_missing,
|
144
146
|
tMethodMissing,
|
@@ -221,6 +223,7 @@ enum ruby_method_ids {
|
|
221
223
|
|
222
224
|
/* CONST tokens {{{ */
|
223
225
|
tTOKEN_CONST_BEGIN = tTOKEN_GLOBAL_END-1,
|
226
|
+
tRuby,
|
224
227
|
tTOKEN_CONST_END,
|
225
228
|
/* CONST tokens }}} */
|
226
229
|
|
@@ -245,6 +248,7 @@ enum ruby_method_ids {
|
|
245
248
|
DEFINE_LOCALID_FROM_TOKEN(Inspect),
|
246
249
|
DEFINE_LOCALID_FROM_TOKEN(Intern),
|
247
250
|
DEFINE_LOCALID_FROM_TOKEN(Object_id),
|
251
|
+
DEFINE_LOCALID_FROM_TOKEN(__id__),
|
248
252
|
DEFINE_LOCALID_FROM_TOKEN(Const_added),
|
249
253
|
DEFINE_LOCALID_FROM_TOKEN(Const_missing),
|
250
254
|
DEFINE_LOCALID_FROM_TOKEN(MethodMissing),
|
@@ -327,6 +331,7 @@ enum ruby_method_ids {
|
|
327
331
|
|
328
332
|
/* CONST IDs {{{ */
|
329
333
|
#define DEFINE_CONSTID_FROM_TOKEN(n) id##n = TOKEN2CONSTID(t##n)
|
334
|
+
DEFINE_CONSTID_FROM_TOKEN(Ruby),
|
330
335
|
#undef DEFINE_CONSTID_FROM_TOKEN
|
331
336
|
/* CONST IDs }}} */
|
332
337
|
|
data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/bits.h
RENAMED
@@ -90,6 +90,7 @@
|
|
90
90
|
|
91
91
|
#define UNSIGNED_INTEGER_MAX(T) ((T)~(T)0)
|
92
92
|
|
93
|
+
#ifndef MUL_OVERFLOW_SIGNED_INTEGER_P
|
93
94
|
#if __has_builtin(__builtin_mul_overflow_p)
|
94
95
|
# define MUL_OVERFLOW_P(a, b) \
|
95
96
|
__builtin_mul_overflow_p((a), (b), (__typeof__(a * b))0)
|
@@ -131,6 +132,87 @@
|
|
131
132
|
# define MUL_OVERFLOW_LONG_P(a, b) MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, LONG_MIN, LONG_MAX)
|
132
133
|
# define MUL_OVERFLOW_INT_P(a, b) MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, INT_MIN, INT_MAX)
|
133
134
|
#endif
|
135
|
+
#endif
|
136
|
+
|
137
|
+
#ifndef ADD_OVERFLOW_SIGNED_INTEGER_P
|
138
|
+
#if __has_builtin(__builtin_add_overflow_p)
|
139
|
+
# define ADD_OVERFLOW_P(a, b) \
|
140
|
+
__builtin_add_overflow_p((a), (b), (__typeof__(a * b))0)
|
141
|
+
#elif __has_builtin(__builtin_add_overflow)
|
142
|
+
# define ADD_OVERFLOW_P(a, b) \
|
143
|
+
__extension__ ({ __typeof__(a) c; __builtin_add_overflow((a), (b), &c); })
|
144
|
+
#endif
|
145
|
+
|
146
|
+
#define ADD_OVERFLOW_SIGNED_INTEGER_P(a, b, min, max) ( \
|
147
|
+
(a) > 0 ? (b) > (max) - (a) : (b) < (min) - (a))
|
148
|
+
|
149
|
+
#if __has_builtin(__builtin_add_overflow_p)
|
150
|
+
/* __builtin_add_overflow_p can take bitfield */
|
151
|
+
/* and GCC permits bitfields for integers other than int */
|
152
|
+
# define ADD_OVERFLOW_FIXNUM_P(a, b) \
|
153
|
+
__extension__ ({ \
|
154
|
+
struct { long fixnum : sizeof(long) * CHAR_BIT - 1; } c = { 0 }; \
|
155
|
+
__builtin_add_overflow_p((a), (b), c.fixnum); \
|
156
|
+
})
|
157
|
+
#else
|
158
|
+
# define ADD_OVERFLOW_FIXNUM_P(a, b) \
|
159
|
+
ADD_OVERFLOW_SIGNED_INTEGER_P(a, b, FIXNUM_MIN, FIXNUM_MAX)
|
160
|
+
#endif
|
161
|
+
|
162
|
+
#if defined(ADD_OVERFLOW_P) && defined(USE___BUILTIN_ADD_OVERFLOW_LONG_LONG)
|
163
|
+
# define ADD_OVERFLOW_LONG_LONG_P(a, b) ADD_OVERFLOW_P(a, b)
|
164
|
+
#else
|
165
|
+
# define ADD_OVERFLOW_LONG_LONG_P(a, b) ADD_OVERFLOW_SIGNED_INTEGER_P(a, b, LLONG_MIN, LLONG_MAX)
|
166
|
+
#endif
|
167
|
+
|
168
|
+
#ifdef ADD_OVERFLOW_P
|
169
|
+
# define ADD_OVERFLOW_LONG_P(a, b) ADD_OVERFLOW_P(a, b)
|
170
|
+
# define ADD_OVERFLOW_INT_P(a, b) ADD_OVERFLOW_P(a, b)
|
171
|
+
#else
|
172
|
+
# define ADD_OVERFLOW_LONG_P(a, b) ADD_OVERFLOW_SIGNED_INTEGER_P(a, b, LONG_MIN, LONG_MAX)
|
173
|
+
# define ADD_OVERFLOW_INT_P(a, b) ADD_OVERFLOW_SIGNED_INTEGER_P(a, b, INT_MIN, INT_MAX)
|
174
|
+
#endif
|
175
|
+
#endif
|
176
|
+
|
177
|
+
#ifndef SUB_OVERFLOW_SIGNED_INTEGER_P
|
178
|
+
#if __has_builtin(__builtin_sub_overflow_p)
|
179
|
+
# define SUB_OVERFLOW_P(a, b) \
|
180
|
+
__builtin_sub_overflow_p((a), (b), (__typeof__(a * b))0)
|
181
|
+
#elif __has_builtin(__builtin_sub_overflow)
|
182
|
+
# define SUB_OVERFLOW_P(a, b) \
|
183
|
+
__extension__ ({ __typeof__(a) c; __builtin_sub_overflow((a), (b), &c); })
|
184
|
+
#endif
|
185
|
+
|
186
|
+
#define SUB_OVERFLOW_SIGNED_INTEGER_P(a, b, min, max) ( \
|
187
|
+
(b) > 0 ? (a) < (min) + (b) : (a) > (max) + (b))
|
188
|
+
|
189
|
+
#if __has_builtin(__builtin_sub_overflow_p)
|
190
|
+
/* __builtin_sub_overflow_p can take bitfield */
|
191
|
+
/* and GCC permits bitfields for integers other than int */
|
192
|
+
# define SUB_OVERFLOW_FIXNUM_P(a, b) \
|
193
|
+
__extension__ ({ \
|
194
|
+
struct { long fixnum : sizeof(long) * CHAR_BIT - 1; } c = { 0 }; \
|
195
|
+
__builtin_sub_overflow_p((a), (b), c.fixnum); \
|
196
|
+
})
|
197
|
+
#else
|
198
|
+
# define SUB_OVERFLOW_FIXNUM_P(a, b) \
|
199
|
+
SUB_OVERFLOW_SIGNED_INTEGER_P(a, b, FIXNUM_MIN, FIXNUM_MAX)
|
200
|
+
#endif
|
201
|
+
|
202
|
+
#if defined(SUB_OVERFLOW_P) && defined(USE___BUILTIN_SUB_OVERFLOW_LONG_LONG)
|
203
|
+
# define SUB_OVERFLOW_LONG_LONG_P(a, b) SUB_OVERFLOW_P(a, b)
|
204
|
+
#else
|
205
|
+
# define SUB_OVERFLOW_LONG_LONG_P(a, b) SUB_OVERFLOW_SIGNED_INTEGER_P(a, b, LLONG_MIN, LLONG_MAX)
|
206
|
+
#endif
|
207
|
+
|
208
|
+
#ifdef SUB_OVERFLOW_P
|
209
|
+
# define SUB_OVERFLOW_LONG_P(a, b) SUB_OVERFLOW_P(a, b)
|
210
|
+
# define SUB_OVERFLOW_INT_P(a, b) SUB_OVERFLOW_P(a, b)
|
211
|
+
#else
|
212
|
+
# define SUB_OVERFLOW_LONG_P(a, b) SUB_OVERFLOW_SIGNED_INTEGER_P(a, b, LONG_MIN, LONG_MAX)
|
213
|
+
# define SUB_OVERFLOW_INT_P(a, b) SUB_OVERFLOW_SIGNED_INTEGER_P(a, b, INT_MIN, INT_MAX)
|
214
|
+
#endif
|
215
|
+
#endif
|
134
216
|
|
135
217
|
#ifdef HAVE_UINT128_T
|
136
218
|
# define bit_length(x) \
|
data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/cmdlineopt.h
RENAMED
@@ -1,7 +1,6 @@
|
|
1
1
|
#ifndef INTERNAL_CMDLINEOPT_H /*-*-C-*-vi:se ft=c:*/
|
2
2
|
#define INTERNAL_CMDLINEOPT_H
|
3
3
|
|
4
|
-
#include "rjit.h"
|
5
4
|
#include "yjit.h"
|
6
5
|
|
7
6
|
typedef struct {
|
@@ -24,9 +23,6 @@ typedef struct ruby_cmdline_options {
|
|
24
23
|
ruby_features_t warn;
|
25
24
|
unsigned int dump;
|
26
25
|
long backtrace_length_limit;
|
27
|
-
#if USE_RJIT
|
28
|
-
struct rb_rjit_options rjit;
|
29
|
-
#endif
|
30
26
|
|
31
27
|
const char *crash_report;
|
32
28
|
|
data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/encoding.h
RENAMED
@@ -28,6 +28,8 @@ int rb_encdb_dummy(const char *name);
|
|
28
28
|
void rb_encdb_declare(const char *name);
|
29
29
|
void rb_enc_set_base(const char *name, const char *orig);
|
30
30
|
int rb_enc_set_dummy(int index);
|
31
|
+
void rb_enc_raw_set(VALUE obj, rb_encoding *enc);
|
32
|
+
|
31
33
|
PUREFUNC(int rb_data_is_encoding(VALUE obj));
|
32
34
|
|
33
35
|
/* vm.c */
|
@@ -72,6 +72,7 @@ const char *rb_builtin_type_name(int t);
|
|
72
72
|
const char *rb_builtin_class_name(VALUE x);
|
73
73
|
PRINTF_ARGS(void rb_warn_deprecated(const char *fmt, const char *suggest, ...), 1, 3);
|
74
74
|
PRINTF_ARGS(void rb_warn_deprecated_to_remove(const char *removal, const char *fmt, const char *suggest, ...), 2, 4);
|
75
|
+
PRINTF_ARGS(void rb_warn_reserved_name(const char *removal, const char *fmt, ...), 2, 3);
|
75
76
|
#if RUBY_DEBUG
|
76
77
|
# include "ruby/version.h"
|
77
78
|
# define RUBY_VERSION_SINCE(major, minor) (RUBY_API_VERSION_CODE >= (major * 10000) + (minor) * 100)
|
@@ -110,6 +111,14 @@ rb_deprecated_method_to_be_removed(const char *removal)
|
|
110
111
|
RBIMPL_ATTR_DIAGNOSE_IF(RUBY_VERSION_STRING_SINCE(removal), "deprecated method to be removed", "error")
|
111
112
|
{
|
112
113
|
}
|
114
|
+
|
115
|
+
RBIMPL_ATTR_FORCEINLINE()
|
116
|
+
static void
|
117
|
+
rb_diagnose_reserved_name_at(const char *coming)
|
118
|
+
RBIMPL_ATTR_DIAGNOSE_IF(!RUBY_VERSION_isdigit(coming[0]), "malformed version number", "error")
|
119
|
+
RBIMPL_ATTR_DIAGNOSE_IF(RUBY_VERSION_STRING_SINCE(coming), "reserved name already in use", "error")
|
120
|
+
{
|
121
|
+
}
|
113
122
|
# else
|
114
123
|
RBIMPL_ATTR_ERROR(("deprecated"))
|
115
124
|
void rb_deprecated_method_to_be_removed(const char *);
|
@@ -117,16 +126,32 @@ void rb_deprecated_method_to_be_removed(const char *);
|
|
117
126
|
(sizeof(char[1-2*(!RUBY_VERSION_isdigit(removal[0]) || RUBY_VERSION_STRING_SINCE(removal))])!=1 ? \
|
118
127
|
rb_deprecated_method_to_be_removed(removal) : \
|
119
128
|
RBIMPL_ASSERT_NOTHING)
|
129
|
+
|
130
|
+
RBIMPL_ATTR_ERROR(("deprecated"))
|
131
|
+
void rb_diagnose_reserved_name_at(const char *);
|
132
|
+
# define rb_diagnose_reserved_name_at(coming) \
|
133
|
+
(sizeof(char[1-2*(!RUBY_VERSION_isdigit(coming[0]) || RUBY_VERSION_STRING_SINCE(coming))])!=1 ? \
|
134
|
+
rb_diagnose_reserved_name_at(coming) : \
|
135
|
+
RBIMPL_ASSERT_NOTHING)
|
136
|
+
|
120
137
|
# endif
|
121
138
|
# define rb_warn_deprecated_to_remove_at(removal, ...) \
|
122
139
|
(rb_deprecated_method_to_be_removed(#removal), \
|
123
140
|
rb_warn_deprecated_to_remove(#removal, __VA_ARGS__))
|
141
|
+
|
142
|
+
# define rb_warn_reserved_name_at(coming, ...) \
|
143
|
+
(rb_diagnose_reserved_name_at(#coming), \
|
144
|
+
rb_warn_reserved_name(#coming, __VA_ARGS__))
|
124
145
|
# endif
|
125
146
|
#endif
|
126
147
|
#ifndef rb_warn_deprecated_to_remove_at
|
127
148
|
# define rb_warn_deprecated_to_remove_at(removal, ...) \
|
128
149
|
rb_warn_deprecated_to_remove(#removal, __VA_ARGS__)
|
129
150
|
#endif
|
151
|
+
#ifndef rb_warn_reserved_name_at
|
152
|
+
# define rb_warn_reserved_name_at(removal, ...) \
|
153
|
+
rb_warn_reserved_name(#removal, __VA_ARGS__)
|
154
|
+
#endif
|
130
155
|
#ifndef RUBY_VERSION_SINCE
|
131
156
|
# define RUBY_VERSION_SINCE(major, minor) 0
|
132
157
|
#endif
|
@@ -160,6 +185,7 @@ NORETURN(static inline void rb_key_err_raise(VALUE mesg, VALUE recv, VALUE name)
|
|
160
185
|
static inline void Check_Type(VALUE v, enum ruby_value_type t);
|
161
186
|
static inline bool rb_typeddata_is_instance_of_inline(VALUE obj, const rb_data_type_t *data_type);
|
162
187
|
#define rb_typeddata_is_instance_of rb_typeddata_is_instance_of_inline
|
188
|
+
void rb_bug_without_die(const char *fmt, ...);
|
163
189
|
|
164
190
|
RUBY_SYMBOL_EXPORT_BEGIN
|
165
191
|
/* error.c (export) */
|
data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/fixnum.h
RENAMED
@@ -10,6 +10,7 @@
|
|
10
10
|
*/
|
11
11
|
#include "ruby/internal/config.h" /* for HAVE_LONG_LONG */
|
12
12
|
#include <limits.h> /* for CHAR_BIT */
|
13
|
+
#include "internal/bits.h" /* for MUL_OVERFLOW_FIXNUM_P */
|
13
14
|
#include "internal/compilers.h" /* for __has_builtin */
|
14
15
|
#include "ruby/internal/stdbool.h" /* for bool */
|
15
16
|
#include "ruby/intern.h" /* for rb_big_mul */
|