1 // RUN: %clang_cc1 -triple %itanium_abi_triple -emit-llvm %s -o - | FileCheck %s 2 // CHECK: _Z1fPA10_1X 3 4 int __attribute__((overloadable)) f(int x) { return x; } 5 float __attribute__((overloadable)) f(float x) { return x; } 6 double __attribute__((overloadable)) f(double x) { return x; } 7 double _Complex __attribute__((overloadable)) f(double _Complex x) { return x; } 8 typedef short v4hi __attribute__ ((__vector_size__ (8))); 9 v4hi __attribute__((overloadable)) f(v4hi x) { return x; } 10 11 struct X { }; 12 void __attribute__((overloadable)) f(struct X (*ptr)[10]) { } 13 14 void __attribute__((overloadable)) f(int x, int y, ...) { } 15 16 int main() { 17 int iv = 17; 18 float fv = 3.0f; 19 double dv = 4.0; 20 double _Complex cdv; 21 v4hi vv; 22 23 iv = f(iv); 24 fv = f(fv); 25 dv = f(dv); 26 cdv = f(cdv); 27 vv = f(vv); 28 } 29