Intel® Inspector User Guide for Windows* OS

ID 767798
Date 10/31/2024
Public
Document Table of Contents

Incorrect memcpy Call

Occurs when an application calls the memcpy function with two pointers that overlap within the range to be copied. This condition is only checked on Linux* systems. On Windows* systems, this function is safe for overlapping memory.

ID

Code Location

Description

1

Call site

Represents the location from which the memcpy function was called.

Example

char *p = (char *)malloc(10);
memcpy(p+3, p, 5);

NOTE:
Linux* operating system/GNU gcc* compiler: The Intel Inspector cannot check for inlined calls to memcpy. Specify -fno-builtin to prevent inlining and allow the Intel Inspector to check for arguments.

Possible Correction Strategies

If the arguments represent the range you want to copy, call the memmove function instead of the memcpy function.