Why Polyspace Code Prover does not consider 'memcpy' declaration in default way & for that I am getting MISRA C violations of Rule 17.3?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
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 comentarios
Respuestas (1)
Anirban
el 28 de Jun. de 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 comentarios
Ver también
Categorías
Más información sobre Generate Report en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!