Mercurial > emacs
comparison lisp/emacs-lisp/bytecomp.el @ 78631:1150fe1ceae5
(byte-compile-from-buffer): Check old-style backquotes after each `read'
rather than once per buffer to get more precise location info.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Thu, 23 Aug 2007 18:19:56 +0000 |
parents | bd2ba451e2af |
children | 4dcdcb6bc544 92ccd83174e6 |
comparison
equal
deleted
inserted
replaced
78630:0a2e0422ddd5 | 78631:1150fe1ceae5 |
---|---|
1819 (byte-compile-output nil) | 1819 (byte-compile-output nil) |
1820 ;; This allows us to get the positions of symbols read; it's | 1820 ;; This allows us to get the positions of symbols read; it's |
1821 ;; new in Emacs 22.1. | 1821 ;; new in Emacs 22.1. |
1822 (read-with-symbol-positions inbuffer) | 1822 (read-with-symbol-positions inbuffer) |
1823 (read-symbol-positions-list nil) | 1823 (read-symbol-positions-list nil) |
1824 (old-style-backquotes nil) | |
1825 ;; #### This is bound in b-c-close-variables. | 1824 ;; #### This is bound in b-c-close-variables. |
1826 ;; (byte-compile-warnings (if (eq byte-compile-warnings t) | 1825 ;; (byte-compile-warnings (if (eq byte-compile-warnings t) |
1827 ;; byte-compile-warning-types | 1826 ;; byte-compile-warning-types |
1828 ;; byte-compile-warnings)) | 1827 ;; byte-compile-warnings)) |
1829 ) | 1828 ) |
1857 (looking-at ";")) | 1856 (looking-at ";")) |
1858 (forward-line 1)) | 1857 (forward-line 1)) |
1859 (not (eobp))) | 1858 (not (eobp))) |
1860 (setq byte-compile-read-position (point) | 1859 (setq byte-compile-read-position (point) |
1861 byte-compile-last-position byte-compile-read-position) | 1860 byte-compile-last-position byte-compile-read-position) |
1862 (let ((form (read inbuffer))) | 1861 (let* ((old-style-backquotes nil) |
1862 (form (read inbuffer))) | |
1863 ;; Warn about the use of old-style backquotes. | |
1864 (when old-style-backquotes | |
1865 (byte-compile-warn "!! The file uses old-style backquotes !! | |
1866 This functionality has been obsolete for more than 10 years already | |
1867 and will be removed soon. See (elisp)Backquote in the manual.")) | |
1863 (byte-compile-file-form form))) | 1868 (byte-compile-file-form form))) |
1864 ;; Compile pending forms at end of file. | 1869 ;; Compile pending forms at end of file. |
1865 (byte-compile-flush-pending) | 1870 (byte-compile-flush-pending) |
1866 ;; Make warnings about unresolved functions | 1871 ;; Make warnings about unresolved functions |
1867 ;; give the end of the file as their position. | 1872 ;; give the end of the file as their position. |
1868 (setq byte-compile-last-position (point-max)) | 1873 (setq byte-compile-last-position (point-max)) |
1869 (byte-compile-warn-about-unresolved-functions) | 1874 (byte-compile-warn-about-unresolved-functions)) |
1870 ;; Warn about the use of old-style backquotes. | |
1871 (when old-style-backquotes | |
1872 (byte-compile-warn "!! The file uses old-style backquotes !! | |
1873 This functionality has been obsolete for more than 10 years already | |
1874 and will be removed soon. See (elisp)Backquote in the manual."))) | |
1875 ;; Fix up the header at the front of the output | 1875 ;; Fix up the header at the front of the output |
1876 ;; if the buffer contains multibyte characters. | 1876 ;; if the buffer contains multibyte characters. |
1877 (and filename (byte-compile-fix-header filename inbuffer outbuffer)))) | 1877 (and filename (byte-compile-fix-header filename inbuffer outbuffer)))) |
1878 outbuffer)) | 1878 outbuffer)) |
1879 | 1879 |