blob: 61bfd99e2808e7cd0f9487ab991a2d424cda548e [file] [log] [blame]
void funf(float);
void fund(double);
void funl(long double);
#define fung(X) _Generic(X, \
float: funf, \
default: fund, \
long double: funl) (X)
#define TEST(name, T) \
static void test ## name(T a) { return fung(a); }
TEST(f, float)
TEST(d, double)
TEST(l, long double)
/*
* check-name: generic-functions
* check-command: test-linearize $file
*
* check-output-start
testf:
.L0:
<entry-point>
call funf, %arg1
ret
testd:
.L2:
<entry-point>
call fund, %arg1
ret
testl:
.L4:
<entry-point>
call funl, %arg1
ret
* check-output-end
*/