| Akim> +sub condition_negate ($)
| Akim> +{
| Akim> +    my ($cond) = @_;
| Akim> +
| Akim> +    $cond =~ s/TRUE$/TRUEO/;
| Akim> +    $cond =~ s/FALSE$/TRUE/;
| Akim> +    $cond =~ s/TRUEO$/FALSE/;
| Akim> +
| Akim> +    return $cond;
| Akim> +}
| 
| Doesn't this rely on the user not using conditions like `TRUE0'?  What
| if we instead use a temporary value that the user can't possibly
| specify?

$cond is actually MYCOND_FALSE or MYCOND_TRUE, so there is no such
problem.

| Akim> -    my $c_suffix = $yacc_suffix;
| Akim> -    $c_suffix =~ tr/y/c/;
| Akim> -    push (@suffixes, $yacc_suffix, $c_suffix);
| 
| Deleting this push seems wrong.
| How else does this stuff end up on suffixes?

It is obtained via the loading of yacc.am which contains a suffix
rule, and @suffixes is then filled.

Reply via email to