1.0.14.16: add explicit CHECK-CONSTANT-MODIFICATION policy
[sbcl.git] / src / compiler / node.lisp
index 134a608..cb88d83 100644 (file)
       ;; it looks as though it's never interesting to get debug names
       ;; from them, so it's moot. -- WHN)
       (leaf-source-name leaf)))
+(defun leaf-%debug-name (leaf)
+  (when (functional-p leaf)
+    (functional-%debug-name leaf)))
 
 ;;; The CONSTANT structure is used to represent known constant values.
 ;;; If NAME is not null, then it is the name of the named constant
   (plist () :type list)
   ;; xref information for this functional (only used for functions with an
   ;; XEP)
-  (xref () :type list))
+  (xref () :type list)
+  ;; True if this functional was created from an inline expansion
+  (inline-expanded nil :type boolean))
 (defprinter (functional :identity t)
   %source-name
   %debug-name
   (call-lexenv nil :type (or lexenv null))
   ;; list of embedded lambdas
   (children nil :type list)
-  (parent nil :type (or clambda null)))
+  (parent nil :type (or clambda null))
+  (allow-instrumenting *allow-instrumenting* :type boolean))
 (defprinter (clambda :conc-name lambda- :identity t)
   %source-name
   %debug-name