$set_esc->();
next;
} elsif (s#^\s*$esc\:endm\s+$##) {
- $pop_nest->('Macro');
+ $pop_nest->('macro');
od "endef\n";
next;
} elsif (s#^\s*$esc\:(?=(-?)include|macro)##) {
for (;;) {
err 'cannot $-double &-processed RHS of directive'
if $ddbl && defined $buffering_output;
- unless ($nest[0][0] eq 'Eval'
+ unless ($nest[0][0] eq 'eval'
? s{^(.*?)($esc|[{}])}{}
: s{^(.*?)($esc)}{}) { od $_; last; }
od $1;
next;
} elsif ($2 eq '}') {
next if --$ddbl;
- $pop_nest->('Eval');
+ $pop_nest->('eval');
od '}}';
next;
}
elsif (s{^\$\{}{}) {
err 'macro invocation cannot be re-$-doubled' if $ddbl;
od '${eval ${call ';
- $push_nest->('Eval',1, '&${...}');
+ $push_nest->('eval',1, '&${...}');
} elsif (s{^([~^]?)(?=[ \t])}{}) {
my $prefix = $pfxmap{$1} // die "internal error ($1?)";
my $after='';
od "\n";
} elsif (m#^macro\s+(\S+)\s+$#) {
od "define $1\n";
- $push_nest->('Macro', 1);
+ $push_nest->('macro', 1, '&:macro');
} else {
die "internal error ($_?)";
}