Systemverilog宏不需要';' 在一条线的尽头

Nad*_*dav 2 system-verilog uvm

SystemVerilog中,不需要;在行的末尾添加' ',例如:
`uvm_do(pkt)
我想知道编译器如何处理这个问题,但是如果没有' ;' ,则无法处理常规行.

谢谢,
纳达夫.

too*_*lic 5

SystemVerilog始终在语句结尾处需要分号.

但是,您需要查看UVM宏扩展的代码.大多数宏扩展为代码如下:

`define uvm_whatever \
    begin \
       some_code(); \
    end
Run Code Online (Sandbox Code Playgroud)

如果您手动输入开始/结束代码,则不需要分号end.因此,在宏调用结束时不需要分号.

以下是UVM文档的引用:

宏表示文本替换,而不是语句,因此它们不应以分号结尾.