summaryrefslogtreecommitdiff
path: root/prism
diff options
context:
space:
mode:
authorSteven Johnstone <steven.james.johnstone@gmail.com>2025-11-20 11:02:33 +0000
committergit <svn-admin@ruby-lang.org>2025-11-20 20:06:08 +0000
commit0b4420bfd5f32fd715704f9adcf2320971f05ab3 (patch)
treec75e1e7e8578b644939f48e7ec92ae0e91d79e6d /prism
parenta8f269a2c665c0a471ecb28b3265cb4eb8a7ca2e (diff)
[ruby/prism] Use memmove for overlapping memory ranges
Fixes https://github.com/ruby/prism/pull/3736. https://github.com/ruby/prism/commit/1f5f192ab7
Diffstat (limited to 'prism')
-rw-r--r--prism/prism.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/prism/prism.c b/prism/prism.c
index a87932f1b7..45817cdd8c 100644
--- a/prism/prism.c
+++ b/prism/prism.c
@@ -13467,7 +13467,7 @@ parse_target_implicit_parameter(pm_parser_t *parser, pm_node_t *node) {
// remaining nodes down to fill the gap. This is extremely unlikely
// to happen.
if (index != implicit_parameters->size - 1) {
- memcpy(&implicit_parameters->nodes[index], &implicit_parameters->nodes[index + 1], (implicit_parameters->size - index - 1) * sizeof(pm_node_t *));
+ memmove(&implicit_parameters->nodes[index], &implicit_parameters->nodes[index + 1], (implicit_parameters->size - index - 1) * sizeof(pm_node_t *));
}
implicit_parameters->size--;