a->v.unsigned64 = (uint64) (uintptr_t) va_arg(va, void *);
break;
+#ifndef NO_FLOATING_POINT
case MSGFMT_ARG_FLOAT64:
- ASSERT_ON_COMPILE(sizeof (double) == 8);
- a->v.float64 = va_arg(va, double);
+ ASSERT_ON_COMPILE(sizeof (double) == 8);
+ a->v.float64 = va_arg(va, double);
break;
+#endif
case MSGFMT_ARG_STRING8: {
const char *p = va_arg(va, char *);
case 'G':
case 'a':
case 'A':
+#ifndef NO_FLOATING_POINT
switch (lengthMod) {
// l h hh t z are not defined by man page, but allowed by glibc
case '\0':
NOT_REACHED();
}
break;
+#else
+ MsgFmtError(state,
+ "MsgFmtGetArg1: %%%c%c not supported, "
+ "pos \"%.*s\", type \"%.*s\"",
+ lengthMod, conversion, posSize, pos, typeSize, type);
+ return -2;
+#endif /*! NO_FLOATING_POINT */
case 'c':
switch (lengthMod) {