[clang-tools-extra] 9d76231 - [clang-tidy] Ensure functions are anchored in the global namespace (for cert-err-33) (#99380)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 22 11:26:57 PDT 2024
Author: matthew-f
Date: 2024-07-22T20:26:54+02:00
New Revision: 9d76231fcd3f6ddf9bd6aafe7f143404cad7e4a1
URL: https://github.com/llvm/llvm-project/commit/9d76231fcd3f6ddf9bd6aafe7f143404cad7e4a1
DIFF: https://github.com/llvm/llvm-project/commit/9d76231fcd3f6ddf9bd6aafe7f143404cad7e4a1.diff
LOG: [clang-tidy] Ensure functions are anchored in the global namespace (for cert-err-33) (#99380)
The regular expressions match functions that aren't anchored in the
global namespace. For example `::remove` matches any object with a
`removeXyz` method. This change is to remove these false positives
Added:
Modified:
clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
Removed:
################################################################################
diff --git a/clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp b/clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
index ffb62b409b29b..8b5be9cd95f76 100644
--- a/clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
+++ b/clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
@@ -49,183 +49,183 @@ namespace {
// with NULL argument and in this case the check is not applicable:
// `mblen, mbrlen, mbrtowc, mbtowc, wctomb, wctomb_s`.
// FIXME: The check can be improved to handle such cases.
-const llvm::StringRef CertErr33CCheckedFunctions = "::aligned_alloc;"
- "::asctime_s;"
- "::at_quick_exit;"
- "::atexit;"
- "::bsearch;"
- "::bsearch_s;"
- "::btowc;"
- "::c16rtomb;"
- "::c32rtomb;"
- "::calloc;"
- "::clock;"
- "::cnd_broadcast;"
- "::cnd_init;"
- "::cnd_signal;"
- "::cnd_timedwait;"
- "::cnd_wait;"
- "::ctime_s;"
- "::fclose;"
- "::fflush;"
- "::fgetc;"
- "::fgetpos;"
- "::fgets;"
- "::fgetwc;"
- "::fopen;"
- "::fopen_s;"
- "::fprintf;"
- "::fprintf_s;"
- "::fputc;"
- "::fputs;"
- "::fputwc;"
- "::fputws;"
- "::fread;"
- "::freopen;"
- "::freopen_s;"
- "::fscanf;"
- "::fscanf_s;"
- "::fseek;"
- "::fsetpos;"
- "::ftell;"
- "::fwprintf;"
- "::fwprintf_s;"
- "::fwrite;"
- "::fwscanf;"
- "::fwscanf_s;"
- "::getc;"
- "::getchar;"
- "::getenv;"
- "::getenv_s;"
- "::gets_s;"
- "::getwc;"
- "::getwchar;"
- "::gmtime;"
- "::gmtime_s;"
- "::localtime;"
- "::localtime_s;"
- "::malloc;"
- "::mbrtoc16;"
- "::mbrtoc32;"
- "::mbsrtowcs;"
- "::mbsrtowcs_s;"
- "::mbstowcs;"
- "::mbstowcs_s;"
- "::memchr;"
- "::mktime;"
- "::mtx_init;"
- "::mtx_lock;"
- "::mtx_timedlock;"
- "::mtx_trylock;"
- "::mtx_unlock;"
- "::printf_s;"
- "::putc;"
- "::putwc;"
- "::raise;"
- "::realloc;"
- "::remove;"
- "::rename;"
- "::scanf;"
- "::scanf_s;"
- "::setlocale;"
- "::setvbuf;"
- "::signal;"
- "::snprintf;"
- "::snprintf_s;"
- "::sprintf;"
- "::sprintf_s;"
- "::sscanf;"
- "::sscanf_s;"
- "::strchr;"
- "::strerror_s;"
- "::strftime;"
- "::strpbrk;"
- "::strrchr;"
- "::strstr;"
- "::strtod;"
- "::strtof;"
- "::strtoimax;"
- "::strtok;"
- "::strtok_s;"
- "::strtol;"
- "::strtold;"
- "::strtoll;"
- "::strtoul;"
- "::strtoull;"
- "::strtoumax;"
- "::strxfrm;"
- "::swprintf;"
- "::swprintf_s;"
- "::swscanf;"
- "::swscanf_s;"
- "::thrd_create;"
- "::thrd_detach;"
- "::thrd_join;"
- "::thrd_sleep;"
- "::time;"
- "::timespec_get;"
- "::tmpfile;"
- "::tmpfile_s;"
- "::tmpnam;"
- "::tmpnam_s;"
- "::tss_create;"
- "::tss_get;"
- "::tss_set;"
- "::ungetc;"
- "::ungetwc;"
- "::vfprintf;"
- "::vfprintf_s;"
- "::vfscanf;"
- "::vfscanf_s;"
- "::vfwprintf;"
- "::vfwprintf_s;"
- "::vfwscanf;"
- "::vfwscanf_s;"
- "::vprintf_s;"
- "::vscanf;"
- "::vscanf_s;"
- "::vsnprintf;"
- "::vsnprintf_s;"
- "::vsprintf;"
- "::vsprintf_s;"
- "::vsscanf;"
- "::vsscanf_s;"
- "::vswprintf;"
- "::vswprintf_s;"
- "::vswscanf;"
- "::vswscanf_s;"
- "::vwprintf_s;"
- "::vwscanf;"
- "::vwscanf_s;"
- "::wcrtomb;"
- "::wcschr;"
- "::wcsftime;"
- "::wcspbrk;"
- "::wcsrchr;"
- "::wcsrtombs;"
- "::wcsrtombs_s;"
- "::wcsstr;"
- "::wcstod;"
- "::wcstof;"
- "::wcstoimax;"
- "::wcstok;"
- "::wcstok_s;"
- "::wcstol;"
- "::wcstold;"
- "::wcstoll;"
- "::wcstombs;"
- "::wcstombs_s;"
- "::wcstoul;"
- "::wcstoull;"
- "::wcstoumax;"
- "::wcsxfrm;"
- "::wctob;"
- "::wctrans;"
- "::wctype;"
- "::wmemchr;"
- "::wprintf_s;"
- "::wscanf;"
- "::wscanf_s;";
+const llvm::StringRef CertErr33CCheckedFunctions = "^::aligned_alloc;"
+ "^::asctime_s;"
+ "^::at_quick_exit;"
+ "^::atexit;"
+ "^::bsearch;"
+ "^::bsearch_s;"
+ "^::btowc;"
+ "^::c16rtomb;"
+ "^::c32rtomb;"
+ "^::calloc;"
+ "^::clock;"
+ "^::cnd_broadcast;"
+ "^::cnd_init;"
+ "^::cnd_signal;"
+ "^::cnd_timedwait;"
+ "^::cnd_wait;"
+ "^::ctime_s;"
+ "^::fclose;"
+ "^::fflush;"
+ "^::fgetc;"
+ "^::fgetpos;"
+ "^::fgets;"
+ "^::fgetwc;"
+ "^::fopen;"
+ "^::fopen_s;"
+ "^::fprintf;"
+ "^::fprintf_s;"
+ "^::fputc;"
+ "^::fputs;"
+ "^::fputwc;"
+ "^::fputws;"
+ "^::fread;"
+ "^::freopen;"
+ "^::freopen_s;"
+ "^::fscanf;"
+ "^::fscanf_s;"
+ "^::fseek;"
+ "^::fsetpos;"
+ "^::ftell;"
+ "^::fwprintf;"
+ "^::fwprintf_s;"
+ "^::fwrite;"
+ "^::fwscanf;"
+ "^::fwscanf_s;"
+ "^::getc;"
+ "^::getchar;"
+ "^::getenv;"
+ "^::getenv_s;"
+ "^::gets_s;"
+ "^::getwc;"
+ "^::getwchar;"
+ "^::gmtime;"
+ "^::gmtime_s;"
+ "^::localtime;"
+ "^::localtime_s;"
+ "^::malloc;"
+ "^::mbrtoc16;"
+ "^::mbrtoc32;"
+ "^::mbsrtowcs;"
+ "^::mbsrtowcs_s;"
+ "^::mbstowcs;"
+ "^::mbstowcs_s;"
+ "^::memchr;"
+ "^::mktime;"
+ "^::mtx_init;"
+ "^::mtx_lock;"
+ "^::mtx_timedlock;"
+ "^::mtx_trylock;"
+ "^::mtx_unlock;"
+ "^::printf_s;"
+ "^::putc;"
+ "^::putwc;"
+ "^::raise;"
+ "^::realloc;"
+ "^::remove;"
+ "^::rename;"
+ "^::scanf;"
+ "^::scanf_s;"
+ "^::setlocale;"
+ "^::setvbuf;"
+ "^::signal;"
+ "^::snprintf;"
+ "^::snprintf_s;"
+ "^::sprintf;"
+ "^::sprintf_s;"
+ "^::sscanf;"
+ "^::sscanf_s;"
+ "^::strchr;"
+ "^::strerror_s;"
+ "^::strftime;"
+ "^::strpbrk;"
+ "^::strrchr;"
+ "^::strstr;"
+ "^::strtod;"
+ "^::strtof;"
+ "^::strtoimax;"
+ "^::strtok;"
+ "^::strtok_s;"
+ "^::strtol;"
+ "^::strtold;"
+ "^::strtoll;"
+ "^::strtoul;"
+ "^::strtoull;"
+ "^::strtoumax;"
+ "^::strxfrm;"
+ "^::swprintf;"
+ "^::swprintf_s;"
+ "^::swscanf;"
+ "^::swscanf_s;"
+ "^::thrd_create;"
+ "^::thrd_detach;"
+ "^::thrd_join;"
+ "^::thrd_sleep;"
+ "^::time;"
+ "^::timespec_get;"
+ "^::tmpfile;"
+ "^::tmpfile_s;"
+ "^::tmpnam;"
+ "^::tmpnam_s;"
+ "^::tss_create;"
+ "^::tss_get;"
+ "^::tss_set;"
+ "^::ungetc;"
+ "^::ungetwc;"
+ "^::vfprintf;"
+ "^::vfprintf_s;"
+ "^::vfscanf;"
+ "^::vfscanf_s;"
+ "^::vfwprintf;"
+ "^::vfwprintf_s;"
+ "^::vfwscanf;"
+ "^::vfwscanf_s;"
+ "^::vprintf_s;"
+ "^::vscanf;"
+ "^::vscanf_s;"
+ "^::vsnprintf;"
+ "^::vsnprintf_s;"
+ "^::vsprintf;"
+ "^::vsprintf_s;"
+ "^::vsscanf;"
+ "^::vsscanf_s;"
+ "^::vswprintf;"
+ "^::vswprintf_s;"
+ "^::vswscanf;"
+ "^::vswscanf_s;"
+ "^::vwprintf_s;"
+ "^::vwscanf;"
+ "^::vwscanf_s;"
+ "^::wcrtomb;"
+ "^::wcschr;"
+ "^::wcsftime;"
+ "^::wcspbrk;"
+ "^::wcsrchr;"
+ "^::wcsrtombs;"
+ "^::wcsrtombs_s;"
+ "^::wcsstr;"
+ "^::wcstod;"
+ "^::wcstof;"
+ "^::wcstoimax;"
+ "^::wcstok;"
+ "^::wcstok_s;"
+ "^::wcstol;"
+ "^::wcstold;"
+ "^::wcstoll;"
+ "^::wcstombs;"
+ "^::wcstombs_s;"
+ "^::wcstoul;"
+ "^::wcstoull;"
+ "^::wcstoumax;"
+ "^::wcsxfrm;"
+ "^::wctob;"
+ "^::wctrans;"
+ "^::wctype;"
+ "^::wmemchr;"
+ "^::wprintf_s;"
+ "^::wscanf;"
+ "^::wscanf_s;";
} // namespace
More information about the cfe-commits
mailing list