m4-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: FYI: 13-gary-remove-redundant-traced-field.patch


From: Akim Demaille
Subject: Re: FYI: 13-gary-remove-redundant-traced-field.patch
Date: 10 Sep 2001 13:58:07 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Artificial Intelligence)

>>>>> "Gary" == Gary V Vaughan <address@hidden> writes:

Gary> Hi Akim, I have applied this one because I am 90% sure that it
Gary> is okay, but since you have a lot more experience with tracing
Gary> in m4, please pay special attention to this patch incase I am
Gary> missing something.  It *does* look like a duplicatation between
Gary> m4_symbol.traced and m4_symbol.data-> traced to me...

It's not fine for Autoconf.  Below /usr/bin/m4 is 1.4, and m4 is CVS.

src/ace/tests % cat /tmp/trace.m4                                nostromo 13:53
changequote([, ])
define([m4_define], defn([define]))
undefine([define])
m4_define([foo], [bar])
m4_define([define], defn([m4_define]))
undefine([m4_define])
define([m4_define], defn([define]))
m4_define([foo], [bar])

src/ace/tests % /usr/bin/m4 /tmp/trace.m4 -t define -daeq -t m4_define

m4trace: -1- define([m4_define], <define>)


m4trace: -1- m4_define([foo], [bar])

m4trace: -1- m4_define([define], <define>)


m4trace: -1- define([m4_define], <define>)

m4trace: -1- m4_define([foo], [bar])

src/ace/tests % m4 /tmp/trace.m4 -t define -daeq -t m4_define    nostromo 13:54

m4trace: -1- define([m4_define], <define>)


m4trace: -1- m4_define([foo], [bar])

m4trace: -1- m4_define([define], <define>)




src/ace/tests %                                                  nostromo 13:54


And this does happen: M4sugar undefines define, renamed as m4_define.
But Autoconf reinstalls define as a copy of m4_define.  CVS M4 looses
the trace bit.

There's only one Autoconf test failing, which is much less than I
expected.  But this failure can be troublesome.

OTOH, maybe adjusting the generic trace bit would be enough, no idea.

Oh, and btw, the difference are even bigger if you don't trace
m4_define too:

src/ace/tests % /usr/bin/m4 /tmp/trace.m4 -t define -daeq        nostromo 13:54

m4trace: -1- define([m4_define], <define>)


m4trace: -1- m4_define([foo], [bar])

m4trace: -1- m4_define([define], <define>)


m4trace: -1- define([m4_define], <define>)

m4trace: -1- m4_define([foo], [bar])

src/ace/tests % m4 /tmp/trace.m4 -t define -daeq                 nostromo 13:57

m4trace: -1- define([m4_define], <define>)







src/ace/tests %                                                  nostromo 13:57



reply via email to

[Prev in Thread] Current Thread [Next in Thread]