// RUN: %check_clang_tidy %s google-objc-function-naming %t -- -- -isystem %clang_tidy_headers
#include <stdio.h>
static void TestImplicitFunctionDeclaration(int a) {
// Call a builtin function so that the compiler generates an implicit
// function declaration.
printf("%d", a);
}
typedef _Bool bool;
static bool ispositive(int a) { return a > 0; }
// CHECK-MESSAGES: :[[@LINE-1]]:13: warning: static function named 'ispositive'
// must be in Pascal case as required by Google Objective-C style guide
// CHECK-FIXES: static bool Ispositive(int a) { return a > 0; }
static bool is_positive(int a) { return a > 0; }
// CHECK-MESSAGES: :[[@LINE-1]]:13: warning: static function named 'is_positive'
// must be in Pascal case as required by Google Objective-C style guide
// CHECK-FIXES: static bool IsPositive(int a) { return a > 0; }
static bool isPositive(int a) { return a > 0; }
// CHECK-MESSAGES: :[[@LINE-1]]:13: warning: static function named 'isPositive'
// must be in Pascal case as required by Google Objective-C style guide
// CHECK-FIXES: static bool IsPositive(int a) { return a > 0; }
static bool Is_Positive(int a) { return a > 0; }
// CHECK-MESSAGES: :[[@LINE-1]]:13: warning: static function named 'Is_Positive'
// must be in Pascal case as required by Google Objective-C style guide
// CHECK-FIXES: static bool IsPositive(int a) { return a > 0; }
static bool IsPositive(int a) { return a > 0; }
bool ispalindrome(const char *str);
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: function in global namespace named
// 'ispalindrome' must have an appropriate prefix followed by Pascal case as
// required by Google Objective-C style guide
static const char *md5(const char *str) { return 0; }
// CHECK-MESSAGES: :[[@LINE-1]]:20: warning: static function named 'md5' must be
// in Pascal case as required by Google Objective-C style guide
// CHECK-FIXES: static const char *Md5(const char *str) { return 0; }
static const char *MD5(const char *str) { return 0; }
static const char *URL(void) { return "https://clang.llvm.org/"; }
static const char *DEFURL(void) { return "https://clang.llvm.org/"; }
static const char *DEFFooURL(void) { return "https://clang.llvm.org/"; }
static const char *StringFromNSString(id str) { return ""; }
void ABLog_String(const char *str);
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: function in global namespace named
// 'ABLog_String' must have an appropriate prefix followed by Pascal case as
// required by Google Objective-C style guide
void ABLogString(const char *str);
bool IsPrime(int a);
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: function in global namespace named
// 'IsPrime' must have an appropriate prefix followed by Pascal case as required
// by Google Objective-C style guide
const char *ABURL(void) { return "https://clang.llvm.org/"; }
const char *ABFooURL(void) { return "https://clang.llvm.org/"; }
int main(int argc, const char **argv) { return 0; }