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.
Files changed (212) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.datadog.md +9 -0
  3. data/README.md +8 -5
  4. data/datadog-ruby_core_source.gemspec +1 -1
  5. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/id.h +2 -0
  6. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
  7. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/gc.h +1 -0
  8. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
  9. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/proc.h +1 -0
  10. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/sanitizers.h +24 -36
  11. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/ast.h +10 -0
  12. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
  13. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/version.h +2 -2
  14. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/ractor_core.h +1 -0
  15. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/rubyparser.h +3 -1
  16. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/id.h +5 -0
  17. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/basic_operators.h +1 -0
  18. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/bits.h +82 -0
  19. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/cmdlineopt.h +0 -4
  20. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/encoding.h +2 -0
  21. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/error.h +26 -0
  22. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/fixnum.h +1 -0
  23. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/gc.h +20 -9
  24. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/hash.h +1 -0
  25. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/imemo.h +9 -13
  26. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/io.h +2 -2
  27. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/parse.h +4 -2
  28. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/proc.h +1 -1
  29. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/ractor.h +4 -0
  30. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/re.h +2 -2
  31. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/sanitizers.h +43 -39
  32. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/string.h +23 -10
  33. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/struct.h +0 -8
  34. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/symbol.h +2 -0
  35. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/thread.h +23 -0
  36. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/time.h +4 -1
  37. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/variable.h +0 -2
  38. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/vm.h +1 -1
  39. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/iseq.h +12 -1
  40. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/method.h +4 -1
  41. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/node.h +14 -3
  42. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/ast.h +443 -3
  43. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/defines.h +26 -8
  44. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/diagnostic.h +1 -0
  45. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/extension.h +4 -4
  46. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/options.h +47 -1
  47. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/prism.h +51 -4
  48. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_buffer.h +10 -0
  49. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/version.h +2 -2
  50. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism_compile.h +11 -5
  51. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ractor_core.h +6 -6
  52. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/rubyparser.h +39 -9
  53. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/thread_pthread.h +2 -3
  54. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/vm_core.h +43 -30
  55. data/lib/datadog/ruby_core_source/version.rb +1 -1
  56. metadata +209 -209
  57. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
  58. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
  59. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
  60. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
  61. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
  62. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id_table.h +0 -0
  63. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
  64. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/basic_operators.h +0 -0
  65. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
  66. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/bits.h +0 -0
  67. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
  68. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
  69. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compar.h +0 -0
  70. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compile.h +0 -0
  71. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
  72. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/complex.h +0 -0
  73. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/cont.h +0 -0
  74. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/dir.h +0 -0
  75. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enc.h +0 -0
  76. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/encoding.h +0 -0
  77. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enum.h +0 -0
  78. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
  79. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/eval.h +0 -0
  80. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/file.h +0 -0
  81. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/fixnum.h +0 -0
  82. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
  83. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/imemo.h +0 -0
  84. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/inits.h +0 -0
  85. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/io.h +0 -0
  86. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/load.h +0 -0
  87. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
  88. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/math.h +0 -0
  89. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/missing.h +0 -0
  90. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
  91. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/object.h +0 -0
  92. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/process.h +0 -0
  93. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/ractor.h +0 -0
  94. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/random.h +0 -0
  95. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/range.h +0 -0
  96. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/rational.h +0 -0
  97. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/re.h +0 -0
  98. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
  99. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/serial.h +0 -0
  100. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/signal.h +0 -0
  101. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/st.h +0 -0
  102. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
  103. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/string.h +0 -0
  104. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/struct.h +0 -0
  105. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
  106. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/thread.h +0 -0
  107. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/time.h +0 -0
  108. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
  109. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/util.h +0 -0
  110. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/variable.h +0 -0
  111. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/vm.h +0 -0
  112. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
  113. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal.h +0 -0
  114. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/iseq.h +0 -0
  115. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/method.h +0 -0
  116. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/node.h +0 -0
  117. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/parser_st.h +0 -0
  118. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/parser_value.h +0 -0
  119. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/defines.h +0 -0
  120. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/diagnostic.h +0 -0
  121. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
  122. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
  123. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
  124. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/pack.h +0 -0
  125. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
  126. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
  127. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/prism.h +0 -0
  128. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
  129. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
  130. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
  131. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
  132. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
  133. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
  134. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
  135. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
  136. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
  137. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
  138. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
  139. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
  140. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism_compile.h +0 -0
  141. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
  142. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
  143. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
  144. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_none.h +0 -0
  145. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/thread_pthread.h +0 -0
  146. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/vm_core.h +0 -0
  147. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_debug.h +0 -0
  148. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_opts.h +0 -0
  149. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/build_assert/build_assert.h +0 -0
  150. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/check_type/check_type.h +0 -0
  151. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/container_of/container_of.h +0 -0
  152. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/list/list.h +0 -0
  153. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ccan/str/str.h +0 -0
  154. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/id_table.h +0 -0
  155. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/array.h +0 -0
  156. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/bignum.h +0 -0
  157. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/class.h +0 -0
  158. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/compar.h +0 -0
  159. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/compile.h +0 -0
  160. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/compilers.h +0 -0
  161. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/complex.h +0 -0
  162. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/cont.h +0 -0
  163. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/dir.h +0 -0
  164. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/enc.h +0 -0
  165. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/enum.h +0 -0
  166. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/enumerator.h +0 -0
  167. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/eval.h +0 -0
  168. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/file.h +0 -0
  169. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/inits.h +0 -0
  170. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/load.h +0 -0
  171. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/loadpath.h +0 -0
  172. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/math.h +0 -0
  173. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/missing.h +0 -0
  174. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/numeric.h +0 -0
  175. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/object.h +0 -0
  176. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/process.h +0 -0
  177. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/random.h +0 -0
  178. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/range.h +0 -0
  179. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/rational.h +0 -0
  180. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/ruby_parser.h +0 -0
  181. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/serial.h +0 -0
  182. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/signal.h +0 -0
  183. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/st.h +0 -0
  184. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/static_assert.h +0 -0
  185. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/transcode.h +0 -0
  186. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/util.h +0 -0
  187. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal/warnings.h +0 -0
  188. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/internal.h +0 -0
  189. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/parser_st.h +0 -0
  190. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/parser_value.h +0 -0
  191. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/encoding.h +0 -0
  192. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/node.h +0 -0
  193. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/pack.h +0 -0
  194. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/parser.h +0 -0
  195. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/prettyprint.h +0 -0
  196. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/regexp.h +0 -0
  197. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/static_literals.h +0 -0
  198. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_char.h +0 -0
  199. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_constant_pool.h +0 -0
  200. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_integer.h +0 -0
  201. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_list.h +0 -0
  202. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_memchr.h +0 -0
  203. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_newline_list.h +0 -0
  204. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_string.h +0 -0
  205. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_strncasecmp.h +0 -0
  206. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/prism/util/pm_strpbrk.h +0 -0
  207. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ruby_assert.h +0 -0
  208. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/ruby_atomic.h +0 -0
  209. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/shape.h +0 -0
  210. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/thread_none.h +0 -0
  211. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/vm_debug.h +0 -0
  212. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.5.0-preview1}/vm_opts.h +0 -0
