LDOUBLE
#define __TG_FN1(fn, a) __TG_GFN1(fn, a, FLOAT, LDOUBLE)
#define __TG_FN1x(fn, a, b) __TG_GFN1x(fn, a, b, FLOAT, LDOUBLE)
#define __TG_FN2(fn, a, b) __TG_GFN2(fn, a, b, FLOAT, LDOUBLE)
#define __TG_FN2x(fn, a, b, c) __TG_GFN2x(fn, a, b, c, FLOAT, LDOUBLE)
#define __TG_FN3(fn, a, b, c) __TG_GFN3(fn, a, b, c, FLOAT, LDOUBLE)
typeinfo("long double", LDOUBLE, LDOUBLE, LDOUBLE_SIZE, 3, 'f'),
lt = LDOUBLE;
if ((l == LONG && t == DOUBLE) || t == LDOUBLE) {
t = LDOUBLE;
if (t == LDOUBLE && !allow_c90)
else if (t == COMPLEX && c == LDOUBLE)
t = imaginary ? LCOMPLEX : LDOUBLE;
LDOUBLE, DOUBLE, FLOAT,
if (lt == LDOUBLE || rt == LDOUBLE)
return LDOUBLE;
t = LDOUBLE;
case LDOUBLE:
lint_assert(nt != LDOUBLE);
else if (nt == LDOUBLE || nt == LCOMPLEX)
} else if (nt == LDOUBLE) {
if (ot == FLOAT || ot == DOUBLE || ot == LDOUBLE)
sz = LDOUBLE;
if (alt || sz == LDOUBLE) {
if ((alt && fc == 'u') || sz == LDOUBLE)
if (sz != DOUBLE && sz != LDOUBLE)
if (fwidth || prec || alt || zero || sz == LDOUBLE)
sz = LDOUBLE;
if (sz == LDOUBLE)
if (sz == LDOUBLE)
if (sz != NO_TSPEC && sz != LONG && sz != LDOUBLE)
} else if (sz != LDOUBLE) {
return s == 's' ? FLOAT : (s == 'l' ? LDOUBLE : DOUBLE);
t = LDOUBLE;