- (let* ((name (first things))
- (leaf (or (lexenv-find name vars)
- (find-free-var name))))
- (etypecase leaf
- (leaf
- (when (constant-p leaf)
- (compiler-error "~S is a constant and thus can't be set." name))
- (when (lambda-var-p leaf)
- (let ((home-lambda (ctran-home-lambda-or-null start)))
- (when home-lambda
- (pushnew leaf (lambda-calls-or-closes home-lambda))))
- (when (lambda-var-ignorep leaf)
- ;; ANSI's definition of "Declaration IGNORE, IGNORABLE"
- ;; requires that this be a STYLE-WARNING, not a full warning.
- (compiler-style-warn
- "~S is being set even though it was declared to be ignored."
- name)))
- (setq-var start next result leaf (second things)))
- (cons
- (aver (eq (car leaf) 'MACRO))
+ (let* ((name (first things))
+ (leaf (or (lexenv-find name vars)
+ (find-free-var name))))
+ (etypecase leaf
+ (leaf
+ (when (constant-p leaf)
+ (compiler-error "~S is a constant and thus can't be set." name))
+ (when (lambda-var-p leaf)
+ (let ((home-lambda (ctran-home-lambda-or-null start)))
+ (when home-lambda
+ (pushnew leaf (lambda-calls-or-closes home-lambda))))
+ (when (lambda-var-ignorep leaf)
+ ;; ANSI's definition of "Declaration IGNORE, IGNORABLE"
+ ;; requires that this be a STYLE-WARNING, not a full warning.
+ (compiler-style-warn
+ "~S is being set even though it was declared to be ignored."
+ name)))
+ (setq-var start next result leaf (second things)))
+ (cons
+ (aver (eq (car leaf) 'macro))