[Top][All Lists]

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

Re: popdef(undefined), __m4_version__

From: Ralf Wildenhues
Subject: Re: popdef(undefined), __m4_version__
Date: Mon, 21 Jul 2008 16:33:34 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

Hi Eric,

Eric Blake <ebb9 <at> byu.net> writes:
> ~     autoconf 2.62.45-65ff0  +[a]    +[b]    +[a] and [b]
> m4-1.4.11             20.171  19.858  20.858  19.357
> patched branch-1.6    21.294  20.154  22.202  20.250
> argv_ref branch               19.013  17.750  19.219  17.266
> master branch         29.966  28.948  32.417  27.904
> The differences in base compile times are due somewhat to differing
> compiler options, but it is also a bit depressing that the master branch
> is 50% slower than 1.6.  Someday I'd like to profile that, and figure out
> why the discrepancy.

Position-independent code.  I haven't measured, but would bet on it.
Remaining efficient inside shared libraries requires to either refactor
so that externally visible symbols are not called often, or play tricks
with linkage.

> * src/builtin.c (m4_undefine, m4_popdef): Add warning.
> * src/symtab.c (lookup_symbol): Distinguish when deletion occurred.
> * doc/m4.texinfo (Undefine, Pushdef): Document the warning.
> * NEWS: Document this change, along with a 1.4.x compatibility
> definition.

Aren't those warnings forbidden by POSIX?

Anyway, current git Autoconf fails several tests with current branch-1.6 M4,
most look related to autoupdate.  For example:

+/home/ralf/local/bin/m4:/tmp/auJL1116/unm4.m4:2: Warning: _au__undefine:
undefined macro `'
+/home/ralf/local/bin/m4:/tmp/auJL1116/unm4.m4:2: Warning: _au__undefine:
undefined macro `builtin'

I assume that 2.62 will fail, too, thus M4 needs fixed or it won't be
compatible with Autoconf 2.62.


reply via email to

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