diff options
| author | Stefan Monnier | 2012-05-29 23:59:42 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2012-05-29 23:59:42 -0400 |
| commit | 61b108cc62d69c96c20b9e23b248185591563c1f (patch) | |
| tree | e07c24a1ec29b567b1f2de381e486f83a5da6211 /src/lread.c | |
| parent | 934f3f582d0369e95c6495748e3944405d3629b8 (diff) | |
| download | emacs-61b108cc62d69c96c20b9e23b248185591563c1f.tar.gz emacs-61b108cc62d69c96c20b9e23b248185591563c1f.zip | |
* lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C.
(macro-declaration-function): Move var from C code.
(macro-declaration-function): Define function with defalias.
* lisp/emacs-lisp/macroexp.el (macroexpand-all-1):
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Don't handle
defun/defmacro any more.
* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-signature):
Provide fallback for unknown arglist.
(byte-compile-arglist-warn): Change calling convention.
(byte-compile-output-file-form): Move print-vars binding.
(byte-compile-output-docform): Simplify accordingly.
(byte-compile-file-form-defun, byte-compile-file-form-defmacro)
(byte-compile-defmacro-declaration): Remove.
(byte-compile-file-form-defmumble): Generalize to defalias.
(byte-compile-output-as-comment): Return byte-positions.
Simplify callers accordingly.
(byte-compile-lambda): Use `assert'.
(byte-compile-defun, byte-compile-defmacro): Remove.
(byte-compile-file-form-defalias):
Use byte-compile-file-form-defmumble.
(byte-compile-defalias-warn): Remove.
* src/eval.c (Fdefun, Fdefmacro, Vmacro_declaration_function):
Move to byte-run.el.
(Fautoload): Do the hash-doc more carefully.
* src/data.c (Fdefalias): Purify definition, except for keymaps.
(Qdefun): Move from eval.c.
* src/lisp.h (Qdefun): Remove.
* src/lread.c (read1): Tiny simplification.
* lib-src/make-docfile.c: Improve comment style.
(search_lisp_doc_at_eol): New function.
(scan_lisp_file): Use it.
Diffstat (limited to 'src/lread.c')
| -rw-r--r-- | src/lread.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/lread.c b/src/lread.c index 7aba203d685..38b00a66962 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -2982,7 +2982,7 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list) | |||
| 2982 | 2982 | ||
| 2983 | /* If purifying, and string starts with \ newline, | 2983 | /* If purifying, and string starts with \ newline, |
| 2984 | return zero instead. This is for doc strings | 2984 | return zero instead. This is for doc strings |
| 2985 | that we are really going to find in etc/DOC.nn.nn */ | 2985 | that we are really going to find in etc/DOC.nn.nn. */ |
| 2986 | if (!NILP (Vpurify_flag) && NILP (Vdoc_file_name) && cancel) | 2986 | if (!NILP (Vpurify_flag) && NILP (Vdoc_file_name) && cancel) |
| 2987 | return make_number (0); | 2987 | return make_number (0); |
| 2988 | 2988 | ||
| @@ -3095,18 +3095,17 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list) | |||
| 3095 | nbytes) | 3095 | nbytes) |
| 3096 | : nbytes); | 3096 | : nbytes); |
| 3097 | 3097 | ||
| 3098 | if (uninterned_symbol && ! NILP (Vpurify_flag)) | 3098 | name = ((uninterned_symbol && ! NILP (Vpurify_flag) |
| 3099 | name = make_pure_string (read_buffer, nchars, nbytes, multibyte); | 3099 | ? make_pure_string : make_specified_string) |
| 3100 | else | 3100 | (read_buffer, nchars, nbytes, multibyte)); |
| 3101 | name = make_specified_string (read_buffer, nchars, nbytes, multibyte); | ||
| 3102 | result = (uninterned_symbol ? Fmake_symbol (name) | 3101 | result = (uninterned_symbol ? Fmake_symbol (name) |
| 3103 | : Fintern (name, Qnil)); | 3102 | : Fintern (name, Qnil)); |
| 3104 | 3103 | ||
| 3105 | if (EQ (Vread_with_symbol_positions, Qt) | 3104 | if (EQ (Vread_with_symbol_positions, Qt) |
| 3106 | || EQ (Vread_with_symbol_positions, readcharfun)) | 3105 | || EQ (Vread_with_symbol_positions, readcharfun)) |
| 3107 | Vread_symbol_positions_list = | 3106 | Vread_symbol_positions_list |
| 3108 | Fcons (Fcons (result, make_number (start_position)), | 3107 | = Fcons (Fcons (result, make_number (start_position)), |
| 3109 | Vread_symbol_positions_list); | 3108 | Vread_symbol_positions_list); |
| 3110 | return result; | 3109 | return result; |
| 3111 | } | 3110 | } |
| 3112 | } | 3111 | } |
| @@ -3520,7 +3519,7 @@ read_list (int flag, register Lisp_Object readcharfun) | |||
| 3520 | We don't use Fexpand_file_name because that would make | 3519 | We don't use Fexpand_file_name because that would make |
| 3521 | the directory absolute now. */ | 3520 | the directory absolute now. */ |
| 3522 | elt = concat2 (build_string ("../lisp/"), | 3521 | elt = concat2 (build_string ("../lisp/"), |
| 3523 | Ffile_name_nondirectory (elt)); | 3522 | Ffile_name_nondirectory (elt)); |
| 3524 | } | 3523 | } |
| 3525 | else if (EQ (elt, Vload_file_name) | 3524 | else if (EQ (elt, Vload_file_name) |
| 3526 | && ! NILP (elt) | 3525 | && ! NILP (elt) |