Mercurial > hg > xemacs-beta
view lib-src/gnudepend.pl @ 4502:8748a3f7ceb4
Handle varalias chains, custom variables in #'user-variable-p.
src/ChangeLog addition:
2008-08-23 Aidan Kehoe <kehoea@parhasard.net>
* eval.c (Fuser_variable_p): Moved to symbols.c
* symbols.c (Fcustom_variable_p): Moved here from custom.el.
(user_variable_alias_check_fun): Mapper function used in
`user-variable-p'.
(Fuser_variable_p): Moved here from eval.c, to allow it to examine
the variable alias chain. Expanded to check each entry in the
variable alias chain for signs of being a user variable;
documentation updated, noting the differences between GNU's
behaviour and ours (ours is a little more sensible)
(map_varalias_chain): New.
Given a C function, call it at least once for each symbol in a
symbol's varalias chain, signalling an error if there's a cycle,
and returning immediately if the function returns something other
than Qzero.
(Fdefvaralias): Correct the use of the word "alias" in the
docstring and in the argument name. Motivate this in a
comment. Add support for a DOCSTRING argument, something GNU has
too, and document this
* gc.c (vars_of_gc): Start the docstring of
`garbage-collection-messages' with an asterisk, to indicate that
it's a user variable.
lisp/ChangeLog addition:
2008-08-23 Aidan Kehoe <kehoea@parhasard.net>
* custom.el: Move #'custom-variable-p to C, since it's now called
from #'user-variable-p.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sat, 23 Aug 2008 16:38:51 +0200 |
parents | 3ecd8885ac67 |
children |
line wrap: on
line source
#!/usr/bin/perl while (<>) { if (/\\$/) { chop; $foo .= $_; } else { @foo = split (/[ \\:]+/, $foo); $filename = $foo[0]; if (($filename =~ /^unex/) || ($filename =~ /^sgiplay/) || ($filename =~ /^Extern/) || ($filename =~ /^extw/)) { $foo = ""; next; } @foo = grep (!/\.c$/, @foo); @foo = grep ((s/\/.*lwlib\//\$(LWLIBSRCDIR)\//, 1), @foo); @foo = grep (!/lisp\.h/, @foo); @foo = grep (!/lisp\.h/, @foo); @foo = grep (!/lisp-union\.h/, @foo); @foo = grep (!/lisp-disunion\.h/, @foo); @foo = grep (!/lrecord\.h/, @foo); @foo = grep (!/emacsfns\.h/, @foo); @foo = grep (!/symeval\.h/, @foo); @foo = grep (!/symsinit\.h/, @foo); @foo = grep (!/syssignal\.h/, @foo); @foo = grep (!/intl\.h/, @foo); @foo = grep (!/tt_c\.h/, @foo); @foo = grep (!/descrip\.h/, @foo); shift @foo; foreach $i (0 .. $#foo) { $foo[$i] = $filename . ": " . $foo[$i]; } print $filename . ": config.h\n"; print join ("\n", @foo); print "\n"; $foo = ""; } }