> This breaks bootstrap on Solaris with nawk:
>
> nawk -f /homes/botcazou/gcc-head/src/gcc/gen-pass-instances.awk \
> /homes/botcazou/gcc-head/src/gcc/passes.def > pass-instances.def
> nawk: you can only delete array[element] at source line 196
> context is
> delete >>> pass_counts; <<<
> nawk: syntax error at source line 196
> nawk: illegal statement at source line 196
> make[3]: *** [pass-instances.def] Error 2
Here's what I have installed as obvious after testing on Linux and Solaris.
2016-10-09 Eric Botcazou <ebotca...@adacore.com>
* gen-pass-instances.awk: Remove GNUism.
--
Eric Botcazou
Index: gen-pass-instances.awk
===================================================================
--- gen-pass-instances.awk (revision 240888)
+++ gen-pass-instances.awk (working copy)
@@ -193,7 +193,6 @@ function replace_pass(line, fnname, nu
}
END {
- delete pass_counts;
for (i = 1; i < lineno; i++)
{
ret = parse_line(lines[i], "NEXT_PASS");
@@ -203,13 +202,13 @@ END {
pass_name = args[1];
with_arg = args[2];
- # Set pass_counts
- if (pass_name in pass_counts)
- pass_counts[pass_name]++;
+ # Set pass_final_counts
+ if (pass_name in pass_final_counts)
+ pass_final_counts[pass_name]++;
else
- pass_counts[pass_name] = 1;
+ pass_final_counts[pass_name] = 1;
- pass_num = pass_counts[pass_name];
+ pass_num = pass_final_counts[pass_name];
# Print call expression with extra pass_num argument
printf "%s", prefix;