• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Community
    • Proof-automation
    • ACL2
    • Macro-libraries
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
        • Warnings
        • Primitives
        • Use-set
        • Syntax
        • Getting-started
        • Utilities
        • Loader
        • Transforms
        • Lint
        • Mlib
        • Server
        • Kit
          • Vl-model
          • Vl-json
          • Vl-gather
          • Vl-server
          • Vl-pp
            • Vl-pp-opts-p
              • Parse-vl-pp-opts
              • Vl-pp-opts
              • Make-vl-pp-opts
              • Change-vl-pp-opts
                • Honsed-vl-pp-opts
                • Make-honsed-vl-pp-opts
                • *vl-pp-opts-usage*
                • Vl-pp-opts->strict
                • Vl-pp-opts->start-files
                • Vl-pp-opts->readme
                • Vl-pp-opts->output
                • Vl-pp-opts->outdefs
                • Vl-pp-opts->mem
                • Vl-pp-opts->include-dirs
                • Vl-pp-opts->help
                • Vl-pp-opts->edition
                • Vl-pp-opts->defines
            • Vl-lint
            • Vl-main
            • Vl-toolkit-other-command
            • Vl-help
          • Printer
          • Esim-vl
          • Well-formedness
        • Sv
        • Fgl
        • Vwsim
        • Vl
        • X86isa
        • Svl
        • Rtl
      • Software-verification
      • Math
      • Testing-utilities
    • Vl-pp-opts-p

    Change-vl-pp-opts

    A copying macro that lets you create new vl-pp-opts-p structures, based on existing structures.

    Syntax:

    (change-vl-pp-opts x 
                       [:help <help>] 
                       [:readme <readme>] 
                       [:output <output>] 
                       [:outdefs <outdefs>] 
                       [:start-files <start-files>] 
                       [:include-dirs <include-dirs>] 
                       [:defines <defines>] 
                       [:edition <edition>] 
                       [:strict <strict>] 
                       [:mem <mem>]) 
    

    This is a sometimes useful alternative to make-vl-pp-opts. It constructs a new vl-pp-opts-p structure that is a copy of x, except that you can explicitly change some particular fields. Any fields you don't mention just keep their values from x.

    Definition

    This is an ordinary change- macro introduced by defaggregate.

    Macro: change-vl-pp-opts

    (defmacro change-vl-pp-opts (x &rest args)
     (std::change-aggregate 'vl-pp-opts
                            x args
                            '((:help . vl-pp-opts->help)
                              (:readme . vl-pp-opts->readme)
                              (:output . vl-pp-opts->output)
                              (:outdefs . vl-pp-opts->outdefs)
                              (:start-files . vl-pp-opts->start-files)
                              (:include-dirs . vl-pp-opts->include-dirs)
                              (:defines . vl-pp-opts->defines)
                              (:edition . vl-pp-opts->edition)
                              (:strict . vl-pp-opts->strict)
                              (:mem . vl-pp-opts->mem))
                            'change-vl-pp-opts
                            'nil))