diff src/bytecode.c @ 89483:2f877ed80fa6

*** empty log message ***
author Kenichi Handa <handa@m17n.org>
date Mon, 08 Sep 2003 12:53:41 +0000
parents 375f2633d815 547647cd162a
children 68c22ea6027c
line wrap: on
line diff
--- a/src/bytecode.c	Mon Sep 08 11:56:09 2003 +0000
+++ b/src/bytecode.c	Mon Sep 08 12:53:41 2003 +0000
@@ -37,7 +37,7 @@
 #include <config.h>
 #include "lisp.h"
 #include "buffer.h"
-#include "charset.h"
+#include "character.h"
 #include "syntax.h"
 #include "window.h"
 
@@ -1437,10 +1437,17 @@
 	  break;
 
 	case Bchar_syntax:
-	  BEFORE_POTENTIAL_GC ();
-	  CHECK_NUMBER (TOP);
-	  AFTER_POTENTIAL_GC ();
-	  XSETFASTINT (TOP, syntax_code_spec[(int) SYNTAX (XINT (TOP))]);
+	  {
+	    int c;
+
+	    BEFORE_POTENTIAL_GC ();
+	    CHECK_CHARACTER (TOP);
+	    AFTER_POTENTIAL_GC ();
+	    c = XFASTINT (TOP);
+	    if (NILP (current_buffer->enable_multibyte_characters))
+	      MAKE_CHAR_MULTIBYTE (c);
+	    XSETFASTINT (TOP, syntax_code_spec[(int) SYNTAX (c)]);
+	  }
 	  break;
 
 	case Bbuffer_substring: