(pcase--expand, pcase-codegen, pcase--q1): Use it to reduce nesting
a bit more.
(pcase--split-pred): Be more clever about ruling out overlap between
a predicate and some constant pattern.
(pcase--q1): Use `null' instead of (eq foo nil).
* lisp/subr.el (setq-local, defvar-local): New macros.
(kbd): Redefine as an alias.
(with-selected-window): Leave unrelated frames alone.
(set-temporary-overlay-map): New function.
Ref http://lists.gnu.org/archive/html/emacs-devel/2012-04/msg00354.html
* configure.in (INFO_EXT, INFO_OPTS): New output variables.
* doc/emacs/Makefile.in (INFO_EXT, INFO_OPTS): New, set by configure.
(info, infoclean): Use $INFO_EXT.
($(infodir)/emacs$(INFO_EXT)): Use $INFO_EXT and $INFO_OPT.
* doc/emacs/makefile.w32-in (INFO_EXT, INFO_OPTS): New.
(INFO_TARGETS): Use $INFO_EXT.
($(infodir)/emacs$(INFO_EXT)): Use $INFO_EXT and $INFO_OPT, and -o.
* doc/lispintro/Makefile.in (INFO_EXT, INFO_OPTS): New, set by configure.
(info, infoclean): Use $INFO_EXT.
(${infodir}/eintr$(INFO_EXT)): Use $INFO_EXT and $INFO_OPT.
* doc/lispintro/makefile.w32-in (INFO_EXT, INFO_OPTS): New.
(INFO_TARGETS, clean): Use $INFO_EXT.
($(infodir)/eintr$(INFO_EXT)): Use $INFO_EXT and $INFO_OPT.
* doc/lispref/Makefile.in (INFO_EXT, INFO_OPTS): New, set by configure.
(info, infoclean): Use $INFO_EXT.
($(infodir)/elisp$(INFO_EXT)): Use $INFO_EXT and $INFO_OPT.
* doc/lispref/makefile.w32-in (INFO_EXT, INFO_OPTS): New.
(info, maintainer-clean): Use $INFO_EXT.
($(infodir)/elisp$(INFO_EXT)): Use $INFO_EXT and $INFO_OPT.
* doc/misc/Makefile.in (INFO_EXT, INFO_OPTS): New, set by configure.
(INFO_TARGETS): Use $INFO_EXT.
Make all rules generating info files use $INFO_EXT, $INFO_OPT, and -o.
* doc/misc/makefile.w32-in (INFO_EXT, INFO_OPTS): New.
(INFO_TARGETS): Use $INFO_EXT.
Make all rules generating info files use $INFO_EXT, $INFO_OPT, and -o.
* src/editfns.c (TM_YEAR_IN_ASCTIME_RANGE): Remove.
(Fcurrent_time_string): Support any year that is supported by the
underlying localtime representation. Don't use asctime, as it
has undefined behavior for years outside the range -999..9999.
* doc/lispref/os.texi (Time of Day): Do not limit current-time-string
to years 1000..9999.
* etc/NEWS: Do not limit current-time-string to years 1000..9999.
* progmodes/verilog-mode.el (font-lock-keywords):
Fix mis-highligting auto. Reported by Craig Barner.
(verilog-auto, verilog-auto-undef): Add AUTOUNDEF to remove
defines from global name space. Reported by Dan Dever.
(verilog-auto-reset, verilog-auto-reset-widths)
(verilog-auto-tieoff): Support using unbased numbers for
AUTORESET and AUTOTIEOFF.
(verilog-submit-bug-report): Update variable list.
(verilog-read-auto-params): Fix AUTOINPUT regexps containing
parenthesis from not matching. Reported by Michael Rytting.
(verilog-auto-template-lint): Fix hash error when linting modules
with no used templates.
(verilog-warn, verilog-warn-error)
(verilog-warn-fatal): When non-interactive report multiple
warnings before exiting. Suggested by Brad Dobbie.
(verilog-auto-template-lint, verilog-auto-template-warn-unused)
(verilog-read-auto-template): Add `verilog-auto-template-warn-unused'
to report unused template errors. Reported by Brad Dobbie.
(verilog-read-decls): Fix AUTOWIRE etc on supply0, supply1 type
nets, bug438. Reported by Vns Blore.
(verilog-auto-inout-module, verilog-auto-reg)
(verilog-read-decls, verilog-read-sub-decls-sig)
(verilog-signals-edit-wire-reg, verilog-signals-with):
Fix passing of Verilog data types in ANSI input/output ports
such as "output logic" into the AUTOs. Special case "wire" and
"reg" for backwards compatibility presuming Verilog 2001.
(verilog-auto-ascii-enum): Add "auto enum" as alias.
(verilog-preprocess): Fix replication of preprocess output.
Reported by Brad Dobbie.
(verilog-auto-inst-interfaced-ports):
Create verilog-auto-inst-interfaced-ports, bug429.
Reported by Julian Gorfajn.
(verilog-after-save-font-hook)
(verilog-before-save-font-hook): New variable.
(verilog-modi-cache-results, verilog-save-font-mod-hooked)
(verilog-save-font-mods): Wrap disabling fontification, reported
by David Rogoff.
(verilog-do-indent, verilog-pretty-declarations-auto)
(verilog-sk-def-reg): Fix obeying `verilog-auto-lineup', bug305.
Reported by Pierre-David Pfister.
(verilog-set-auto-endcomments): Fix endtask auto comments outside
of class declarations, bug292. Reported by Kevin Heilman.
(verilog-read-decls): Fix 'parameter type' not appearing in
AUTOINSTPARAM, bug340. Reported by Jonathan Greenlaw.
(verilog-auto-logic): Fix when AUTOLOGIC present to properly do
AUTOINPUTs, bug411. Reported by Jonathan Greenlaw.
(verilog-read-auto-lisp): Avoid syntax-ppss warning on AUTOLISP.
Reported by David Kravitz.
* progmodes/verilog-mode.el (verilog-pretty-expr): Don't line up
assignment with tests in ifs and for loops.
(verilog-extended-complete-re, verilog-complete-reg): Change so
that DPI inport functions don't look like fuction declarations.
(verilog-pretty-expr): Don't line up assignment
operations to the test and increment in if and for loops
(verilog-extended-complete-re, verilog-complete-reg): Change so
that DPI inport functions don't look like fuction declarations
(byte-compile-file-form-custom-declare-variable): Compile all elements,
since cconv.el might have introduced :fun-body, internal-make-closure,
and friends for bytecomp to handle.
* lisp/custom.el (defcustom): Avoid ((λ ..) ..).
Fixes: debbugs:11391
Without this fix, interrupts could mess up code that uses these
nonreentrant functions, since setting TZ invalidates existing
tm_zone or tzname values, and since most of these functions return
pointers to static storage.
* editfns.c (format_time_string, Fdecode_time, Fencode_time)
(Fcurrent_time_string, Fcurrent_time_zone, Fset_time_zone_rule):
Grow the critical sections to include not just invoking
localtime/gmtime, but also accessing these functions' results
including their tm_zone values if any, and any related TZ setting.
(format_time_string): Last arg is now struct tm *, not struct tm **,
so that the struct tm is saved in the critical section. All
callers changed. Simplify allocation of initial buffer, partly
motivated by the fact that memory allocation needs to be outside
the critical section.
The sed '/ing directory/d' piece is to remove the annoying
"entering/leaving directory" messages that GNU make insists on
printing when called recursively. --no-print-directory isn't portable.
* Makefile.in (INFO_FILES): Remove variable.
(INFO_NONMISC): New variable.
(install-arch-indep, uninstall): Don't use $INFO_FILES.
* doc/misc/Makefile.in (echo-info): New phony target, used by top-level.