]> git.eshelyaron.com Git - emacs.git/commitdiff
(byte-compile-lapcode): Signal overflow.
authorStefan Monnier <monnier@iro.umontreal.ca>
Wed, 26 Aug 2009 02:56:05 +0000 (02:56 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Wed, 26 Aug 2009 02:56:05 +0000 (02:56 +0000)
lisp/ChangeLog
lisp/emacs-lisp/bytecomp.el

index cb2b6ebe78933aae519851852815d6b9fe412758..3d2796ed3dc769469f118a82572262da8389406d 100644 (file)
@@ -1,3 +1,7 @@
+2009-08-26  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * emacs-lisp/bytecomp.el (byte-compile-lapcode): Signal overflow.
+
 2009-08-25  Michael Albinus  <michael.albinus@gmx.de>
 
        * simple.el (process-file-side-effects): New defvar.
index b8e63a4f5f88bf2c0e01283ef96cf37b07b131fa..f1561c0b279fad2a830f33fb9a3425606082a5e9 100644 (file)
@@ -854,7 +854,9 @@ otherwise pop it")
              (t                        ; Absolute jump
               (setq pc (car (cdr (car bytes))))        ; Pick PC from tag
               (setcar (cdr bytes) (logand pc 255))
-              (setcar bytes (lsh pc -8))))
+              (setcar bytes (lsh pc -8))
+               ;; FIXME: Replace this by some workaround.
+               (if (> (car bytes) 255) (error "Bytecode overflow"))))))
        (setq patchlist (cdr patchlist))))
     (apply 'unibyte-string (nreverse bytes))))