mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-30 04:16:08 +00:00

A significant number of our tests in C accidentally use functions without prototypes. This patch converts the function signatures to have a prototype for the situations where the test is not specific to K&R C declarations. e.g., void func(); becomes void func(void); This is the eighth batch of tests being updated (there are a significant number of other tests left to be updated).
23 lines
750 B
C
23 lines
750 B
C
// RUN: %clang_analyze_cc1 -verify=untrusted-env %s \
|
|
// RUN: -analyzer-checker=core \
|
|
// RUN: -analyzer-checker=alpha.security.taint \
|
|
// RUN: -analyzer-checker=debug.TaintTest
|
|
|
|
// RUN: %clang_analyze_cc1 -verify %s -DEXPECT_NO_WARNINGS \
|
|
// RUN: -analyzer-config assume-controlled-environment=true \
|
|
// RUN: -analyzer-checker=core \
|
|
// RUN: -analyzer-checker=alpha.security.taint \
|
|
// RUN: -analyzer-checker=debug.TaintTest
|
|
|
|
|
|
#ifdef EXPECT_NO_WARNINGS
|
|
// expected-no-diagnostics
|
|
#endif
|
|
|
|
char *getenv(const char *name);
|
|
|
|
void foo(void) {
|
|
char *p = getenv("FOO"); // untrusted-env-warning {{tainted}}
|
|
(void)p; // untrusted-env-warning {{tainted}}
|
|
}
|