Commit aed22ca3 authored by Martin Rudalics's avatar Martin Rudalics

Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

parents dc491c3d 7a6b3d0f
......@@ -1173,7 +1173,7 @@ yank. Using this method, the concerned cells won't be relocated
whatever formula they appear in. Please note however that when a
formula contains some range @code{(ses-range @var{cell1} @var{cell2})}
then in the yanked formula each range bound @var{cell1} and
@var{cell2} are relocated, or not, indepently, depending on whether
@var{cell2} are relocated, or not, independently, depending on whether
they are A1-like or renamed.
An alternative method is to use
......@@ -1203,7 +1203,7 @@ kind of dependency is also not recorded.
Begins with an 014 character, followed by sets of cell-definition
macros for each row, followed by the set of local printer
defintitions, followed by column-widths, column-printers,
definitions, followed by column-widths, column-printers,
default-printer, and header-row. Then there's the global parameters
(file-format ID, row count, column count, local printer count) and the
local variables (specifying @acronym{SES} mode for the buffer, etc.).
......
This diff is collapsed.
......@@ -51,6 +51,8 @@ extern "C"
void *_alloca (unsigned short);
# pragma intrinsic (_alloca)
# define alloca _alloca
# elif defined __MVS__
# include <stdlib.h>
# else
# include <stddef.h>
# ifdef __cplusplus
......
......@@ -416,15 +416,15 @@ _GL_WARN_ON_USE (strncat, "strncat is unportable - "
# undef strndup
# define strndup rpl_strndup
# endif
_GL_FUNCDECL_RPL (strndup, char *, (char const *__string, size_t __n)
_GL_FUNCDECL_RPL (strndup, char *, (char const *__s, size_t __n)
_GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (strndup, char *, (char const *__string, size_t __n));
_GL_CXXALIAS_RPL (strndup, char *, (char const *__s, size_t __n));
# else
# if ! @HAVE_DECL_STRNDUP@
_GL_FUNCDECL_SYS (strndup, char *, (char const *__string, size_t __n)
_GL_FUNCDECL_SYS (strndup, char *, (char const *__s, size_t __n)
_GL_ARG_NONNULL ((1)));
# endif
_GL_CXXALIAS_SYS (strndup, char *, (char const *__string, size_t __n));
_GL_CXXALIAS_SYS (strndup, char *, (char const *__s, size_t __n));
# endif
_GL_CXXALIASWARN (strndup);
#elif defined GNULIB_POSIXCHECK
......@@ -444,17 +444,17 @@ _GL_WARN_ON_USE (strndup, "strndup is unportable - "
# undef strnlen
# define strnlen rpl_strnlen
# endif
_GL_FUNCDECL_RPL (strnlen, size_t, (char const *__string, size_t __maxlen)
_GL_FUNCDECL_RPL (strnlen, size_t, (char const *__s, size_t __maxlen)
_GL_ATTRIBUTE_PURE
_GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (strnlen, size_t, (char const *__string, size_t __maxlen));
_GL_CXXALIAS_RPL (strnlen, size_t, (char const *__s, size_t __maxlen));
# else
# if ! @HAVE_DECL_STRNLEN@
_GL_FUNCDECL_SYS (strnlen, size_t, (char const *__string, size_t __maxlen)
_GL_FUNCDECL_SYS (strnlen, size_t, (char const *__s, size_t __maxlen)
_GL_ATTRIBUTE_PURE
_GL_ARG_NONNULL ((1)));
# endif
_GL_CXXALIAS_SYS (strnlen, size_t, (char const *__string, size_t __maxlen));
_GL_CXXALIAS_SYS (strnlen, size_t, (char const *__s, size_t __maxlen));
# endif
_GL_CXXALIASWARN (strnlen);
#elif defined GNULIB_POSIXCHECK
......
......@@ -1081,6 +1081,8 @@ The return result is a `package-desc'."
(setq files nil)
;; set the 'dir kind,
(setf (package-desc-kind info) 'dir))))
(unless info
(error "No .el files with package headers in `%s'" default-directory))
;; and return the info.
info))))
......
......@@ -125,7 +125,7 @@
(tramp-gw-process-filter tramp-gw-gw-proc s))))))
(defun tramp-gw-process-filter (proc string)
"Resend the string to the other pocess."
"Resend the string to the other process."
(let ((tramp-verbose 0))
;; The other process might have been stopped already. We don't
;; want to be interrupted then.
......
......@@ -5158,7 +5158,7 @@ Return ATTR."
(defun tramp-get-remote-path (vec)
"Compile list of remote directories for $PATH.
Nonexisting directories are removed from spec."
Nonexistent directories are removed from spec."
(with-tramp-connection-property
;; When `tramp-own-remote-path' is in `tramp-remote-path', we
;; cache the result for the session only. Otherwise, the result
......
This diff is collapsed.
This diff is collapsed.
......@@ -518,7 +518,7 @@ parameters \(point-min) and \(point-max).")
c-change-expand-fl-region)
c++ '(c-depropertize-new-text
c-extend-font-lock-region-for-macros
; c-before-after-change-extend-region-for-lambda-capture ; doens't seem needed.
; c-before-after-change-extend-region-for-lambda-capture ; doesn't seem needed.
c-before-after-change-digit-quote
c-after-change-re-mark-raw-strings
c-neutralize-syntax-in-and-mark-CPP
......@@ -1772,6 +1772,16 @@ the appropriate place for that."
"array" "float" "function" "int" "mapping" "mixed" "multiset"
"object" "program" "string" "this_program" "void"))
(c-lang-defconst c-return-kwds
"Keywords which return a value to the calling function."
t '("return")
idl nil)
(c-lang-defconst c-return-key
;; Adorned regexp matching `c-return-kwds'.
t (c-make-keywords-re t (c-lang-const c-return-kwds)))
(c-lang-defvar c-return-key (c-lang-const c-return-key))
(c-lang-defconst c-primitive-type-key
;; An adorned regexp that matches `c-primitive-type-kwds'.
t (c-make-keywords-re t (c-lang-const c-primitive-type-kwds)))
......@@ -3150,6 +3160,13 @@ list."
c t)
(c-lang-defvar c-recognize-knr-p (c-lang-const c-recognize-knr-p))
(c-lang-defconst c-pre-id-bracelist-key
"A regexp matching tokens which, preceding an identifier, signify a bracelist.
"
t "\\<\\>"
c++ "new\\([^[:alnum:]_$]\\|$\\)\\|&&?\\(\\S.\\|$\\)")
(c-lang-defvar c-pre-id-bracelist-key (c-lang-const c-pre-id-bracelist-key))
(c-lang-defconst c-recognize-typeless-decls
"Non-nil means function declarations without return type should be
recognized. That can introduce an ambiguity with parenthesized macro
......
......@@ -497,7 +497,7 @@ preferably use the `c-mode-menu' language constant directly."
;; correct one. This happens in some Emacsen, for example when
;; `basic-save-buffer' does (insert ?\n) when `require-final-newline' is
;; non-nil; (ii) to detect when Emacs fails to invoke
;; `before-change-functions'. This can happend when reverting a buffer - see
;; `before-change-functions'. This can happen when reverting a buffer - see
;; bug #24094. It seems these failures happen only in GNU Emacs; XEmacs
;; seems to maintain the strict alternation of calls to
;; `before-change-functions' and `after-change-functions'.
......@@ -1351,10 +1351,10 @@ Note that the style variables are always made local to the buffer."
(defun c-fl-decl-start (pos)
;; If the beginning of the line containing POS is in the middle of a "local"
;; declaration (i.e. one which does not start outside of braces enclosing
;; POS, such as a struct), return the beginning of that declaration.
;; Otherwise return nil. Note that declarations, in this sense, can be
;; nested.
;; declaration, return the beginning of that declaration. Otherwise return
;; nil. Note that declarations, in this sense, can be nested. (A local
;; declaration is one which does not start outside of struct braces (and
;; similar) enclosing POS. Brace list braces here are not "similar".
;;
;; This function is called indirectly from font locking stuff - either from
;; c-after-change (to prepare for after-change font-locking) or from font
......@@ -1402,7 +1402,12 @@ Note that the style variables are always made local to the buffer."
(and (eq (char-before) ?\<)
(eq (c-get-char-property
(1- (point)) 'syntax-table)
c-<-as-paren-syntax)))))
c-<-as-paren-syntax))
(and (eq (char-before) ?{)
(save-excursion
(backward-char)
(numberp (c-looking-at-or-maybe-in-bracelist nil))))
)))
(not (bobp)))
(backward-char)) ; back over (, [, <.
(when (and capture-opener (< capture-opener new-pos))
......
......@@ -1401,7 +1401,7 @@ check_iso_charset_parameter (Lisp_Object dimension, Lisp_Object chars,
int final_ch = XFASTINT (final_char);
if (! ('0' <= final_ch && final_ch <= '~'))
error ("Invalid FINAL-CHAR '%c', it should be '0'..'~'", final_ch);
error ("Invalid FINAL-CHAR `%c', it should be `0'..`~'", final_ch);
return chars_flag;
}
......
......@@ -2412,7 +2412,7 @@ store_frame_param (struct frame *f, Lisp_Object prop, Lisp_Object val)
if (WINDOWP (val))
{
if (!MINI_WINDOW_P (XWINDOW (val)))
error ("The 'minibuffer' parameter does not specify a valid minibuffer window");
error ("The `minibuffer' parameter does not specify a valid minibuffer window");
else if (FRAME_MINIBUF_ONLY_P (f))
{
if (EQ (val, FRAME_MINIBUF_WINDOW (f)))
......@@ -2442,7 +2442,7 @@ store_frame_param (struct frame *f, Lisp_Object prop, Lisp_Object val)
only nil was specified as new value. */
val = old_val;
else if (!EQ (old_val, val))
error ("Can't change the 'minibuffer' parameter of this frame");
error ("Can't change the `minibuffer' parameter of this frame");
}
}
}
......
......@@ -5113,6 +5113,7 @@ FRAME. Default is to change on the edit X window. */)
if (INT_MAX < SBYTES (value))
error ("VALUE too long");
nelements = SBYTES (value);
element_format = 8; /* ignore any provided format */
}
block_input ();
......@@ -5223,7 +5224,7 @@ x_window_property_intern (struct frame *f,
}
if (NILP (vector_ret_p))
prop_value = make_string ((char *) tmp_data, actual_size);
prop_value = make_string ((char *) tmp_data, (actual_format / 8) * actual_size);
else
prop_value = x_property_data_to_lisp (f,
tmp_data,
......@@ -5310,6 +5311,62 @@ no value of TYPE (always string in the MS Windows case). */)
return prop_value;
}
DEFUN ("x-window-property-attributes", Fx_window_property_attributes, Sx_window_property_attributes,
1, 3, 0,
doc: /* Retrieve metadata about window property PROP on FRAME.
If FRAME is nil or omitted, use the selected frame.
If SOURCE is non-nil, get the property on that window instead of from
FRAME. The number 0 denotes the root window.
Return value is nil if FRAME hasn't a property with name PROP.
Otherwise, the return value is a vector with the following fields:
0. The property type, as an integer. The symbolic name of
the type can be obtained with `x-get-atom-name'.
1. The format of each element; one of 8, 16, or 32.
2. The length of the property, in number of elements. */)
(Lisp_Object prop, Lisp_Object frame, Lisp_Object source)
{
struct frame *f = decode_window_system_frame (frame);
Window target_window = FRAME_X_WINDOW (f);
Atom prop_atom;
Lisp_Object prop_attr = Qnil;
Atom actual_type;
int actual_format;
unsigned long actual_size, bytes_remaining;
unsigned char *tmp_data = NULL;
int rc;
CHECK_STRING (prop);
if (! NILP (source))
{
CONS_TO_INTEGER (source, Window, target_window);
if (! target_window)
target_window = FRAME_DISPLAY_INFO (f)->root_window;
}
block_input ();
prop_atom = XInternAtom (FRAME_X_DISPLAY (f), SSDATA (prop), False);
rc = XGetWindowProperty (FRAME_X_DISPLAY (f), target_window,
prop_atom, 0, 0, False, AnyPropertyType,
&actual_type, &actual_format, &actual_size,
&bytes_remaining, &tmp_data);
if (rc == Success && actual_format != 0)
{
XFree (tmp_data);
prop_attr = Fmake_vector (make_number (3), Qnil);
ASET (prop_attr, 0, make_number (actual_type));
ASET (prop_attr, 1, make_number (actual_format));
ASET (prop_attr, 2, make_number (bytes_remaining / (actual_format / 8)));
}
unblock_input ();
return prop_attr;
}
/***********************************************************************
Tool tips
***********************************************************************/
......@@ -6966,6 +7023,7 @@ When using Gtk+ tooltips, the tooltip face is not used. */);
defsubr (&Sx_change_window_property);
defsubr (&Sx_delete_window_property);
defsubr (&Sx_window_property);
defsubr (&Sx_window_property_attributes);
defsubr (&Sxw_display_color_p);
defsubr (&Sx_display_grayscale_p);
......
......@@ -1612,11 +1612,24 @@ selection_data_to_lisp_data (struct x_display_info *dpyinfo,
/* Convert a single 16-bit number or a small 32-bit number to a Lisp_Int.
If the number is 32 bits and won't fit in a Lisp_Int,
convert it to a cons of integers, 16 bits in each half.
INTEGER is a signed type, CARDINAL is unsigned.
Assume any other types are unsigned as well.
*/
else if (format == 32 && size == sizeof (int))
return INTEGER_TO_CONS (((int *) data) [0]);
{
if (type == XA_INTEGER)
return INTEGER_TO_CONS (((int *) data) [0]);
else
return INTEGER_TO_CONS (((unsigned int *) data) [0]);
}
else if (format == 16 && size == sizeof (short))
return make_number (((short *) data) [0]);
{
if (type == XA_INTEGER)
return make_number (((short *) data) [0]);
else
return make_number (((unsigned short *) data) [0]);
}
/* Convert any other kind of data to a vector of numbers, represented
as above (as an integer, or a cons of two 16 bit integers.)
......@@ -1626,11 +1639,22 @@ selection_data_to_lisp_data (struct x_display_info *dpyinfo,
ptrdiff_t i;
Lisp_Object v = make_uninit_vector (size / 2);
for (i = 0; i < size / 2; i++)
{
short j = ((short *) data) [i];
ASET (v, i, make_number (j));
}
if (type == XA_INTEGER)
{
for (i = 0; i < size / 2; i++)
{
short j = ((short *) data) [i];
ASET (v, i, make_number (j));
}
}
else
{
for (i = 0; i < size / 2; i++)
{
unsigned short j = ((unsigned short *) data) [i];
ASET (v, i, make_number (j));
}
}
return v;
}
else
......@@ -1638,11 +1662,22 @@ selection_data_to_lisp_data (struct x_display_info *dpyinfo,
ptrdiff_t i;
Lisp_Object v = make_uninit_vector (size / X_LONG_SIZE);
for (i = 0; i < size / X_LONG_SIZE; i++)
{
int j = ((int *) data) [i];
ASET (v, i, INTEGER_TO_CONS (j));
}
if (type == XA_INTEGER)
{
for (i = 0; i < size / X_LONG_SIZE; i++)
{
int j = ((int *) data) [i];
ASET (v, i, INTEGER_TO_CONS (j));
}
}
else
{
for (i = 0; i < size / X_LONG_SIZE; i++)
{
unsigned int j = ((unsigned int *) data) [i];
ASET (v, i, INTEGER_TO_CONS (j));
}
}
return v;
}
}
......@@ -2296,13 +2331,13 @@ x_fill_property_data (Display *dpy, Lisp_Object data, void *ret, int format)
if (format == 8)
{
if ((1 << 8) < val && val <= X_ULONG_MAX - (1 << 7))
error ("Out of 'char' range");
error ("Out of `char' range");
*d08++ = val;
}
else if (format == 16)
{
if ((1 << 16) < val && val <= X_ULONG_MAX - (1 << 15))
error ("Out of 'short' range");
error ("Out of `short' range");
*d16++ = val;
}
else
......
......@@ -1943,7 +1943,7 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'."
(let ((default-directory tramp-test-temporary-file-directory)
tmp-file)
;; The remote host shall know a tempory file directory.
;; The remote host shall know a temporary file directory.
(should (stringp (temporary-file-directory)))
(should
(string-equal
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment