summaryrefslogtreecommitdiff
path: root/modules/format.c
diff options
context:
space:
mode:
authorEric Blake <ebb9@byu.net>2009-12-14 13:52:15 -0700
committerEric Blake <ebb9@byu.net>2010-01-05 22:03:49 -0700
commitcdff6b56f2f9e848722f93e45803be19609641b5 (patch)
tree5db3706f72910fbd1ef87ff031a6e08f92c9f533 /modules/format.c
parent1270f0e114d5b7f442362a4952f185920886045e (diff)
downloadm4-cdff6b56f2f9e848722f93e45803be19609641b5.tar.gz
Switch to indentation by space, not tab.
Now that gnulib has converted and git has better support for ignoring whitespace differences across this commit, we might as well be consistent with other GNU projects. Done with: t=$'\t' git ls-files \ | grep -vE '(^|/)(.*akefile|ChangeLog|HACKING|.*-aux/.*)|\.(am|mk)$' \ | xargs grep -lE "^ *$t" \ | xargs perl -MText::Tabs -ni -le \ '$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_' followed by tweaks to pass 'make check' again. * .gitmodules: Convert leading tabs to spaces. * TODO: Likewise. * bootstrap: Likewise. * configure.ac: Likewise. * examples/WWW/m4lib/html.m4: Likewise. * examples/WWW/m4lib/layout.m4: Likewise. * examples/WWW/m4lib/menu.m4: Likewise. * ltdl/m4/debug.m4: Likewise. * ltdl/m4/gmp.m4: Likewise. * ltdl/m4/m4-obstack.m4: Likewise. * ltdl/m4/stackovf.m4: Likewise. * m4/builtin.c: Likewise. * m4/debug.c: Likewise. * m4/hash.c: Likewise. * m4/hash.h: Likewise. * m4/input.c: Likewise. * m4/m4.c: Likewise. * m4/m4module.h: Likewise. * m4/m4private.h: Likewise. * m4/macro.c: Likewise. * m4/module.c: Likewise. * m4/output.c: Likewise. * m4/path.c: Likewise. * m4/resyntax.c: Likewise. * m4/symtab.c: Likewise. * m4/syntax.c: Likewise. * m4/utility.c: Likewise. * modules/evalparse.c: Likewise. * modules/format.c: Likewise. * modules/gnu.c: Likewise. * modules/load.c: Likewise. * modules/m4.c: Likewise. * modules/m4.h: Likewise. * modules/mpeval.c: Likewise. * modules/perl.c: Likewise. * modules/stdlib.c: Likewise. * modules/time.c: Likewise. * src/freeze.c: Likewise. * src/m4.h: Likewise. * src/main.c: Likewise. * src/stackovf.c: Likewise. * tests/builtins.at: Likewise. * tests/freeze.at: Likewise. * tests/generate.awk: Likewise. * tests/modules.at: Likewise. * tests/others.at: Likewise. * tests/stackovf.test: Likewise. * tests/testsuite.at: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net> (cherry picked from commit 180b7d19bf95d2abb21bca587a0684eca69679ad)
Diffstat (limited to 'modules/format.c')
-rw-r--r--modules/format.c372
1 files changed, 186 insertions, 186 deletions
diff --git a/modules/format.c b/modules/format.c
index 97be02f3..61338b9d 100644
--- a/modules/format.c
+++ b/modules/format.c
@@ -30,7 +30,7 @@
of ME. */
static int
arg_int (struct m4 *context, const m4_call_info *me, const char *str,
- size_t len)
+ size_t len)
{
char *endp;
long value;
@@ -46,7 +46,7 @@ arg_int (struct m4 *context, const m4_call_info *me, const char *str,
value = strtol (str, &endp, 10);
if (endp - str != len)
m4_warn (context, 0, me, _("non-numeric argument %s"),
- quotearg_style_mem (locale_quoting_style, str, len));
+ quotearg_style_mem (locale_quoting_style, str, len));
else if (isspace (to_uchar (*str)))
m4_warn (context, 0, me, _("leading whitespace ignored"));
else if (errno == ERANGE || (int) value != value)
@@ -58,7 +58,7 @@ arg_int (struct m4 *context, const m4_call_info *me, const char *str,
ME. */
static long
arg_long (struct m4 *context, const m4_call_info *me, const char *str,
- size_t len)
+ size_t len)
{
char *endp;
long value;
@@ -74,7 +74,7 @@ arg_long (struct m4 *context, const m4_call_info *me, const char *str,
value = strtol (str, &endp, 10);
if (endp - str != len)
m4_warn (context, 0, me, _("non-numeric argument %s"),
- quotearg_style_mem (locale_quoting_style, str, len));
+ quotearg_style_mem (locale_quoting_style, str, len));
else if (isspace (to_uchar (*str)))
m4_warn (context, 0, me, _("leading whitespace ignored"));
else if (errno == ERANGE)
@@ -86,11 +86,11 @@ arg_long (struct m4 *context, const m4_call_info *me, const char *str,
behalf of ME. */
static const char *
arg_string (struct m4 *context, const m4_call_info *me, const char *str,
- size_t len)
+ size_t len)
{
if (strlen (str) < len)
m4_warn (context, 0, me, _("argument %s truncated"),
- quotearg_style_mem (locale_quoting_style, str, len));
+ quotearg_style_mem (locale_quoting_style, str, len));
return str;
}
@@ -98,7 +98,7 @@ arg_string (struct m4 *context, const m4_call_info *me, const char *str,
of ME. */
static double
arg_double (struct m4 *context, const m4_call_info *me, const char *str,
- size_t len)
+ size_t len)
{
char *endp;
double value;
@@ -112,7 +112,7 @@ arg_double (struct m4 *context, const m4_call_info *me, const char *str,
value = strtod (str, &endp);
if (endp - str != len)
m4_warn (context, 0, me, _("non-numeric argument %s"),
- quotearg_style_mem (locale_quoting_style, str, len));
+ quotearg_style_mem (locale_quoting_style, str, len));
else if (isspace (to_uchar (*str)))
m4_warn (context, 0, me, _("leading whitespace ignored"));
else if (errno == ERANGE)
@@ -186,233 +186,233 @@ format (m4 *context, m4_obstack *obs, int argc, m4_macro_args *argv)
{
const char *percent = (char *) memchr (fmt, '%', f_len);
if (!percent)
- {
- obstack_grow (obs, fmt, f_len);
- break;
- }
+ {
+ obstack_grow (obs, fmt, f_len);
+ break;
+ }
obstack_grow (obs, fmt, percent - fmt);
f_len -= percent - fmt + 1;
fmt = percent + 1;
if (*fmt == '%')
- {
- obstack_1grow (obs, '%');
- fmt++;
- f_len--;
- continue;
- }
+ {
+ obstack_1grow (obs, '%');
+ fmt++;
+ f_len--;
+ continue;
+ }
p = fstart + 1; /* % */
lflag = 0;
ok['a'] = ok['A'] = ok['c'] = ok['d'] = ok['e'] = ok['E']
- = ok['f'] = ok['F'] = ok['g'] = ok['G'] = ok['i'] = ok['o']
- = ok['s'] = ok['u'] = ok['x'] = ok['X'] = 1;
+ = ok['f'] = ok['F'] = ok['g'] = ok['G'] = ok['i'] = ok['o']
+ = ok['s'] = ok['u'] = ok['x'] = ok['X'] = 1;
/* Parse flags. */
flags = 0;
do
- {
- switch (*fmt)
- {
- case '\'': /* thousands separator */
- ok['a'] = ok['A'] = ok['c'] = ok['e'] = ok['E']
- = ok['o'] = ok['s'] = ok['x'] = ok['X'] = 0;
- flags |= THOUSANDS;
- break;
-
- case '+': /* mandatory sign */
- ok['c'] = ok['o'] = ok['s'] = ok['u'] = ok['x'] = ok['X'] = 0;
- flags |= PLUS;
- break;
-
- case ' ': /* space instead of positive sign */
- ok['c'] = ok['o'] = ok['s'] = ok['u'] = ok['x'] = ok['X'] = 0;
- flags |= SPACE;
- break;
-
- case '0': /* zero padding */
- ok['c'] = ok['s'] = 0;
- flags |= ZERO;
- break;
-
- case '#': /* alternate output */
- ok['c'] = ok['d'] = ok['i'] = ok['s'] = ok['u'] = 0;
- flags |= ALT;
- break;
-
- case '-': /* left justification */
- flags |= MINUS;
- break;
-
- default:
- flags |= DONE;
- break;
- }
- }
+ {
+ switch (*fmt)
+ {
+ case '\'': /* thousands separator */
+ ok['a'] = ok['A'] = ok['c'] = ok['e'] = ok['E']
+ = ok['o'] = ok['s'] = ok['x'] = ok['X'] = 0;
+ flags |= THOUSANDS;
+ break;
+
+ case '+': /* mandatory sign */
+ ok['c'] = ok['o'] = ok['s'] = ok['u'] = ok['x'] = ok['X'] = 0;
+ flags |= PLUS;
+ break;
+
+ case ' ': /* space instead of positive sign */
+ ok['c'] = ok['o'] = ok['s'] = ok['u'] = ok['x'] = ok['X'] = 0;
+ flags |= SPACE;
+ break;
+
+ case '0': /* zero padding */
+ ok['c'] = ok['s'] = 0;
+ flags |= ZERO;
+ break;
+
+ case '#': /* alternate output */
+ ok['c'] = ok['d'] = ok['i'] = ok['s'] = ok['u'] = 0;
+ flags |= ALT;
+ break;
+
+ case '-': /* left justification */
+ flags |= MINUS;
+ break;
+
+ default:
+ flags |= DONE;
+ break;
+ }
+ }
while (!(flags & DONE) && (f_len--, fmt++));
if (flags & THOUSANDS)
- *p++ = '\'';
+ *p++ = '\'';
if (flags & PLUS)
- *p++ = '+';
+ *p++ = '+';
if (flags & MINUS)
- *p++ = '-';
+ *p++ = '-';
if (flags & SPACE)
- *p++ = ' ';
+ *p++ = ' ';
if (flags & ZERO)
- *p++ = '0';
+ *p++ = '0';
if (flags & ALT)
- *p++ = '#';
+ *p++ = '#';
/* Minimum field width; an explicit 0 is the same as not giving
- the width. */
+ the width. */
width = 0;
*p++ = '*';
if (*fmt == '*')
- {
- width = ARG_INT (i, argc, argv);
- fmt++;
- f_len--;
- }
+ {
+ width = ARG_INT (i, argc, argv);
+ fmt++;
+ f_len--;
+ }
else
- while (isdigit ((unsigned char) *fmt))
- {
- width = 10 * width + *fmt - '0';
- fmt++;
- f_len--;
- }
+ while (isdigit ((unsigned char) *fmt))
+ {
+ width = 10 * width + *fmt - '0';
+ fmt++;
+ f_len--;
+ }
/* Maximum precision; an explicit negative precision is the same
- as not giving the precision. A lone '.' is a precision of 0. */
+ as not giving the precision. A lone '.' is a precision of 0. */
prec = -1;
*p++ = '.';
*p++ = '*';
if (*fmt == '.')
- {
- ok['c'] = 0;
- f_len--;
- if (*(++fmt) == '*')
- {
- prec = ARG_INT (i, argc, argv);
- ++fmt;
- f_len--;
- }
- else
- {
- prec = 0;
- while (isdigit ((unsigned char) *fmt))
- {
- prec = 10 * prec + *fmt - '0';
- fmt++;
- f_len--;
- }
- }
- }
+ {
+ ok['c'] = 0;
+ f_len--;
+ if (*(++fmt) == '*')
+ {
+ prec = ARG_INT (i, argc, argv);
+ ++fmt;
+ f_len--;
+ }
+ else
+ {
+ prec = 0;
+ while (isdigit ((unsigned char) *fmt))
+ {
+ prec = 10 * prec + *fmt - '0';
+ fmt++;
+ f_len--;
+ }
+ }
+ }
/* Length modifiers. We don't yet recognize ll, j, t, or z. */
if (*fmt == 'l')
- {
- *p++ = 'l';
- lflag = 1;
- fmt++;
- f_len--;
- ok['c'] = ok['s'] = 0;
- }
+ {
+ *p++ = 'l';
+ lflag = 1;
+ fmt++;
+ f_len--;
+ ok['c'] = ok['s'] = 0;
+ }
else if (*fmt == 'h')
- {
- *p++ = 'h';
- fmt++;
- f_len--;
- if (*fmt == 'h')
- {
- *p++ = 'h';
- fmt++;
- f_len--;
- }
- ok['a'] = ok['A'] = ok['c'] = ok['e'] = ok['E'] = ok['f'] = ok['F']
- = ok['g'] = ok['G'] = ok['s'] = 0;
- }
+ {
+ *p++ = 'h';
+ fmt++;
+ f_len--;
+ if (*fmt == 'h')
+ {
+ *p++ = 'h';
+ fmt++;
+ f_len--;
+ }
+ ok['a'] = ok['A'] = ok['c'] = ok['e'] = ok['E'] = ok['f'] = ok['F']
+ = ok['g'] = ok['G'] = ok['s'] = 0;
+ }
c = *fmt;
if (c > sizeof ok || !ok[c] || !f_len)
- {
- m4_warn (context, 0, me, _("unrecognized specifier in %s"),
- quotearg_style_mem (locale_quoting_style, f, M4ARGLEN (1)));
- valid_format = false;
- continue;
- }
+ {
+ m4_warn (context, 0, me, _("unrecognized specifier in %s"),
+ quotearg_style_mem (locale_quoting_style, f, M4ARGLEN (1)));
+ valid_format = false;
+ continue;
+ }
fmt++;
f_len--;
/* Specifiers. We don't yet recognize C, S, n, or p. */
switch (c)
- {
- case 'c':
- datatype = CHAR;
- p -= 2; /* %.*c is undefined, so undo the '.*'. */
- break;
-
- case 's':
- datatype = STR;
- break;
-
- case 'd':
- case 'i':
- case 'o':
- case 'x':
- case 'X':
- case 'u':
- datatype = lflag ? LONG : INT;
- break;
-
- case 'a':
- case 'A':
- case 'e':
- case 'E':
- case 'f':
- case 'F':
- case 'g':
- case 'G':
- datatype = DOUBLE;
- break;
-
- default:
- abort ();
- }
+ {
+ case 'c':
+ datatype = CHAR;
+ p -= 2; /* %.*c is undefined, so undo the '.*'. */
+ break;
+
+ case 's':
+ datatype = STR;
+ break;
+
+ case 'd':
+ case 'i':
+ case 'o':
+ case 'x':
+ case 'X':
+ case 'u':
+ datatype = lflag ? LONG : INT;
+ break;
+
+ case 'a':
+ case 'A':
+ case 'e':
+ case 'E':
+ case 'f':
+ case 'F':
+ case 'g':
+ case 'G':
+ datatype = DOUBLE;
+ break;
+
+ default:
+ abort ();
+ }
*p++ = c;
*p = '\0';
switch (datatype)
- {
- case CHAR:
- result = obstack_printf (obs, fstart, width,
- ARG_INT (i, argc, argv));
- break;
-
- case INT:
- result = obstack_printf (obs, fstart, width, prec,
- ARG_INT (i, argc, argv));
- break;
-
- case LONG:
- result = obstack_printf (obs, fstart, width, prec,
- ARG_LONG (i, argc, argv));
- break;
-
- case DOUBLE:
- result = obstack_printf (obs, fstart, width, prec,
- ARG_DOUBLE (i, argc, argv));
- break;
-
- case STR:
- result = obstack_printf (obs, fstart, width, prec,
- ARG_STR (i, argc, argv));
- break;
-
- default:
- abort ();
- }
+ {
+ case CHAR:
+ result = obstack_printf (obs, fstart, width,
+ ARG_INT (i, argc, argv));
+ break;
+
+ case INT:
+ result = obstack_printf (obs, fstart, width, prec,
+ ARG_INT (i, argc, argv));
+ break;
+
+ case LONG:
+ result = obstack_printf (obs, fstart, width, prec,
+ ARG_LONG (i, argc, argv));
+ break;
+
+ case DOUBLE:
+ result = obstack_printf (obs, fstart, width, prec,
+ ARG_DOUBLE (i, argc, argv));
+ break;
+
+ case STR:
+ result = obstack_printf (obs, fstart, width, prec,
+ ARG_STR (i, argc, argv));
+ break;
+
+ default:
+ abort ();
+ }
/* Since obstack_printf can only fail with EILSEQ or EINVAL, but
- we constructed fstart, the result should not be negative. */
+ we constructed fstart, the result should not be negative. */
assert (0 <= result);
}
if (valid_format)