(when (eq (info :variable :where-from symbol) :declared)
(format stream "~@:_Declared type: ~S"
(type-specifier (info :variable :type symbol))))
+ (when (info :variable :always-bound symbol)
+ (format stream "~@:_Declared always-bound."))
(cond
((eq kind :alien)
(let ((info (info :variable :alien-info symbol)))
(format stream "~@:_Expansion: ~S" (funcall fun (list symbol))))))
(terpri stream)))
+ (when (or (member symbol sb-c::*policy-qualities*)
+ (assoc symbol sb-c::*policy-dependent-qualities*))
+ (pprint-logical-block (stream nil)
+ (pprint-newline :mandatory stream)
+ (pprint-indent :block 2 stream)
+ (format stream "~A names a~:[ dependent~;n~] optimization policy quality:"
+ symbol
+ (member symbol sb-c::*policy-qualities*))
+ (describe-documentation symbol 'optimize stream t))
+ (terpri stream))
+
;; Print out properties.
(let ((plist (symbol-plist symbol)))
(when plist
(format stream "~@:_Source file: ~A" namestring))
((sb-di:debug-source-form source)
(format stream "~@:_Source form:~@:_ ~S"
- (sb-di:debug-source-form source)))
- (t (bug "Don't know how to use a DEBUG-SOURCE without ~
- a namestring or a form."))))))))
+ (sb-di:debug-source-form source)))))))))
#+sb-eval
(let ((source (sb-eval:interpreted-function-source-location function)))
(when source