1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -fsyntax-only %s -verify -pedantic 2*f4a2713aSLionel Sambuc // expected-no-diagnostics 3*f4a2713aSLionel Sambuc 4*f4a2713aSLionel Sambuc // Math stuff 5*f4a2713aSLionel Sambuc 6*f4a2713aSLionel Sambuc float g0 = __builtin_huge_val(); 7*f4a2713aSLionel Sambuc double g1 = __builtin_huge_valf(); 8*f4a2713aSLionel Sambuc long double g2 = __builtin_huge_vall(); 9*f4a2713aSLionel Sambuc float g3 = __builtin_inf(); 10*f4a2713aSLionel Sambuc double g4 = __builtin_inff(); 11*f4a2713aSLionel Sambuc long double g5 = __builtin_infl(); 12*f4a2713aSLionel Sambuc 13*f4a2713aSLionel Sambuc // GCC misc stuff 14*f4a2713aSLionel Sambuc 15*f4a2713aSLionel Sambuc extern int f(); 16*f4a2713aSLionel Sambuc 17*f4a2713aSLionel Sambuc int h0 = __builtin_types_compatible_p(int,float); 18*f4a2713aSLionel Sambuc //int h1 = __builtin_choose_expr(1, 10, f()); 19*f4a2713aSLionel Sambuc //int h2 = __builtin_expect(0, 0); 20*f4a2713aSLionel Sambuc int h3 = __builtin_bswap16(0x1234) == 0x3412 ? 1 : f(); 21*f4a2713aSLionel Sambuc int h4 = __builtin_bswap32(0x1234) == 0x34120000 ? 1 : f(); 22*f4a2713aSLionel Sambuc int h5 = __builtin_bswap64(0x1234) == 0x3412000000000000 ? 1 : f(); 23*f4a2713aSLionel Sambuc 24*f4a2713aSLionel Sambuc short somefunc(); 25*f4a2713aSLionel Sambuc 26*f4a2713aSLionel Sambuc short t = __builtin_constant_p(5353) ? 42 : somefunc(); 27*f4a2713aSLionel Sambuc 28*f4a2713aSLionel Sambuc 29