Changeset 14369
- Timestamp:
- Oct 18, 2010, 3:47:31 PM (14 years ago)
- Location:
- trunk/source/compiler
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/compiler/nx-basic.lisp
r14351 r14369 641 641 (:undefined-function . "Undefined function ~S") ;; (deferred) 642 642 (:undefined-type . "Undefined type ~S") ;; (deferred) 643 (:unknown-type-in-declaration . "Unknown or invalidtype ~S, declaration ignored")643 (:unknown-type-in-declaration . "Unknown type ~S, declaration ignored") 644 644 (:bad-declaration . "Unknown or invalid declaration ~S") 645 645 (:invalid-type . report-invalid-type-compiler-warning) -
trunk/source/compiler/nx.lisp
r14348 r14369 221 221 (:environment-mismatch . invalid-arguments) 222 222 (:ftype-mismatch . invalid-arguments) 223 (:unknown-type-in-declaration . style-warning) 223 224 (:ignore . style-warning) 224 225 (:result-ignored . style-warning) -
trunk/source/compiler/nx0.lisp
r14348 r14369 717 717 (parse-unknown-type (c) 718 718 (when (and whine *compiler-warn-on-undefined-type-references*) 719 (nx1-whine :undefined-typetypespec))719 (nx1-whine (if (keywordp whine) whine :undefined-type) typespec)) 720 720 (values nil (parse-unknown-type-specifier c))) 721 721 ;; catch any errors due to destructuring in type-expand … … 864 864 (defnxdecl ftype (pending decl env &aux whined) 865 865 (destructuring-bind (type &rest fnames) (%cdr decl) 866 (let ((ctype (specifier-type-if-known type env))) 867 (if (null ctype) 868 (nx1-whine :unknown-type-in-declaration type) 869 (if (types-disjoint-p ctype (specifier-type 'function)) 870 (nx-bad-decls decl) 871 (dolist (s fnames) 872 (if (or (symbolp s) (setf-function-name-p s)) 873 (nx-new-fdecl pending s 'ftype type) 874 (unless (shiftf whined t) (nx-bad-decls decl))))))))) 866 (let ((ctype (specifier-type-if-known type env :whine :unknown-type-in-declaration))) 867 (when ctype 868 (if (types-disjoint-p ctype (specifier-type 'function)) 869 (nx-bad-decls decl) 870 (dolist (s fnames) 871 (if (or (symbolp s) (setf-function-name-p s)) 872 (nx-new-fdecl pending s 'ftype type) 873 (unless (shiftf whined t) (nx-bad-decls decl))))))))) 875 874 876 875 (defnxdecl settable (pending decl env) … … 894 893 895 894 (defun nx-process-type-decl (pending decl type vars env &aux whined) 896 ( if (specifier-type-if-known type env)895 (when (specifier-type-if-known type env :whine :unknown-type-in-declaration) 897 896 (dolist (sym vars) 898 897 (if (symbolp sym) 899 898 (nx-new-vdecl pending sym 'type type) 900 (unless (shiftf whined t) (nx-bad-decls decl)))) 901 (nx1-whine :unknown-type-in-declaration type))) 899 (unless (shiftf whined t) (nx-bad-decls decl)))))) 902 900 903 901 (defnxdecl global-function-name (pending decl env)
Note:
See TracChangeset
for help on using the changeset viewer.
