llvm-project/clang/test/Headers/arm-cmse-header-ns.c

28 lines
1016 B
C

// RUN: %clang_cc1 -triple thumbv8m.base-eabi -fsyntax-only %s 2>&1 | FileCheck --check-prefix=CHECK-c %s
// RUN: not %clang_cc1 -triple thumbv8m.base-eabi -fsyntax-only -x c++ %s 2>&1 | FileCheck --check-prefix=CHECK-cpp %s
#include <arm_cmse.h>
typedef void (*callback_t)(void);
void func(callback_t fptr, void *p)
{
cmse_TT(p);
cmse_TTT(p);
cmse_TT_fptr(fptr);
cmse_TTT_fptr(fptr);
cmse_TTA(p);
cmse_TTAT(p);
cmse_TTA_fptr(fptr);
cmse_TTAT_fptr(fptr);
// CHECK-c: warning: implicit declaration of function 'cmse_TTA'
// CHECK-c: warning: implicit declaration of function 'cmse_TTAT'
// CHECK-c: warning: implicit declaration of function 'cmse_TTA_fptr'
// CHECK-c: warning: implicit declaration of function 'cmse_TTAT_fptr'
// CHECK-cpp: error: use of undeclared identifier 'cmse_TTA'
// CHECK-cpp: error: use of undeclared identifier 'cmse_TTAT'
// CHECK-cpp: error: use of undeclared identifier 'cmse_TTA_fptr'
// CHECK-cpp: error: use of undeclared identifier 'cmse_TTAT_fptr'
}