1 // RUN: %clang_cc1 -triple %itanium_abi_triple -emit-llvm %s -o - | FileCheck %s 2 // CHECK: _Z1fPA10_1X 3 f(int x)4int __attribute__((overloadable)) f(int x) { return x; } f(float x)5float __attribute__((overloadable)) f(float x) { return x; } f(double x)6double __attribute__((overloadable)) f(double x) { return x; } f(double _Complex x)7double _Complex __attribute__((overloadable)) f(double _Complex x) { return x; } 8 typedef short v4hi __attribute__ ((__vector_size__ (8))); f(v4hi x)9v4hi __attribute__((overloadable)) f(v4hi x) { return x; } 10 11 struct X { }; f(struct X (* ptr)[10])12void __attribute__((overloadable)) f(struct X (*ptr)[10]) { } 13 f(int x,int y,...)14void __attribute__((overloadable)) f(int x, int y, ...) { } 15 main()16int 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