commit/XEmacs: 3 new changesets
11 years, 3 months
Bitbucket
3 new commits in XEmacs:
https://bitbucket.org/xemacs/xemacs/commits/23dc211f4d2f/
Changeset: 23dc211f4d2f
User: stephen_at_xemacs
Date: 2013-09-15 16:50:20
Summary: Make fc-name-parse signal on invalid-argument.
Add fc-name-parse-harder, which retries without unparseable attributes.
Add tests for fc-name-parse and fc-name-parse-harder.
A few fixups in comments and docstrings.
Affected #: 7 files
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 lisp/ChangeLog
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
+2013-09-10 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * fontconfig.el (fc-name-parse-known-problem-attributes): New.
+ (fc-name-parse-harder): New.
+
+ * font.el (xft-font-create-object): Use fc-name-parse-harder.
+
2013-08-21 Aidan Kehoe <kehoea(a)parhasard.net>
* startup.el (normal-top-level):
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 lisp/font.el
--- a/lisp/font.el
+++ b/lisp/font.el
@@ -1,7 +1,7 @@
;;; font.el --- New font model
;; Copyright (c) 1995, 1996 by William M. Perry (wmperry(a)cs.indiana.edu)
-;; Copyright (c) 1996, 1997 Free Software Foundation, Inc.
+;; Copyright (c) 1996, 1997, 2013 Free Software Foundation, Inc.
;; Copyright (C) 2002, 2004 Ben Wing.
;; Author: wmperry
@@ -786,7 +786,9 @@
Optional DEVICE defaults to `default-x-device'."
(let* ((name fontname)
(device (or device (default-x-device)))
- (pattern (fc-font-match device (fc-name-parse name)))
+ ;; names generated by font-instance-truename may contain
+ ;; unparseable object specifications
+ (pattern (fc-font-match device (fc-name-parse-harder name)))
(font-obj (make-font))
(family (fc-pattern-get-family pattern 0))
(size (fc-pattern-get-or-compute-size pattern 0))
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 lisp/fontconfig.el
--- a/lisp/fontconfig.el
+++ b/lisp/fontconfig.el
@@ -1,7 +1,7 @@
;;; fontconfig.el --- New font model, NG
;; Copyright (c) 2003 Eric Knauel and Matthias Neubauer
-;; Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+;; Copyright (C) 2004, 2005, 2013 Free Software Foundation, Inc.
;; Authors: Eric Knauel <knauel(a)informatik.uni-tuebingen.de>
;; Matthias Neubauer <neubauer(a)informatik.uni-freiburg.de>
@@ -519,6 +519,77 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
+;; Workarounds
+;;
+
+(defvar fc-name-parse-known-problem-attributes
+ '("charset")
+ "List of attribute names known to induce fc-name-parse failures.
+
+Note: The name returned by `xft-font-truename' has been observed to be
+unparseable. The cause is unknown so you can't assume getting a name from a
+font instance then instantiating the font again will round-trip. Hypotheses:
+\(1) name too long. FALSE
+\(2) name has postscriptname attribute. FALSE
+\(3) name has charset attribute. OBSERVED")
+
+(defun fc-name-parse-harder (fontname)
+ "Parse an Fc font name and return its representation as a Fc pattern object.
+Unlike `fc-parse-name', unparseable objects are skipped and reported in the
+*Warnings* buffer. \(The *Warnings* buffer is popped up unless all of the
+unparsed objects are listed in `fc-name-parse-known-problem-attributes'.)"
+ (labels ((repair-embedded-colons (l)
+ ;; #### May need generalization to other separators?
+ (let ((ll l))
+ (while (cdr l)
+ (when (string-match ".*\\\\$" (cadr l))
+ (setcdr l (cons (concat (cadr l) ":" (caddr l)) (cdddr l))))
+ (setq l (cdr l)))
+ ll))
+ (prepare-omits (object)
+ (declare (special display))
+ (let* ((reports fc-name-parse-known-problem-attributes)
+ (report (car reports))
+ (display-this t))
+ (while reports
+ (if (string= report (subseq object 0 (length report)))
+ (setq object (concat "(KNOWN) " object)
+ display-this nil
+ reports nil)
+ (setq report (pop reports))))
+ (push display-this display)
+ (concat object "\n")))
+ (any (bools)
+ (let (ret)
+ (while bools
+ (setq ret (or (pop bools) ret))))))
+ (let* ((objects (repair-embedded-colons (split-string fontname ":")))
+ (name (pop objects))
+ (omits nil)
+ (outcomes (list 'dummy)))
+ (while objects
+ (let ((object (pop objects)))
+ (condition-case nil
+ (let ((try (concat name ":" object)))
+ (fc-name-parse try)
+ (setq name try))
+ (invalid-argument
+ (push object omits)))))
+ (when omits
+ (setq display nil)
+ (setq omits (mapconcat #'prepare-omits omits ""))
+ (lwarn 'fontconfig (if (apply #'any display) 'warning 'info)
+ "Some objects in fontname weren't parsed (details in *Warnings*).
+This shouldn't affect your XEmacs except that the font may be inaccurate.
+Please report any unparseable objects below not marked as KNOWN with
+M-x report-xemacs-bug. Objects:\n%sFontname:\n%s"
+ omits
+ fontname))
+ (fc-name-parse name)
+ )))
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;
;; The XLFD fontname UI
;;
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 src/ChangeLog
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2013-09-10 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * font-mgr.c: Fix a bunch of comments and reformat some docstrings.
+ (Ffc_name_parse):
+ Make FcNameParse signal invalid-argument when parse fails.
+
2013-09-09 Stephen J. Turnbull <stephen(a)xemacs.org>
* alloc.c (free_normal_lisp_object):
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 src/font-mgr.c
--- a/src/font-mgr.c
+++ b/src/font-mgr.c
@@ -2,7 +2,7 @@
Copyright (C) 2003 Eric Knauel and Matthias Neubauer
Copyright (C) 2005 Eric Knauel
-Copyright (C) 2004-2009 Free Software Foundation, Inc.
+Copyright (C) 2004-2009, 2013 Free Software Foundation, Inc.
Copyright (C) 2010 Ben Wing.
Authors: Eric Knauel <knauel(a)informatik.uni-tuebingen.de>
@@ -143,11 +143,9 @@
static void string_list_to_fcobjectset (Lisp_Object list, FcObjectSet *os);
/*
- extract the C representation of the Lisp string STR and convert it
+ Extract the C representation of the Lisp string STR and convert it
to the encoding used by the Fontconfig API for property and font
- names. I suppose that Qnative is the right encoding, the manual
- doesn't say much about this topic. This functions assumes that STR
- is a Lisp string.
+ names. These functions assume that STR is a Lisp string.
*/
#define extract_fcapi_string(str) \
(LISP_STRING_TO_EXTERNAL ((str), Qfc_font_name_encoding))
@@ -157,6 +155,7 @@
/* #### This homebrew lashup should be replaced with FcConstants.
+ #### This isn't true any more (fontconfig v2.10.95), if it ever was.
fontconfig assumes that objects (property names) are statically allocated,
and you will get bizarre results if you pass Lisp string data or strings
allocated on the stack as objects. fontconfig _does_ copy values, so we
@@ -227,19 +226,28 @@
fc_pattern *fcpat = XFC_PATTERN (ALLOC_NORMAL_LISP_OBJECT (fc_pattern));
fcpat->fcpatPtr = FcPatternCreate ();
+ assert (fcpat->fcpatPtr);
return wrap_fc_pattern (fcpat);
}
DEFUN ("fc-name-parse", Ffc_name_parse, 1, 1, 0, /*
-Parse an Fc font name and return its representation as a fc pattern object.
+Parse an Fc font name and return its representation as a Fc pattern object.
+Signal `invalid-argument' if the name is unparseable.
+
+Note: The name returned by xft-font-truename has been observed to be
+unparseable \(in the case of the xft-font-default-font-name). The cause
+is unknown so you can't assume getting a name from a font instance then
+instantiating the font again will round-trip. See `fc-name-parse-harder'.
*/
(name))
{
fc_pattern *fcpat = XFC_PATTERN (ALLOC_NORMAL_LISP_OBJECT (fc_pattern));
CHECK_STRING (name);
-
fcpat->fcpatPtr = FcNameParse ((FcChar8 *) extract_fcapi_string (name));
+ if (!fcpat->fcpatPtr)
+ /* #### Is this the best API? Could return a symbol or similar. */
+ invalid_argument ("unparseable Fc font name", name);
return wrap_fc_pattern (fcpat);
}
@@ -1386,8 +1394,8 @@
#endif
DEFVAR_LISP ("xft-xlfd-font-regexp", &Vxlfd_font_name_regexp /*
-The regular expression used to match XLFD font names. */
- );
+The regular expression used to match XLFD font names.
+*/ );
Vxlfd_font_name_regexp = make_xlfd_font_regexp();
}
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 tests/ChangeLog
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,7 @@
+2013-09-10 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * automated/face-tests.el: New file. Start with fontconfig tests.
+
2013-06-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.5.34 "kale" is released.
diff -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 tests/automated/face-tests.el
--- /dev/null
+++ b/tests/automated/face-tests.el
@@ -0,0 +1,104 @@
+;;; face-tests.el --- test text display (faces, fonts) -*- coding: utf-8 -*-
+
+;; Copyright (C) 2013 Free Software Foundation, Inc.
+
+;; Author: Stephen J. Turnbull <stephen(a)xemacs.org>
+;; Created: 2013
+;; Keywords: tests
+
+;; This file is part of XEmacs.
+
+;; XEmacs is free software: you can redistribute it and/or modify it
+;; under the terms of the GNU General Public License as published by the
+;; Free Software Foundation, either version 3 of the License, or (at your
+;; option) any later version.
+
+;; XEmacs is distributed in the hope that it will be useful, but WITHOUT
+;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+;; for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with XEmacs. If not, see <http://www.gnu.org/licenses/>.
+
+;;; Synched up with: Not in FSF.
+
+;;; Commentary:
+
+;; Test text display (faces, fonts)
+
+;; Test fontconfig
+
+(let* ((test-name-parts
+ '("Bitstream Vera Sans Mono-16"
+ "familylang=en"
+ "style=Roman"
+ "stylelang=en"
+ "fullname=Bitstream Vera Sans Mono"
+ "fullnamelang=en"
+ "slant=0"
+ "weight=80"
+ "width=100"
+ "pixelsize=21.3174"
+ "spacing=100"
+ "foundry=bitstream"
+ "antialias=True"
+ "hintstyle=3"
+ "hinting=True"
+ "verticallayout=False"
+ "autohint=False"
+ "globaladvance=True"
+ "file=/usr/X11/lib/X11/fonts/TTF/VeraMono.ttf"
+ "index=0"
+ "outline=True"
+ "scalable=True"
+ "dpi=95.9282"
+ "rgba=0"
+ "scale=1"
+ "minspace=False"
+ "charset= |>^1!|>^1!P0oWQ |>^1!|>^1!|>^1!!!!%#gfN8.!!B7%ggR6OF3y?4!!K?& !!!)$ 9;*f! !!!.% !!!)$!!!!# !!#0GM>RAd#y#fx !!!W5 !!#3H !!!!& !!#6I<UKaX!!!?+!!!%#!!!!X !!#AL !!!1& !!+u{!!!!) "
+ "lang=aa|ay|bi|br|ch|co|da|de|en|es|et|eu|fi|fj|fo|fr|fur|fy|gd|gl|gv|ho|ia|id|ie|io|is|it|lb|mg|nb|nds|nl|nn|no|nr|nso|oc|om|pt|rm|sma|smj|so|sq|ss|st|sv|sw|tl|tn|tr|ts|uz|vo|vot|wa|xh|yap|zu|an|crh|fil|ht|jv|kj|ku-tr|kwm|li|ms|ng|pap-an|pap-aw|rn|rw|sc|sg|sn|su|za"
+ "fontversion=131072"
+ "fontformat=TrueType"
+ "embolden=False"
+ "embeddedbitmap=True"
+ "decorative=False"
+ "lcdfilter=1"
+ "namelang=en"
+ "prgname=xemacs"
+ "hash=sha256\\:da4281dc7db17a3dfce64a62ced92875c5895340055ec8ba24a3914eb97b349d"
+ "postscriptname=BitstreamVeraSansMono-Roman"))
+ (test-name-degenerate "")
+ (test-name-trivial (nth 0 test-name-parts))
+ (test-name-short
+ (concat (nth 0 test-name-parts) ":" (nth 26 test-name-parts)))
+ (test-name-long (mapconcat #'identity
+ (append (subseq test-name-parts 0 26)
+ (subseq test-name-parts 27))
+ ":"))
+ (test-name-full (mapconcat #'identity test-name-parts ":"))
+ )
+ (labels ((try (fontname)
+ (fc-name-unparse (fc-name-parse fontname)))
+ (try-harder (fontname)
+ (fc-name-unparse (fc-name-parse-harder fontname))))
+ (Assert (string= test-name-degenerate (try test-name-degenerate)))
+ (Assert (string= test-name-degenerate (try-harder test-name-degenerate)))
+ (Assert (string= test-name-trivial (try test-name-trivial)))
+ (Assert (string= test-name-trivial (try-harder test-name-trivial)))
+ ;; Note when the `try' form fails, the `try-harder' form returns a
+ ;; shorter name.
+ (Check-Error 'invalid-argument
+ (string= test-name-short (try test-name-short)))
+ (Assert (string= test-name-trivial (try-harder test-name-short)))
+ (Assert (string= test-name-long (try test-name-long)))
+ (Assert (string= test-name-long (try-harder test-name-long)))
+ ;; Note when the `try' form fails, the `try-harder' form returns a
+ ;; shorter name.
+ (Check-Error 'invalid-argument
+ (string= test-name-full (try test-name-full)))
+ (Assert (string= test-name-long (try-harder test-name-full)))
+ ) ; labels
+ ) ; let
+
+;;; end face-tests.el
https://bitbucket.org/xemacs/xemacs/commits/7addb3dbe4b4/
Changeset: 7addb3dbe4b4
User: stephen_at_xemacs
Date: 2013-09-15 16:50:20
Summary: process-tests should work on all POSIX systems.
Affected #: 2 files
diff -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 -r 7addb3dbe4b404b4c6edbc0e95a27bc0f1c3c221 tests/ChangeLog
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,7 @@
+2013-09-10 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * automated/process-tests.el: Should work on all POSIX systems.
+
2013-09-10 Stephen J. Turnbull <stephen(a)xemacs.org>
* automated/face-tests.el: New file. Start with fontconfig tests.
diff -r 23dc211f4d2fa0c14c937987ded7f5f3de569a82 -r 7addb3dbe4b404b4c6edbc0e95a27bc0f1c3c221 tests/automated/process-tests.el
--- a/tests/automated/process-tests.el
+++ b/tests/automated/process-tests.el
@@ -1,7 +1,9 @@
-;; Copyright (C) 2011, 2012 Free Software Foundation, Inc.
+;;; process-tests.el --- test process execution
+
+;; Copyright (C) 2011-2013 Free Software Foundation, Inc.
;; Author: Mats Lidell <matsl(a)xemacs.org>
-;; Maintainer:
+;; Maintainer: XEmacs Dev Team <xemacs-beta(a)xemacs.org>
;; Created: 2011
;; Keywords: tests
@@ -29,7 +31,8 @@
(require 'test-harness)
-(when (equal system-type 'linux)
+;; Should work on all POSIX systems.
+(unless (member system-type '(windows-nt))
(setenv "LANG" "C")
;; One line output
https://bitbucket.org/xemacs/xemacs/commits/e88d026f3917/
Changeset: e88d026f3917
User: stephen_at_xemacs
Date: 2013-09-15 16:50:20
Summary: Include uname and configure arguments in stdout.
Affected #: 2 files
diff -r 7addb3dbe4b404b4c6edbc0e95a27bc0f1c3c221 -r e88d026f39178b4f6098585a75b2a0ff4e751d9c configure
--- a/configure
+++ b/configure
@@ -21503,15 +21503,6 @@
-(
-if test -f /etc/osversion; then echo "osversion: `cat /etc/osversion`"
-else
- echo "uname -a: `uname -a`"
-fi
-echo ""
-echo "$progname $ac_configure_args"
-) > Installation
-
if test ! -z ${emacs_beta_version} ; then
if test -z "${emacs_is_beta}" ; then
xemacs_betaname=".${emacs_beta_version}"
@@ -21522,7 +21513,17 @@
xemacs_betaname=""
fi
+echo ""
+: > Installation
+
(
+if test -f /etc/osversion; then echo "osversion: `cat /etc/osversion`"
+else
+ echo "uname -a: `uname -a`"
+fi
+echo ""
+echo "$progname $ac_configure_args"
+
echo "
XEmacs ${emacs_major_version}.${emacs_minor_version}${xemacs_betaname} \"$xemacs_codename\" $xemacs_extra_name configured for \`$ac_cv_build'."
diff -r 7addb3dbe4b404b4c6edbc0e95a27bc0f1c3c221 -r e88d026f39178b4f6098585a75b2a0ff4e751d9c configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -5660,17 +5660,6 @@
dnl #### We should tag this as the _build_ environment.
dnl Before doing that, though, must check if tools care about line 1.
-(
-dnl /etc/osversion is on SONY NEWS-OS
-if test -f /etc/osversion; then dnl SONY NEWS-OS
- echo "osversion: `cat /etc/osversion`"
-else
- echo "uname -a: `uname -a`"
-fi
-echo ""
-echo "$progname $ac_configure_args"
-) > Installation
-
if test ! -z ${emacs_beta_version} ; then
if test -z "${emacs_is_beta}" ; then
xemacs_betaname=".${emacs_beta_version}"
@@ -5681,8 +5670,20 @@
xemacs_betaname=""
fi
+echo ""
+: > Installation
+
dnl Start stdout redirection to '| tee -a Installation'
(
+dnl /etc/osversion is on SONY NEWS-OS
+if test -f /etc/osversion; then dnl SONY NEWS-OS
+ echo "osversion: `cat /etc/osversion`"
+else
+ echo "uname -a: `uname -a`"
+fi
+echo ""
+echo "$progname $ac_configure_args"
+
echo "
XEmacs ${emacs_major_version}.${emacs_minor_version}${xemacs_betaname} \"$xemacs_codename\" $xemacs_extra_name configured for \`$ac_cv_build'."
Repository URL: https://bitbucket.org/xemacs/xemacs/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/XEmacs: stephen_at_xemacs: Eliminate several compiler (clang) warnings.
11 years, 3 months
Bitbucket
1 new commit in XEmacs:
https://bitbucket.org/xemacs/xemacs/commits/427a72c6ee17/
Changeset: 427a72c6ee17
User: stephen_at_xemacs
Date: 2013-09-15 16:47:37
Summary: Eliminate several compiler (clang) warnings.
Affected #: 9 files
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/ChangeLog
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,27 @@
+2013-09-09 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * alloc.c (free_normal_lisp_object):
+ Mark unused argument.
+
+ * bytecode.c (bytecode_negate):
+ * data.c (Fsub1):
+ Shut up compiler warnings about always true comparisons.
+
+ * dired.c (Ffile_attributes):
+ Shut up compiler warnings about signedness in comparison.
+
+ * editfns.c (Fencode_time):
+ Fix addition of int to string to shut up compiler. Still broken?
+
+ * glyphs.c (check_valid_xbm_inline):
+ Shut up compiler warnings about unused variable and signedness.
+
+ * lread.c (unreadchar):
+ Shut up compiler warning about unused format argument.
+
+ * sysdep.c (child_setup_tty):
+ Shut up compiler warning about empty if body.
+
2013-08-05 Aidan Kehoe <kehoea(a)parhasard.net>
* data.c:
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/alloc.c
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -832,23 +832,25 @@
zero_sized_lisp_object (obj, lisp_object_size (obj));
}
+#ifdef NEW_GC
+void
+free_normal_lisp_object (Lisp_Object UNUSED(obj))
+{
+ /* Manual frees are not allowed with asynchronous finalization */
+ return;
+}
+#else
void
free_normal_lisp_object (Lisp_Object obj)
{
-#ifndef NEW_GC
const struct lrecord_implementation *imp =
XRECORD_LHEADER_IMPLEMENTATION (obj);
-#endif /* not NEW_GC */
-
-#ifdef NEW_GC
- /* Manual frees are not allowed with asynchronous finalization */
- return;
-#else
+
assert (!imp->frob_block_p);
assert (!imp->size_in_bytes_method);
old_free_lcrecord (obj);
+}
#endif
-}
#ifndef NEW_GC
int
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/bytecode.c
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -239,8 +239,8 @@
if (FIXNUMP (obj)) return make_integer (- XFIXNUM (obj));
if (FLOATP (obj)) return make_float (- XFLOAT_DATA (obj));
- if (CHARP (obj)) return make_integer (- ((int) XCHAR (obj)));
- if (MARKERP (obj)) return make_integer (- ((int) marker_position (obj)));
+ if (CHARP (obj)) return make_integer (- ((EMACS_INT) XCHAR (obj)));
+ if (MARKERP (obj)) return make_integer (- marker_position (obj));
#ifdef HAVE_BIGNUM
if (BIGNUMP (obj)) BIGNUM_ARITH_RETURN (obj, neg);
#endif
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/data.c
--- a/src/data.c
+++ b/src/data.c
@@ -2477,7 +2477,7 @@
retry:
if (FIXNUMP (number)) return make_integer (XFIXNUM (number) + 1);
- if (CHARP (number)) return make_integer (XCHAR (number) + 1);
+ if (CHARP (number)) return make_integer ((EMACS_INT) XCHAR (number) + 1);
if (MARKERP (number)) return make_integer (marker_position (number) + 1);
if (FLOATP (number)) return make_float (XFLOAT_DATA (number) + 1.0);
#ifdef HAVE_BIGNUM
@@ -2521,7 +2521,7 @@
retry:
if (FIXNUMP (number)) return make_integer (XFIXNUM (number) - 1);
- if (CHARP (number)) return make_integer (XCHAR (number) - 1);
+ if (CHARP (number)) return make_integer ((EMACS_INT) XCHAR (number) - 1);
if (MARKERP (number)) return make_integer (marker_position (number) - 1);
if (FLOATP (number)) return make_float (XFLOAT_DATA (number) - 1.0);
#ifdef HAVE_BIGNUM
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/dired.c
--- a/src/dired.c
+++ b/src/dired.c
@@ -939,8 +939,8 @@
if (NILP(id_format) || EQ (id_format, Qinteger))
{
- uidInfo = make_unsigned_integer (s.st_uid);
- gidInfo = make_unsigned_integer (s.st_gid);
+ uidInfo = make_unsigned_integer ((EMACS_UINT) s.st_uid);
+ gidInfo = make_unsigned_integer ((EMACS_UINT) s.st_gid);
}
else
{
@@ -957,7 +957,7 @@
RETURN_UNGCPRO (listn (12,
mode,
- make_unsigned_integer (s.st_nlink),
+ make_unsigned_integer ((EMACS_UINT) s.st_nlink),
uidInfo,
gidInfo,
make_time (s.st_atime),
@@ -967,7 +967,7 @@
modestring,
gid,
make_unsigned_integer (s.st_ino),
- make_unsigned_integer (s.st_dev)));
+ make_unsigned_integer ((EMACS_UINT) s.st_dev)));
}
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/editfns.c
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -1168,7 +1168,7 @@
CHECK_FIXNUM (*args); tm.tm_hour = XFIXNUM (*args++); /* hour */
CHECK_FIXNUM (*args); tm.tm_mday = XFIXNUM (*args++); /* day */
CHECK_FIXNUM (*args); tm.tm_mon = XFIXNUM (*args++) - 1; /* month */
- CHECK_FIXNUM (*args); tm.tm_year = XFIXNUM (*args++) - 1900;/* year */
+ CHECK_FIXNUM (*args); tm.tm_year = XFIXNUM (*args++) - 1900; /* year */
tm.tm_isdst = -1;
@@ -1190,7 +1190,9 @@
else if (FIXNUMP (zone))
{
int abszone = abs (XFIXNUM (zone));
- sprintf (tzbuf, "XXX%s%d:%02d:%02d", "-" + (XFIXNUM (zone) < 0),
+ /* #### I have no idea what this conforms to,
+ but the compiler has stopped whining. */
+ sprintf (tzbuf, "XXX%s%d:%02d:%02d", (XFIXNUM (zone) < 0) ? "-" : "+",
abszone / (60*60), (abszone/60) % 60, abszone % 60);
tzstring = tzbuf;
}
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/glyphs.c
--- a/src/glyphs.c
+++ b/src/glyphs.c
@@ -2637,8 +2637,8 @@
static void
check_valid_xbm_inline (Lisp_Object data)
{
- Lisp_Object width, height, bits, args[2];
- unsigned long i_width, i_height;
+ Lisp_Object width, height, bits;
+ EMACS_INT i_width, i_height;
if (!CONSP (data) ||
!CONSP (XCDR (data)) ||
@@ -2658,9 +2658,9 @@
if (!FIXNUMP (height) || XREALFIXNUM (height) < 0)
invalid_argument ("Height must be a natural number", height);
- i_width = (unsigned long) XREALFIXNUM (width);
- i_height = (unsigned long) XREALFIXNUM (height);
- if (i_width * i_height / 8UL > string_char_length (bits))
+ i_width = XREALFIXNUM (width);
+ i_height = XREALFIXNUM (height);
+ if (i_width * i_height / 8 > string_char_length (bits))
invalid_argument ("data is too short for width and height",
vector3 (width, height, bits));
}
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/lread.c
--- a/src/lread.c
+++ b/src/lread.c
@@ -304,7 +304,7 @@
if (testing_mule)
fprintf (stderr,
(c >= 0x20 && c <= 0x7E) ? "UU%c" :
- ((c == '\n') ? "UU\\n\n" : "UU\\%o"), c);
+ ((c == '\n') ? "UU\\n%c" : "UU\\%o"), c);
}
#endif
}
diff -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 -r 427a72c6ee17f668b66c6d201b5afb10ab3326d7 src/sysdep.c
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -494,8 +494,10 @@
#else
/* <mdiers> What to do upon failure? Just ignoring rc is probably
not acceptable, is it? */
- if (cfsetispeed (&s.main, B9600) == -1) /* ignore */;
- if (cfsetospeed (&s.main, B9600) == -1) /* ignore */;
+ if (cfsetispeed (&s.main, B9600) == -1)
+ ; /* ignore */
+ if (cfsetospeed (&s.main, B9600) == -1)
+ ; /* ignore */
#endif /* defined (CBAUD) */
#else /* not HAVE_TERMIO */
Repository URL: https://bitbucket.org/xemacs/xemacs/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
Re: Use XkbKeycodeToKeysym instead of obsolete XKeycodeToKeysym
11 years, 3 months
Aidan Kehoe
Ar an ceathrú lá déag de mí Méan Fómhair, scríobh Stephen J. Turnbull:
> Aidan Kehoe writes:
>
> > This is still broken. It checks HAVE_XKBKEYCODETOKEYSYM at compile time, and
> > then tries to call XkbKeycodeToKeysym at run time, when XkbKeycodeToKeysym
> > may well not be there. This is exactly the situation on Apple’s X11, the XKB
> > library is available at compile time, and as I mentioned, the XKB extension
> > is not available on the server at runtime, so the below code fails. There
> > are other servers in use where this is true, see
> > https://www.google.com/search?q=%22xkb+extension+not+present%22 .
>
> Have you actually tested this?
Not recently, but I’ve been looking at that compile time warning for several
years, and for all that time the XKB extension has not been available on
Apple X11 servers.
> All of the cases cited that I looked at actually try to change layouts,
> mostly using setxkbmap. In principle querying the Keysym that corresponds
> to a Keycode can fallback to the base protocol, and as I understand the
> documentation, that's what it's supposed to do.
Where is this documented? I note
http://searchcode.com/codesearch/view/22124342#66 returns NoSymbol if XKB is
unavailable.
--
‘Liston operated so fast that he once accidentally amputated an assistant’s
fingers along with a patient’s leg, […] The patient and the assistant both
died of sepsis, and a spectator reportedly died of shock, resulting in the
only known procedure with a 300% mortality.’ (Atul Gawande, NEJM, 2012)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/xemacs-packages: 4 new changesets
11 years, 3 months
Bitbucket
4 new commits in xemacs-packages:
https://bitbucket.org/xemacs/xemacs-packages/commits/42facd1d7711/
Changeset: 42facd1d7711
User: Norbert Koch
Date: 2013-09-02 14:44:23
Summary: update packages erc leim misc-games xemacs-base
Affected #: 1 file
diff -r 9b7a21e38bc7a8189959645efc04087cbd5139e9 -r 42facd1d7711a10f45b348d6931c77694272d24e .hgsubstate
--- a/.hgsubstate
+++ b/.hgsubstate
@@ -2,7 +2,7 @@
cc32bd2c9d095f74d611b2221f7d100565850acb mule-packages/egg-its
2b1bb95aa35bef5bb0c36c518ba1c2dd7bd3af02 mule-packages/latin-euro-standards
fd76220eb27f425aae390fcf774797e7216f2426 mule-packages/latin-unity
-a53c6d7f6ae2bfbf3c7f19ea8553501e2b30ec28 mule-packages/leim
+19b9ce3d1a51a793d9e7a55198a643137c2e1d1f mule-packages/leim
5afa64cf5daef1c66e7fcca68a856fd886ae83ec mule-packages/locale
f8c79d7bcfb459350e88e82e3c76bf3620fe15c6 mule-packages/lookup
382d17988c34f608ce741003148890aeb06c20c5 mule-packages/mule-base
@@ -40,7 +40,7 @@
c498c1621c7dff0e835215129b80c5b53eb4ef33 xemacs-packages/eieio
b4507a4857330d15869ce16cd74c1014aa9ecbcb xemacs-packages/elib
f8210eab162b9ea35f3dcce579960d7807ac1f74 xemacs-packages/emerge
-63205fffa0eca7e872cb62c176cda7d1e0d627f6 xemacs-packages/erc
+d56da29e55b2ddc5d8e2bf23f4a53b184913bc4e xemacs-packages/erc
1e91ed73cc98217dfad93d14864d1fd8e8cbbe02 xemacs-packages/escreen
c1f33e202c13a6fe1a03bf84d55fc53819f80013 xemacs-packages/eshell
7be4c897940fd291183a3c9cf4cace91489d29cd xemacs-packages/ess
@@ -71,7 +71,7 @@
94793e4b0b7e58e049ef93522a16ca8f7aa3632e xemacs-packages/mew
75ee31abcb26795cb9316dd53cdead6f9728e2ab xemacs-packages/mh-e
ccb3d74d9f75a12b77197f480da12f31e495a98d xemacs-packages/mine
-d656b7e454fbff76dc31e450bf0f94969ffab37c xemacs-packages/misc-games
+9d7aff9c38cca160185aec35f295d03dd361b7c5 xemacs-packages/misc-games
306282595cd6c40b1ac35d774319165413dbf8b4 xemacs-packages/mmm-mode
89c61585a9a799cc0cbeb69ab1e841732ffdc3eb xemacs-packages/net-utils
fd7ad264907107574dbbe5492304ec4a9786d658 xemacs-packages/ocaml
@@ -123,7 +123,7 @@
4eb09b852b72373e7ce9790cb9ebafc7e1b7598e xemacs-packages/vm
d1d1893d29ed5c97fab849e1ffb3a51d778d8026 xemacs-packages/w3
fd7cd3bdb22b444b112299facd2375daa2091dee xemacs-packages/x-symbol
-a50236b480e5cf038f3c80369f7b548f1c89412a xemacs-packages/xemacs-base
+dbe31f6c321815a3a77e3ee2b0a2e59514fc5d3c xemacs-packages/xemacs-base
9c8d90ff018391ccc55abcf6967ea6a00e749f53 xemacs-packages/xemacs-devel
be5592eaca6a65548d138ecd753f2e71b123793a xemacs-packages/xetla
bc5e241f2ddfed169b3e679b85a030237d5132ee xemacs-packages/xlib
https://bitbucket.org/xemacs/xemacs-packages/commits/6c828f1cd893/
Changeset: 6c828f1cd893
User: Norbert Koch
Date: 2013-09-02 14:45:58
Summary: XEmacs Package Release
Affected #: 1 file
diff -r 42facd1d7711a10f45b348d6931c77694272d24e -r 6c828f1cd893cd704ea7e69d634321f7ad1ce588 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-09-02 Norbert Koch <viteno(a)xemacs.org>
+
+ * Packages released: leim, erc, misc-games, xemacs-base.
+
2013-06-24 Norbert Koch <viteno(a)xemacs.org>
* Packages released: efs.
https://bitbucket.org/xemacs/xemacs-packages/commits/b870d5948d75/
Changeset: b870d5948d75
User: Norbert Koch
Date: 2013-09-03 09:28:22
Summary: pre-release packages erc leim misc-games xemacs-base
Affected #: 1 file
diff -r 6c828f1cd893cd704ea7e69d634321f7ad1ce588 -r b870d5948d759a7461dbcbac27f058aa82055ceb .hgsubstate
--- a/.hgsubstate
+++ b/.hgsubstate
@@ -2,7 +2,7 @@
cc32bd2c9d095f74d611b2221f7d100565850acb mule-packages/egg-its
2b1bb95aa35bef5bb0c36c518ba1c2dd7bd3af02 mule-packages/latin-euro-standards
fd76220eb27f425aae390fcf774797e7216f2426 mule-packages/latin-unity
-19b9ce3d1a51a793d9e7a55198a643137c2e1d1f mule-packages/leim
+72865092f02b13aced9cd49b5fd2297d2b0a5b27 mule-packages/leim
5afa64cf5daef1c66e7fcca68a856fd886ae83ec mule-packages/locale
f8c79d7bcfb459350e88e82e3c76bf3620fe15c6 mule-packages/lookup
382d17988c34f608ce741003148890aeb06c20c5 mule-packages/mule-base
@@ -40,7 +40,7 @@
c498c1621c7dff0e835215129b80c5b53eb4ef33 xemacs-packages/eieio
b4507a4857330d15869ce16cd74c1014aa9ecbcb xemacs-packages/elib
f8210eab162b9ea35f3dcce579960d7807ac1f74 xemacs-packages/emerge
-d56da29e55b2ddc5d8e2bf23f4a53b184913bc4e xemacs-packages/erc
+efba2c27bdf397b9cbfadbb442275559d69e19a6 xemacs-packages/erc
1e91ed73cc98217dfad93d14864d1fd8e8cbbe02 xemacs-packages/escreen
c1f33e202c13a6fe1a03bf84d55fc53819f80013 xemacs-packages/eshell
7be4c897940fd291183a3c9cf4cace91489d29cd xemacs-packages/ess
@@ -71,7 +71,7 @@
94793e4b0b7e58e049ef93522a16ca8f7aa3632e xemacs-packages/mew
75ee31abcb26795cb9316dd53cdead6f9728e2ab xemacs-packages/mh-e
ccb3d74d9f75a12b77197f480da12f31e495a98d xemacs-packages/mine
-9d7aff9c38cca160185aec35f295d03dd361b7c5 xemacs-packages/misc-games
+d87e94b356f7bb56cab2489ed45f5b8e1d879e23 xemacs-packages/misc-games
306282595cd6c40b1ac35d774319165413dbf8b4 xemacs-packages/mmm-mode
89c61585a9a799cc0cbeb69ab1e841732ffdc3eb xemacs-packages/net-utils
fd7ad264907107574dbbe5492304ec4a9786d658 xemacs-packages/ocaml
@@ -123,7 +123,7 @@
4eb09b852b72373e7ce9790cb9ebafc7e1b7598e xemacs-packages/vm
d1d1893d29ed5c97fab849e1ffb3a51d778d8026 xemacs-packages/w3
fd7cd3bdb22b444b112299facd2375daa2091dee xemacs-packages/x-symbol
-dbe31f6c321815a3a77e3ee2b0a2e59514fc5d3c xemacs-packages/xemacs-base
+ca80885735351782c2994ad8eb92df52cec46470 xemacs-packages/xemacs-base
9c8d90ff018391ccc55abcf6967ea6a00e749f53 xemacs-packages/xemacs-devel
be5592eaca6a65548d138ecd753f2e71b123793a xemacs-packages/xetla
bc5e241f2ddfed169b3e679b85a030237d5132ee xemacs-packages/xlib
https://bitbucket.org/xemacs/xemacs-packages/commits/0c5a1e2bb50f/
Changeset: 0c5a1e2bb50f
User: Norbert Koch
Date: 2013-09-05 09:19:14
Summary: pending operations
Affected #: 1 file
Repository URL: https://bitbucket.org/xemacs/xemacs-packages/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
[PATCH 21.5] Re: Is anybody configuring --with-newgc on Intel Mac?
11 years, 3 months
Marcus Crestani
PATCH 21.5
Fix VDB detection on x86_64 Macs.
>>>>>"SJT" == Stephen J Turnbull <stephen(a)xemacs.org> writes:
SJT> I just tried, and it tried to use PPC code.
I configure --with-newgc frequently on my Intel Mac, but never saw the
problem you hit since my configure arguments also set the VDB
explicitly. Thus, I missed that configure fails to determine the right
virtual-dirty-bit write barrier on 64-bit Macs.
This patch fixes it, I'll commit in a few days, if nobody objects.
# HG changeset patch
# User Marcus Crestani <crestani(a)informatik.uni-tuebingen.de>
# Date 1378669689 -7200
# Node ID a9fd35f939a5ab86f3907d5492f70d8ab6a884d2
# Parent 995257d0c590d72c2ae483054d5361bff947d19d
Fix VDB detection on x86_64 Macs.
diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-09-08 Marcus Crestani <crestani(a)xemacs.org>
+
+ * configure.ac: x86_64 Macs also use POSIX virtual-dirty-bit write
+ barrier.
+ * configure: Rebuild.
+
2013-07-28 Stephen J. Turnbull <stephen(a)xemacs.org>
* configure.ac (makeinfo):
diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -5940,6 +5940,7 @@
case "$opsys" in
darwin ) case "$machine" in
intel386 ) check_vdb_posix=yes ;;
+ x86_64 ) check_vdb_posix=yes ;;
* ) $as_echo "#define VDB_MACH 1" >>confdefs.h
have_vdb_mach=yes ;;
esac ;;
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -1448,6 +1448,7 @@
case "$opsys" in
darwin ) case "$machine" in
intel386 ) check_vdb_posix=yes ;;
+ x86_64 ) check_vdb_posix=yes ;;
* ) AC_DEFINE(VDB_MACH) have_vdb_mach=yes ;;
esac ;;
cygwin* ) AC_DEFINE(VDB_WIN32) have_vdb_win32=yes ;;
--
Marcus
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/XEmacs: crestani: Fix VDB detection on x86_64 Macs.
11 years, 3 months
Bitbucket
1 new commit in XEmacs:
https://bitbucket.org/xemacs/xemacs/commits/a9fd35f939a5/
Changeset: a9fd35f939a5
User: crestani
Date: 2013-09-08 21:48:09
Summary: Fix VDB detection on x86_64 Macs.
Affected #: 3 files
diff -r 995257d0c590d72c2ae483054d5361bff947d19d -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-09-08 Marcus Crestani <crestani(a)xemacs.org>
+
+ * configure.ac: x86_64 Macs also use POSIX virtual-dirty-bit write
+ barrier.
+ * configure: Rebuild.
+
2013-07-28 Stephen J. Turnbull <stephen(a)xemacs.org>
* configure.ac (makeinfo):
diff -r 995257d0c590d72c2ae483054d5361bff947d19d -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 configure
--- a/configure
+++ b/configure
@@ -5940,6 +5940,7 @@
case "$opsys" in
darwin ) case "$machine" in
intel386 ) check_vdb_posix=yes ;;
+ x86_64 ) check_vdb_posix=yes ;;
* ) $as_echo "#define VDB_MACH 1" >>confdefs.h
have_vdb_mach=yes ;;
esac ;;
diff -r 995257d0c590d72c2ae483054d5361bff947d19d -r a9fd35f939a5ab86f3907d5492f70d8ab6a884d2 configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -1448,6 +1448,7 @@
case "$opsys" in
darwin ) case "$machine" in
intel386 ) check_vdb_posix=yes ;;
+ x86_64 ) check_vdb_posix=yes ;;
* ) AC_DEFINE(VDB_MACH) have_vdb_mach=yes ;;
esac ;;
cygwin* ) AC_DEFINE(VDB_WIN32) have_vdb_win32=yes ;;
Repository URL: https://bitbucket.org/xemacs/xemacs/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/cc-mode: acm: Correctly fontify Java class constructors.
11 years, 3 months
Bitbucket
1 new commit in cc-mode:
https://bitbucket.org/xemacs/cc-mode/commits/1bdd63c23b3d/
Changeset: 1bdd63c23b3d
User: acm
Date: 2013-09-07 16:21:31
Summary: Correctly fontify Java class constructors.
cc-langs.el (c-type-decl-suffix-key): Now matches ")" in Java Mode.
(c-recognize-typeless-decls): Set the Java value to t.
cc-engine.el (c-forward-decl-or-cast-1): While handling a "(", add a
check for, effectively, Java, and handle a "typeless" declaration there.
Affected #: 2 files
diff -r e0466fccd2dfbf91a8b7352ac602003554fadf19 -r 1bdd63c23b3dcf39b93f66655ccd457f515be41d cc-engine.el
--- a/cc-engine.el
+++ b/cc-engine.el
@@ -6944,32 +6944,38 @@
;; Skip over type decl prefix operators. (Note similar code in
;; `c-font-lock-declarators'.)
- (while (and (looking-at c-type-decl-prefix-key)
- (if (and (c-major-mode-is 'c++-mode)
- (match-beginning 3))
- ;; If the third submatch matches in C++ then
- ;; we're looking at an identifier that's a
- ;; prefix only if it specifies a member pointer.
- (when (setq got-identifier (c-forward-name))
- (if (looking-at "\\(::\\)")
- ;; We only check for a trailing "::" and
- ;; let the "*" that should follow be
- ;; matched in the next round.
- (progn (setq got-identifier nil) t)
- ;; It turned out to be the real identifier,
- ;; so stop.
- nil))
- t))
-
- (if (eq (char-after) ?\()
+ (if (and c-recognize-typeless-decls
+ (equal c-type-decl-prefix-key "\\<\\>"))
+ (when (eq (char-after) ?\()
(progn
(setq paren-depth (1+ paren-depth))
- (forward-char))
- (unless got-prefix-before-parens
- (setq got-prefix-before-parens (= paren-depth 0)))
- (setq got-prefix t)
- (goto-char (match-end 1)))
- (c-forward-syntactic-ws))
+ (forward-char)))
+ (while (and (looking-at c-type-decl-prefix-key)
+ (if (and (c-major-mode-is 'c++-mode)
+ (match-beginning 3))
+ ;; If the third submatch matches in C++ then
+ ;; we're looking at an identifier that's a
+ ;; prefix only if it specifies a member pointer.
+ (when (setq got-identifier (c-forward-name))
+ (if (looking-at "\\(::\\)")
+ ;; We only check for a trailing "::" and
+ ;; let the "*" that should follow be
+ ;; matched in the next round.
+ (progn (setq got-identifier nil) t)
+ ;; It turned out to be the real identifier,
+ ;; so stop.
+ nil))
+ t))
+
+ (if (eq (char-after) ?\()
+ (progn
+ (setq paren-depth (1+ paren-depth))
+ (forward-char))
+ (unless got-prefix-before-parens
+ (setq got-prefix-before-parens (= paren-depth 0)))
+ (setq got-prefix t)
+ (goto-char (match-end 1)))
+ (c-forward-syntactic-ws)))
(setq got-parens (> paren-depth 0))
diff -r e0466fccd2dfbf91a8b7352ac602003554fadf19 -r 1bdd63c23b3dcf39b93f66655ccd457f515be41d cc-langs.el
--- a/cc-langs.el
+++ b/cc-langs.el
@@ -2807,7 +2807,8 @@
"\\>")
"")
"\\)")
- (java idl) "\\([\[\(]\\)")
+ java "\\([\[\(\)]\\)"
+ idl "\\([\[\(]\\)")
(c-lang-defvar c-type-decl-suffix-key (c-lang-const c-type-decl-suffix-key)
'dont-doc)
@@ -2926,7 +2927,7 @@
that are preceded by a declaration starting keyword, so
e.g. `c-typeless-decl-kwds' may still be used when it's set to nil."
t nil
- (c c++ objc) t)
+ (c c++ objc java) t)
(c-lang-defvar c-recognize-typeless-decls
(c-lang-const c-recognize-typeless-decls))
Repository URL: https://bitbucket.org/xemacs/cc-mode/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches