cppcheck/test/cfg/std.cpp

68 lines
1.7 KiB
C++
Raw Normal View History

// Test library configuration for std.cfg
//
// Usage:
// $ cppcheck --check-library --enable=information --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/std.cpp
// =>
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
//
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <cctype>
#include <complex>
void bufferAccessOutOfBounds(void)
{
char a[5];
std::strcpy(a,"abcd");
// cppcheck-suppress bufferAccessOutOfBounds
// cppcheck-suppress redundantCopy
std::strcpy(a, "abcde");
// cppcheck-suppress redundantCopy
std::strncpy(a,"abcde",5);
// cppcheck-suppress bufferAccessOutOfBounds
// cppcheck-suppress redundantCopy
std::strncpy(a,"abcde",6);
}
void uninitvar(void)
{
int i;
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::abs(i);
double d;
const std::complex<double> dc(d,d);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::proj(dc);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isalnum(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isalpha(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::iscntrl(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isdigit(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isgraph(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::islower(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isprint(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isspace(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isupper(i);
// cppcheck-suppress uninitvar
2015-08-15 14:35:23 +02:00
(void)std::isxdigit(i);
const struct tm *tm;
// cppcheck-suppress uninitvar
// cppcheck-suppress obsoleteFunctionsasctime
2015-08-15 14:35:23 +02:00
(void)std::asctime(tm);
}