| /* | |
| :name: partial_implementation | |
| :description: virtual classes can implement their interfaces partially | |
| :should_fail: 0 | |
| :tags: 8.26.7 | |
| */ | |
| module class_tb (); | |
| interface class ihello; | |
| pure virtual function void hello(); | |
| pure virtual function void world(); | |
| endclass | |
| virtual class vhello implements ihello; | |
| virtual function void hello(); | |
| $display("hello"); | |
| endfunction | |
| pure virtual function void world(); | |
| endclass | |
| class helloworld extends vhello; | |
| virtual function void world(); | |
| $display("world"); | |
| endfunction | |
| endclass | |
| helloworld obj; | |
| initial begin | |
| obj = new; | |
| obj.hello(); | |
| obj.world(); | |
| end | |
| endmodule |