Why Polyspace Code Prover does not consider 'memcpy' declaration in default way & for that I am getting MISRA C violations of Rule 17.3?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
While performing static code analysis by using Polyspace Code Prover Tool, I am facing the below violation
'A function shall not be declared implicitly.
Function 'memcpy' has no visible prototype when called.
And the options compiler type is 'tasking' , C standard version is defined-by-compiler are configured in polyspace
Why polyspace does not consider memcpy declaraion as in default way and How to resolve the issue.
0 Kommentare
Antworten (1)
Anirban
am 28 Jun. 2022
Is it possible that you have not #include-d the header string.h in the source file that has the memcpy usage?
For instance, this small code will show a violation of rule 17.3 if you remove the line #include <string.h> :
#include <stdio.h>
#include <string.h>
int main () {
const char src[50] = "Hello";
char dest[50];
memcpy(dest, src, strlen(src)+1);
return(0);
}
If this is the case, your analysis log should also contain a warning :
Warning: the prototype for function 'memcpy' is unknown
0 Kommentare
Siehe auch
Kategorien
Mehr zu Generate Report finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!