brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · 9e6cd73 Raw
32 lines · cpp
1// RUN: %clang_cc1 -triple x86_64-linux -verify -emit-llvm-only %s2// RUN: %clang_cc1 -triple x86_64-apple-macosx -verify -emit-llvm-only %s3// RUN: %clang_cc1 -triple arm64-apple-macosx -verify -emit-llvm-only %s4// RUN: not %clang_cc1 -triple x86_64-linux -emit-llvm-only -fdiagnostics-parseable-fixits %s 2>&1 | FileCheck %s5// RUN: not %clang_cc1 -triple x86_64-apple-macosx -emit-llvm-only -fdiagnostics-parseable-fixits %s 2>&1 | FileCheck %s6// RUN: not %clang_cc1 -triple arm64-apple-macosx -emit-llvm-only -fdiagnostics-parseable-fixits %s 2>&1 | FileCheck %s7 8void *f1_ifunc(void) { return nullptr; }9void f1(void) __attribute__((ifunc("f1_ifunc")));10// expected-error@-1 {{ifunc must point to a defined function}}11// expected-note@-2 {{must refer to its mangled name}}12// expected-note@-3 {{function by that name is mangled as}}13// CHECK: fix-it:"{{.*}}":{[[@LINE-4]]:30-[[@LINE-4]]:47}:"ifunc(\"_Z8f1_ifuncv\")"14 15void *f6_resolver_resolver(void) { return 0; }16void *f6_resolver(void) __attribute__((ifunc("f6_resolver_resolver")));17// expected-error@-1 {{ifunc must point to a defined function}}18// expected-note@-2 {{must refer to its mangled name}}19// expected-note@-3 {{function by that name is mangled as}}20// CHECK: fix-it:"{{.*}}":{[[@LINE-4]]:40-[[@LINE-4]]:69}:"ifunc(\"_Z20f6_resolver_resolverv\")"21void f6(void) __attribute__((ifunc("f6_resolver")));22// expected-error@-1 {{ifunc must point to a defined function}}23// expected-note@-2 {{must refer to its mangled name}}24// expected-note@-3 {{function by that name is mangled as}}25// CHECK: fix-it:"{{.*}}":{[[@LINE-4]]:30-[[@LINE-4]]:50}:"ifunc(\"_Z11f6_resolverv\")"26 27__attribute__((unused, ifunc("resolver"), deprecated("hahahaha, isn't C great?")))28void func();29// expected-error@-2 {{ifunc must point to a defined function}}30// expected-note@-3 {{must refer to its mangled name}}31 32