blob: 514a5612aec2b204e83a63f0327ce944094d9b9c [file] [log] [blame]
// RUN: %check_clang_tidy %s readability-identifier-naming %t -- \
// RUN: -config='{CheckOptions: [ \
// RUN: {key: readability-identifier-naming.ParameterCase, value: CamelCase}, \
// RUN: {key: readability-identifier-naming.IgnoreMainLikeFunctions, value: true} \
// RUN: ]}'
int mainLike(int argc, char **argv);
int mainLike(int argc, char **argv, const char **env);
int mainLike(int argc, const char **argv);
int mainLike(int argc, const char **argv, const char **env);
int mainLike(int argc, char *argv[]);
int mainLike(int argc, const char *argv[]);
int mainLike(int argc, char *argv[], char *env[]);
int mainLike(int argc, const char *argv[], const char *env[]);
void notMain(int argc, char **argv);
// CHECK-MESSAGES: :[[@LINE-1]]:18: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:31: warning: invalid case style for parameter 'argv'
void notMain(int argc, char **argv, char **env);
// CHECK-MESSAGES: :[[@LINE-1]]:18: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:31: warning: invalid case style for parameter 'argv'
// CHECK-MESSAGES: :[[@LINE-3]]:44: warning: invalid case style for parameter 'env'
int notMain(int argc, char **argv, char **env, int Extra);
// CHECK-MESSAGES: :[[@LINE-1]]:17: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:30: warning: invalid case style for parameter 'argv'
// CHECK-MESSAGES: :[[@LINE-3]]:43: warning: invalid case style for parameter 'env'
int notMain(int argc, char **argv, int Extra);
// CHECK-MESSAGES: :[[@LINE-1]]:17: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:30: warning: invalid case style for parameter 'argv'
int notMain(int argc, char *argv);
// CHECK-MESSAGES: :[[@LINE-1]]:17: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:29: warning: invalid case style for parameter 'argv'
int notMain(unsigned argc, char **argv);
// CHECK-MESSAGES: :[[@LINE-1]]:22: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:35: warning: invalid case style for parameter 'argv'
int notMain(long argc, char *argv);
// CHECK-MESSAGES: :[[@LINE-1]]:18: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:30: warning: invalid case style for parameter 'argv'
int notMain(int argc, char16_t **argv);
// CHECK-MESSAGES: :[[@LINE-1]]:17: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:34: warning: invalid case style for parameter 'argv'
int notMain(int argc, char argv[]);
// CHECK-MESSAGES: :[[@LINE-1]]:17: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:28: warning: invalid case style for parameter 'argv'
typedef char myFunChar;
typedef int myFunInt;
typedef char **myFunCharPtr;
typedef long myFunLong;
myFunInt mainLikeTypedef(myFunInt argc, myFunChar **argv);
int mainLikeTypedef(int argc, myFunCharPtr argv);
int notMainTypedef(myFunLong argc, char **argv);
// CHECK-MESSAGES: :[[@LINE-1]]:30: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:43: warning: invalid case style for parameter 'argv'
// Don't flag as name contains the word main
int myMainFunction(int argc, char *argv[]);
// This is fine, named with wmain and has wchar ptr.
int wmainLike(int argc, wchar_t *argv[]);
// Flag this as has signature of main, but named as wmain.
int wmainLike(int argc, char *argv[]);
// CHECK-MESSAGES: :[[@LINE-1]]:19: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:31: warning: invalid case style for parameter 'argv'
struct Foo {
Foo(int argc, char *argv[]) {}
// CHECK-MESSAGES: :[[@LINE-1]]:11: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:23: warning: invalid case style for parameter 'argv'
int mainPub(int argc, char *argv[]);
static int mainPubStatic(int argc, char *argv[]);
protected:
int mainProt(int argc, char *argv[]);
// CHECK-MESSAGES: :[[@LINE-1]]:20: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:32: warning: invalid case style for parameter 'argv'
static int mainProtStatic(int argc, char *argv[]);
// CHECK-MESSAGES: :[[@LINE-1]]:33: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:45: warning: invalid case style for parameter 'argv'
private:
int mainPriv(int argc, char *argv[]);
// CHECK-MESSAGES: :[[@LINE-1]]:20: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:32: warning: invalid case style for parameter 'argv'
static int mainPrivStatic(int argc, char *argv[]);
// CHECK-MESSAGES: :[[@LINE-1]]:33: warning: invalid case style for parameter 'argc'
// CHECK-MESSAGES: :[[@LINE-2]]:45: warning: invalid case style for parameter 'argv'
};