Extend a vl-reportcard-p with all of the warnings for a design, in terms of the original design element names.
(vl-design-origname-reportcard-aux x acc) → new-acc
Function:
(defun vl-design-origname-reportcard-aux (x acc) (declare (xargs :guard (and (vl-design-p x) (vl-reportcard-p acc)))) (let ((__function__ 'vl-design-origname-reportcard-aux)) (declare (ignorable __function__)) (b* (((vl-design x)) (acc (vl-modulelist-gather-origname-reportcard x.mods acc)) (acc (vl-udplist-gather-reportcard x.udps acc)) (acc (vl-interfacelist-gather-reportcard x.interfaces acc)) (acc (vl-programlist-gather-reportcard x.programs acc)) (acc (vl-classlist-gather-reportcard x.classes acc)) (acc (vl-packagelist-gather-reportcard x.packages acc)) (acc (vl-configlist-gather-reportcard x.configs acc)) (acc (vl-typedeflist-gather-reportcard x.typedefs acc)) (acc (vl-extend-reportcard-list :design x.warnings acc))) acc)))
Theorem:
(defthm vl-reportcard-p-of-vl-design-origname-reportcard-aux (b* ((new-acc (vl-design-origname-reportcard-aux x acc))) (vl-reportcard-p new-acc)) :rule-classes :rewrite)
Theorem:
(defthm vl-design-origname-reportcard-aux-of-vl-design-fix-x (equal (vl-design-origname-reportcard-aux (vl-design-fix x) acc) (vl-design-origname-reportcard-aux x acc)))
Theorem:
(defthm vl-design-origname-reportcard-aux-vl-design-equiv-congruence-on-x (implies (vl-design-equiv x x-equiv) (equal (vl-design-origname-reportcard-aux x acc) (vl-design-origname-reportcard-aux x-equiv acc))) :rule-classes :congruence)
Theorem:
(defthm vl-design-origname-reportcard-aux-of-vl-reportcard-fix-acc (equal (vl-design-origname-reportcard-aux x (vl-reportcard-fix acc)) (vl-design-origname-reportcard-aux x acc)))
Theorem:
(defthm vl-design-origname-reportcard-aux-vl-reportcard-equiv-congruence-on-acc (implies (vl-reportcard-equiv acc acc-equiv) (equal (vl-design-origname-reportcard-aux x acc) (vl-design-origname-reportcard-aux x acc-equiv))) :rule-classes :congruence)