Fix false positive ignoredReturnValue about strtol
This commit is contained in:
parent
cb4bf73749
commit
cea71f8625
@ -4916,7 +4916,6 @@
|
|||||||
</function>
|
</function>
|
||||||
<!-- long strtol(const char *s, char **endp, int base); -->
|
<!-- long strtol(const char *s, char **endp, int base); -->
|
||||||
<function name="strtol">
|
<function name="strtol">
|
||||||
<use-retval/>
|
|
||||||
<noreturn>false</noreturn>
|
<noreturn>false</noreturn>
|
||||||
<leak-ignore/>
|
<leak-ignore/>
|
||||||
<arg nr="1">
|
<arg nr="1">
|
||||||
|
@ -19,4 +19,4 @@ ${CPPCHECK} --check-library --library=gnu --enable=information --enable=style --
|
|||||||
|
|
||||||
# std.c
|
# std.c
|
||||||
gcc -fsyntax-only ${DIR}std.c
|
gcc -fsyntax-only ${DIR}std.c
|
||||||
${CPPCHECK} --check-library --enable=information --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr ${DIR}std.c
|
${CPPCHECK} --check-library --enable=information --error-exitcode=1 --enable=style --suppress=missingIncludeSystem --inline-suppr ${DIR}std.c
|
||||||
|
@ -19,14 +19,21 @@ void bufferAccessOutOf(void) {
|
|||||||
fgets(a,6,stdin);
|
fgets(a,6,stdin);
|
||||||
sprintf(a, "ab%s", "cd");
|
sprintf(a, "ab%s", "cd");
|
||||||
// cppcheck-suppress bufferAccessOutOfBounds
|
// cppcheck-suppress bufferAccessOutOfBounds
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
sprintf(a, "ab%s", "cde");
|
sprintf(a, "ab%s", "cde");
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
snprintf(a, 5, "abcde%i", 1);
|
snprintf(a, 5, "abcde%i", 1);
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
snprintf(a, 6, "abcde%i", 1); //TODO: cppcheck-suppress bufferAccessOutOfBounds
|
snprintf(a, 6, "abcde%i", 1); //TODO: cppcheck-suppress bufferAccessOutOfBounds
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
strcpy(a,"abcd");
|
strcpy(a,"abcd");
|
||||||
// cppcheck-suppress bufferAccessOutOfBounds
|
// cppcheck-suppress bufferAccessOutOfBounds
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
strcpy(a, "abcde");
|
strcpy(a, "abcde");
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
strncpy(a,"abcde",5);
|
strncpy(a,"abcde",5);
|
||||||
// cppcheck-suppress bufferAccessOutOfBounds
|
// cppcheck-suppress bufferAccessOutOfBounds
|
||||||
|
// cppcheck-suppress redundantCopy
|
||||||
strncpy(a,"abcde",6);
|
strncpy(a,"abcde",6);
|
||||||
fread(a,1,5,stdin);
|
fread(a,1,5,stdin);
|
||||||
// cppcheck-suppress bufferAccessOutOfBounds
|
// cppcheck-suppress bufferAccessOutOfBounds
|
||||||
@ -52,12 +59,14 @@ void nullpointer(int value){
|
|||||||
|
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
clearerr(0);
|
clearerr(0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
feof(0);
|
feof(0);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
fgetc(0);
|
fgetc(0);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
fclose(0);
|
fclose(0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
ferror(0);
|
ferror(0);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
@ -70,6 +79,7 @@ void nullpointer(int value){
|
|||||||
// No FP
|
// No FP
|
||||||
fflush(0);
|
fflush(0);
|
||||||
// No FP
|
// No FP
|
||||||
|
// cppcheck-suppress redundantAssignment
|
||||||
fp = freopen(0,"abc",stdin);
|
fp = freopen(0,"abc",stdin);
|
||||||
fclose(fp); fp = 0;
|
fclose(fp); fp = 0;
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
@ -85,39 +95,51 @@ void nullpointer(int value){
|
|||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
itoa(123,0,10);
|
itoa(123,0,10);
|
||||||
putchar(0);
|
putchar(0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strchr(0,0);
|
strchr(0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strlen(0);
|
strlen(0);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strcpy(0,0);
|
strcpy(0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strspn(0,0);
|
strspn(0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strcspn(0,0);
|
strcspn(0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strcoll(0,0);
|
strcoll(0,0);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strcat(0,0);
|
strcat(0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strcmp(0,0);
|
strcmp(0,0);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strncpy(0,0,1);
|
strncpy(0,0,1);
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strncat(0,0,1);
|
strncat(0,0,1);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strncmp(0,0,1);
|
strncmp(0,0,1);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strstr(0,0);
|
strstr(0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strtoul(0,0,0);
|
strtoul(0,0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strtoull(0,0,0);
|
strtoull(0,0,0);
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
strtol(0,0,0);
|
strtol(0,0,0);
|
||||||
|
|
||||||
// #6100 False positive nullPointer - calling mbstowcs(NULL,)
|
// #6100 False positive nullPointer - calling mbstowcs(NULL,)
|
||||||
res += mbstowcs(0,"",0);
|
res += mbstowcs(0,"",0);
|
||||||
|
// cppcheck-suppress unreadVariable
|
||||||
res += wcstombs(0,L"",0);
|
res += wcstombs(0,L"",0);
|
||||||
|
|
||||||
strtok(NULL,"xyz");
|
strtok(NULL,"xyz");
|
||||||
@ -132,20 +154,24 @@ void nullpointer(int value){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void nullpointerMemchr1(char *p, char *s) {
|
void nullpointerMemchr1(char *p, char *s) {
|
||||||
|
// cppcheck-suppress uselessAssignmentPtrArg
|
||||||
p = memchr (s, 'p', strlen(s));
|
p = memchr (s, 'p', strlen(s));
|
||||||
}
|
}
|
||||||
|
|
||||||
void nullpointerMemchr2(char *p, char *s) {
|
void nullpointerMemchr2(char *p, char *s) {
|
||||||
|
// cppcheck-suppress uselessAssignmentPtrArg
|
||||||
p = memchr (s, 0, strlen(s));
|
p = memchr (s, 0, strlen(s));
|
||||||
}
|
}
|
||||||
|
|
||||||
void nullpointerMemchr3(char *p) {
|
void nullpointerMemchr3(char *p) {
|
||||||
char *s = 0;
|
char *s = 0;
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
|
// cppcheck-suppress uselessAssignmentPtrArg
|
||||||
p = memchr (s, 0, strlen(s));
|
p = memchr (s, 0, strlen(s));
|
||||||
}
|
}
|
||||||
|
|
||||||
void nullpointerMemcmp(char *p) {
|
void nullpointerMemcmp(char *p) {
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress nullPointer
|
// cppcheck-suppress nullPointer
|
||||||
memcmp(p, 0, 123);
|
memcmp(p, 0, 123);
|
||||||
}
|
}
|
||||||
@ -178,12 +204,14 @@ void uninit_fopen(void) {
|
|||||||
|
|
||||||
void uninit_feof(void) {
|
void uninit_feof(void) {
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress uninitvar
|
// cppcheck-suppress uninitvar
|
||||||
feof(fp);
|
feof(fp);
|
||||||
}
|
}
|
||||||
|
|
||||||
void uninit_ferror(void) {
|
void uninit_ferror(void) {
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
|
// cppcheck-suppress ignoredReturnValue
|
||||||
// cppcheck-suppress uninitvar
|
// cppcheck-suppress uninitvar
|
||||||
ferror(fp);
|
ferror(fp);
|
||||||
}
|
}
|
||||||
@ -283,3 +311,9 @@ void uninit_putchar(void) {
|
|||||||
// cppcheck-suppress uninitvar
|
// cppcheck-suppress uninitvar
|
||||||
putchar(c);
|
putchar(c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ignoreretrn(void) {
|
||||||
|
char szNumbers[] = "2001 60c0c0 -1101110100110100100000 0x6fffff";
|
||||||
|
char * pEnd;
|
||||||
|
strtol (szNumbers,&pEnd,10);
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user