On Wed, May 21, 2025 at 06:55:02AM -0400, Nikolaos Chatzikonstantinou wrote:
> On Tue, May 20, 2025 at 11:17 AM Eric Blake <[email protected]> wrote:
> >
> > On Tue, May 20, 2025 at 06:34:31AM -0400, Nikolaos Chatzikonstantinou wrote:
> > >
> > > With 0.7.5 I attempted to fix all the reported bugs.
> >
> > It's getting further in my testing.
> >
> > This still warns, despite commit 852a0f which fixed undivert to take
> > multiple args:
> >
> > $ echo 'divert(1)1divert(2)2divert undivert(2,1)' | m4p
> >  m4:stdin:1: Warning: excess arguments to builtin `undivert' ignored
> > 21
> 
> Ah yes, I forgot to remove the warning. I fixed that. How far does the
> testing go?

You have now reached the point where m4p appears able to run all of my
adventofcode.com m4 solutions and get the same answer as the C
implementation, albeit MUCH slower (for example, my m4 solution for
https://adventofcode.com/2024/day/22 is at
https://repo.or.cz/aoc_eblake.git/blob/HEAD:/2024/day22.m4; it took my
laptop around 30 seconds with m4 because it involves several million
calls to eval; the same solution run with m4p took over 3 hours).

There may be lurking corner cases that are not working: POSIX requires
-s syncline support to work, and my adventofcode solutions tend to shy
away from regex.  Error message testing is different than successful
run testing, so those may turn up more differences.  But you have
definitely made some progress.

I still plan to see if m4p can run all of the examples in m4/checks;
it's a bit tricky in places where the command line compatibility is
not yet working.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.
Virtualization:  qemu.org | libguestfs.org


Reply via email to