Add a fatal warning if this is a problem module.
(vl-warn-problem-module x problems) → new-x
Function:
(defun vl-warn-problem-module (x problems) (declare (xargs :guard (and (vl-module-p x) (string-listp problems)))) (let ((__function__ 'vl-warn-problem-module)) (declare (ignorable __function__)) (b* (((unless (member-equal (vl-module->name x) problems)) x) (warnings (vl-module->warnings x)) (warnings (fatal :type :vl-problem-module :msg "~m0 was listed as a \"problem module\" by the VL user." :args (list (vl-module->name x))))) (change-vl-module x :warnings warnings))))
Theorem:
(defthm vl-module-p-of-vl-warn-problem-module (implies (force (vl-module-p x)) (b* ((new-x (vl-warn-problem-module x problems))) (vl-module-p new-x))) :rule-classes :rewrite)