unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Brian Millett <bmillett@gmail.com>
To: Glenn Morris <rgm@gnu.org>
Cc: bug-gnu-emacs@gnu.org
Subject: Re: abbrev.c:201: undefined reference to `SYNTAX_ENTRY_FOLLOW_PARENT'
Date: Thu, 19 Jul 2007 22:39:19 -0500	[thread overview]
Message-ID: <46A02E67.4010404@gmail.com> (raw)
In-Reply-To: <ed7iowt0l5.fsf@fencepost.gnu.org>

Glenn Morris escribío:
> Brian Millett wrote:
> 
>> Ok, so which list?  Bugs only for Current Stable Release?
> 
> M-x report-emacs-bug does the right thing, and also provides useful
> debugging info. Generally, bug-gnu-emacs for releases,
> emacs-pretest-bug for CVS. But we're here now...

Thanks for clarifying that.

>> :pserver:anonymous@cvs.savannah.gnu.org:/cvsroot/emacs
>>
>> did a cvs co emacs
> 
> Then I'm baffled. That should get you the CVS trunk, and
> SYNTAX_ENTRY_FOLLOW_PARENT is sitting there in src/syntax.h, at line
> 71/86. Do you have a src/CVS/Tag file, and if so what are the
> contents?

Temacs-unicode-2

> Does your src/syntax.h look the same as:
> http://cvs.savannah.gnu.org/viewvc/emacs/src/syntax.h?root=emacs&view=markup
> 

Almost:
[bpm]$ diff -wruN syntax.h.new syntax.h
--- syntax.h.new        2007-07-19 22:33:53.000000000 -0500
+++ syntax.h    2007-01-26 00:15:07.000000000 -0600
@@ -59,36 +59,13 @@
 /* Set the syntax entry VAL for char C in table TABLE.  */

 #define SET_RAW_SYNTAX_ENTRY(table, c, val)                            \
-  ((((c) & 0xFF) == (c))                                               \
-   ? (XCHAR_TABLE (table)->contents[(unsigned char) (c)] = (val))      \
-   : Faset ((table), make_number (c), (val)))
-
-/* Fetch the syntax entry for char C in syntax table TABLE.
-   This macro is called only when C is less than CHAR_TABLE_ORDINARY_SLOTS.
-   Do inheritance.  */
+  CHAR_TABLE_SET ((table), c, (val))

-#ifdef __GNUC__
-#define SYNTAX_ENTRY_FOLLOW_PARENT(table, c)                   \
-  ({ Lisp_Object _syntax_tbl = (table);                                \
-     Lisp_Object _syntax_temp = XCHAR_TABLE (_syntax_tbl)->contents[(c)]; \
-     while (NILP (_syntax_temp))                               \
-       {                                                       \
-        _syntax_tbl = XCHAR_TABLE (_syntax_tbl)->parent;       \
-        if (NILP (_syntax_tbl))                                \
-          break;                                               \
-        _syntax_temp = XCHAR_TABLE (_syntax_tbl)->contents[(c)]; \
-       }                                                       \
-     _syntax_temp; })
-#else
-extern Lisp_Object syntax_temp;
-extern Lisp_Object syntax_parent_lookup P_ ((Lisp_Object, int));
+/* Set the syntax entry VAL for char-range RANGE in table TABLE.
+   RANGE is a cons (FROM . TO) specifying the range of characters.  */

-#define SYNTAX_ENTRY_FOLLOW_PARENT(table, c)           \
-  (syntax_temp = XCHAR_TABLE (table)->contents[(c)],   \
-   (NILP (syntax_temp)                                 \
-    ? syntax_parent_lookup (table, (c))                        \
-    : syntax_temp))
-#endif
+#define SET_RAW_SYNTAX_ENTRY_RANGE(table, range, val)  \
+  Fset_char_table_range ((table), (range), (val))

 /* SYNTAX_ENTRY fetches the information from the entry for character C
    in syntax table TABLE, or from globally kept data (gl_state).
@@ -106,12 +83,7 @@
 #  define CURRENT_SYNTAX_TABLE current_buffer->syntax_table
 #endif

-#define SYNTAX_ENTRY_INT(c)                            \
-  ((((c) & 0xFF) == (c))                               \
-   ? SYNTAX_ENTRY_FOLLOW_PARENT (CURRENT_SYNTAX_TABLE, \
-                                (unsigned char) (c))   \
-   : Faref (CURRENT_SYNTAX_TABLE,                      \
-           make_number (c)))
+#define SYNTAX_ENTRY_INT(c) CHAR_TABLE_REF (CURRENT_SYNTAX_TABLE, (c))

 /* Extract the information from the entry for character C
    in the current syntax table.  */
@@ -138,6 +110,7 @@
       ? XCDR (_syntax_temp)                                            \
       : Qnil); })
 #else
+extern Lisp_Object syntax_temp;
 #define SYNTAX(c)                                                      \
   (syntax_temp = SYNTAX_ENTRY ((c)),                                   \
    (CONSP (syntax_temp)                                                        \


-- 
Brian Millett - [ Sinclair, "The Coming of Shadows"]
"Stay close to the Vorlon and watch out for the Shadows. They move when
 you're not looking at them."

  reply	other threads:[~2007-07-20  3:39 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-19 17:11 abbrev.c:201: undefined reference to `SYNTAX_ENTRY_FOLLOW_PARENT' Brian Millett
2007-07-19 18:55 ` Glenn Morris
2007-07-19 22:54   ` Brian Millett
2007-07-19 23:50     ` Glenn Morris
2007-07-20  3:39       ` Brian Millett [this message]
2007-07-20  4:37         ` Glenn Morris
2007-07-20 12:22           ` Brian Millett

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46A02E67.4010404@gmail.com \
    --to=bmillett@gmail.com \
    --cc=bug-gnu-emacs@gnu.org \
    --cc=rgm@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).