@@ -70,7 +70,30 @@
70
70
  #define RUBY_ASSERT_MUTEX_OWNED(mutex) VM_ASSERT(rb_mutex_owned_p(mutex))
71
71
 
72
72
  #if defined(RUBY_ASSERT_CRITICAL_SECTION)
73
- // TODO add documentation
73
+ /*
74
+ # Critical Section Assertions
75
+
76
+ These assertions are used to ensure that context switching does not occur between two points in the code. In theory,
77
+ such code should already be protected by a mutex, but these assertions are used to ensure that the mutex is held.
78
+
79
+ The specific case where it can be useful is where a mutex is held further up the call stack, and the code in question
80
+ may not directly hold the mutex. In this case, the critical section assertions can be used to ensure that the mutex is
81
+ held by someone else.
82
+
83
+ These assertions are only enabled when RUBY_ASSERT_CRITICAL_SECTION is defined, which is only defined if VM_CHECK_MODE
84
+ is set.
85
+
86
+ ## Example Usage
87
+
88
+ ```c
89
+ RUBY_ASSERT_CRITICAL_SECTION_ENTER();
90
+ // ... some code which does not invoke rb_vm_check_ints() ...
91
+ RUBY_ASSERT_CRITICAL_SECTION_LEAVE();
92
+ ```
93
+
94
+ If `rb_vm_check_ints()` is called between the `RUBY_ASSERT_CRITICAL_SECTION_ENTER()` and
95
+ `RUBY_ASSERT_CRITICAL_SECTION_LEAVE()`, a failed assertion will result.
96
+ */
74
97
  extern int ruby_assert_critical_section_entered;
75
98
  #define RUBY_ASSERT_CRITICAL_SECTION_ENTER() do{ruby_assert_critical_section_entered += 1;}while(false)
76
99
  #define RUBY_ASSERT_CRITICAL_SECTION_LEAVE() do{VM_ASSERT(ruby_assert_critical_section_entered > 0);ruby_assert_critical_section_entered -= 1;}while(false)
@@ -230,6 +253,8 @@ union ic_serial_entry {
230
253
  VALUE data[2];
231
254
  };
232
255
 
256
+ #define IMEMO_CONST_CACHE_SHAREABLE IMEMO_FL_USER0
257
+
233
258
  // imemo_constcache
234
259
  struct iseq_inline_constant_cache_entry {
235
260
  VALUE flags;
@@ -340,8 +365,6 @@ pathobj_realpath(VALUE pathobj)
340
365
  }
341
366
 
342
367
  /* Forward declarations */
343
- struct rb_rjit_unit;
344
-
345
368
  typedef uintptr_t iseq_bits_t;
346
369
 
347
370
  #define ISEQ_IS_SIZE(body) (body->ic_size + body->ivc_size + body->ise_size + body->icvarc_size)
@@ -370,6 +393,8 @@ enum rb_builtin_attr {
370
393
  BUILTIN_ATTR_SINGLE_NOARG_LEAF = 0x02,
371
394
  // This attribute signals JIT to duplicate the iseq for each block iseq so that its `yield` will be monomorphic.
372
395
  BUILTIN_ATTR_INLINE_BLOCK = 0x04,
396
+ // The iseq acts like a C method in backtraces.
397
+ BUILTIN_ATTR_C_TRACE = 0x08,
373
398
  };
374
399
 
375
400
  typedef VALUE (*rb_jit_func_t)(struct rb_execution_context_struct *, struct rb_control_frame_struct *);
@@ -509,26 +534,15 @@ struct rb_iseq_constant_body {
509
534
 
510
535
  const rb_iseq_t *mandatory_only_iseq;
511
536
 
512
- #if USE_RJIT || USE_YJIT
537
+ #if USE_YJIT
513
538
  // Function pointer for JIT code on jit_exec()
514
539
  rb_jit_func_t jit_entry;
515
540
  // Number of calls on jit_exec()
516
541
  long unsigned jit_entry_calls;
517
- #endif
518
-
519
- #if USE_YJIT
520
542
  // Function pointer for JIT code on jit_exec_exception()
521
543
  rb_jit_func_t jit_exception;
522
544
  // Number of calls on jit_exec_exception()
523
545
  long unsigned jit_exception_calls;
524
- #endif
525
-
526
- #if USE_RJIT
527
- // RJIT stores some data on each iseq.
528
- VALUE rjit_blocks;
529
- #endif
530
-
531
- #if USE_YJIT
532
546
  // YJIT stores some data on each iseq.
533
547
  void *yjit_payload;
534
548
  // Used to estimate how frequently this ISEQ gets called
@@ -579,6 +593,12 @@ rb_iseq_check(const rb_iseq_t *iseq)
579
593
  return iseq;
580
594
  }
581
595
 
596
+ static inline bool
597
+ rb_iseq_attr_p(const rb_iseq_t *iseq, enum rb_builtin_attr attr)
598
+ {
599
+ return (ISEQ_BODY(iseq)->builtin_attrs & attr) == attr;
600
+ }
601
+
582
602
  static inline const rb_iseq_t *
583
603
  def_iseq_ptr(rb_method_definition_t *def)
584
604
  {
@@ -766,13 +786,13 @@ typedef struct rb_vm_struct {
766
786
  struct rb_id_table *negative_cme_table;
767
787
  st_table *overloaded_cme_table; // cme -> overloaded_cme
768
788
  st_table *unused_block_warning_table;
769
- bool unused_block_warning_strict;
770
789
 
771
790
  // This id table contains a mapping from ID to ICs. It does this with ID
772
791
  // keys and nested st_tables as values. The nested tables have ICs as keys
773
792
  // and Qtrue as values. It is used when inline constant caches need to be
774
793
  // invalidated or ISEQs are being freed.
775
794
  struct rb_id_table *constant_cache;
795
+ ID inserting_constant_cache_id;
776
796
 
777
797
  #ifndef VM_GLOBAL_CC_CACHE_TABLE_SIZE
778
798
  #define VM_GLOBAL_CC_CACHE_TABLE_SIZE 1023
@@ -1124,6 +1144,7 @@ typedef struct rb_thread_struct {
1124
1144
  struct rb_unblock_callback unblock;
1125
1145
  VALUE locking_mutex;
1126
1146
  struct rb_mutex_struct *keeping_mutexes;
1147
+ struct ccan_list_head interrupt_exec_tasks;
1127
1148
 
1128
1149
  struct rb_waiting_list *join_list;
1129
1150
 
@@ -1146,9 +1167,6 @@ typedef struct rb_thread_struct {
1146
1167
  thread_invoke_type_func
1147
1168
  } invoke_type;
1148
1169
 
1149
- /* statistics data for profiler */
1150
- VALUE stat_insn_usage;
1151
-
1152
1170
  /* fiber */
1153
1171
  rb_fiber_t *root_fiber;
1154
1172
 
@@ -1280,6 +1298,7 @@ enum vm_opt_newarray_send_type {
1280
1298
  VM_OPT_NEWARRAY_SEND_HASH = 3,
1281
1299
  VM_OPT_NEWARRAY_SEND_PACK = 4,
1282
1300
  VM_OPT_NEWARRAY_SEND_PACK_BUFFER = 5,
1301
+ VM_OPT_NEWARRAY_SEND_INCLUDE_P = 6,
1283
1302
  };
1284
1303
 
1285
1304
  enum vm_special_object_type {
@@ -1487,22 +1506,13 @@ VM_ENV_ESCAPED_P(const VALUE *ep)
1487
1506
  return VM_ENV_FLAGS(ep, VM_ENV_FLAG_ESCAPED) ? 1 : 0;
1488
1507
  }
1489
1508
 
1490
- #if VM_CHECK_MODE > 0
1491
- static inline int
1492
- vm_assert_env(VALUE obj)
1493
- {
1494
- VM_ASSERT(imemo_type_p(obj, imemo_env));
1495
- return 1;
1496
- }
1497
- #endif
1498
-
1499
1509
  RBIMPL_ATTR_NONNULL((1))
1500
1510
  static inline VALUE
1501
1511
  VM_ENV_ENVVAL(const VALUE *ep)
1502
1512
  {
1503
1513
  VALUE envval = ep[VM_ENV_DATA_INDEX_ENV];
1504
1514
  VM_ASSERT(VM_ENV_ESCAPED_P(ep));
1505
- VM_ASSERT(vm_assert_env(envval));
1515
+ VM_ASSERT(envval == Qundef || imemo_type_p(envval, imemo_env));
1506
1516
  return envval;
1507
1517
  }
1508
1518
 
@@ -1834,6 +1844,7 @@ rb_vm_make_lambda(const rb_execution_context_t *ec, const struct rb_captured_blo
1834
1844
 
1835
1845
  VALUE rb_vm_make_binding(const rb_execution_context_t *ec, const rb_control_frame_t *src_cfp);
1836
1846
  VALUE rb_vm_env_local_variables(const rb_env_t *env);
1847
+ VALUE rb_vm_env_numbered_parameters(const rb_env_t *env);
1837
1848
  const rb_env_t *rb_vm_env_prev_env(const rb_env_t *env);
1838
1849
  const VALUE *rb_binding_add_dynavars(VALUE bindval, rb_binding_t *bind, int dyncount, const ID *dynvars);
1839
1850
  void rb_vm_inc_const_missing_count(void);
@@ -1945,11 +1956,13 @@ rb_ec_vm_ptr(const rb_execution_context_t *ec)
1945
1956
  }
1946
1957
  }
1947
1958
 
1959
+ NOINLINE(struct rb_execution_context_struct *rb_current_ec_noinline(void));
1960
+
1948
1961
  static inline rb_execution_context_t *
1949
1962
  rb_current_execution_context(bool expect_ec)
1950
1963
  {
1951
1964
  #ifdef RB_THREAD_LOCAL_SPECIFIER
1952
- #ifdef __APPLE__
1965
+ #if defined(__arm64__) || defined(__aarch64__)
1953
1966
  rb_execution_context_t *ec = rb_current_ec();
1954
1967
  #else
1955
1968
  rb_execution_context_t *ec = ruby_current_ec;
@@ -1,5 +1,5 @@
1
1
  module Datadog
2
2
  module RubyCoreSource
3
- VERSION = '3.3.7'
3
+ VERSION = '3.4.1'
4
4
  end
5
5
  end