* keyboard.c (read_decoded_event_from_main_queue): Reinstitute alloca

here for destination buffer, to work around what appears to be a
bug in decode_coding_c_string when the source and destination are
both C strings.

* keyboard.c (echo_add_key, menu_bar_items, tool_bar_items)
Fix the MS-Windows build broken by SAFE_ALLOCA changes.

 src/callproc.c (child_setup) [WINDOWSNT]: Don't call exec_failed if
 'alloca' gets passed arguments larger than MAX_ALLOCA.
 src/font.c (MAX): Define if not defined elsewhere.
* xselect.c (x_fill_property_data): Handle negative XCDR when data
is CONSP.
Adjust drag-and-drop fix when window is above top.

* xselect.c (x_fill_property_data): Don't let sign bit of negative
XCDR bleed into XCAR's encoded value.  Improve checks for
out-of-range data while we're at it.
* callproc.c (exec_failed) [DOS_NT]: Define a dummy.

All callers simplified.  Add a comment about exec_failed, vfork,
and alloca.
Ignore files and fix indentation of else static if in d-mode
Emacs compiles after porting changes from http://cx4a.org/repo/emacs.bzr/regexp
Add flag compilation-do-echo-command