data/full_repos/permissive/10200931/verilog/miniTB_logger.sv
 line:25: before: "class"
1: b'%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:25: Unsupported: classes\nclass miniTB_logger;\n^~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:39: Unsupported: \'local\' class item\n  local int unsigned error_count = 0;\n  ^~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:46: Unsupported: \'local\' class item\n  local results_t success;\n  ^~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:46: syntax error, unexpected IDENTIFIER, expecting TYPE-IDENTIFIER\n  local results_t success;\n        ^~~~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:56: Unsupported: new constructor\n  extern function new(string name);\n                  ^~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:56: Unsupported: extern class\n  extern function new(string name);\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:58: Unsupported: virtual class member qualifier\n  extern virtual task setup();\n         ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:58: Unsupported: extern class method prototype\n  extern virtual task setup();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:60: Unsupported: virtual class member qualifier\n  extern virtual protected task run_test();\n         ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:60: Unsupported: extern class method prototype\n  extern virtual protected task run_test();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:62: Unsupported: virtual class member qualifier\n  extern virtual protected task miniTB_tests();\n         ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:62: Unsupported: extern class method prototype\n  extern virtual protected task miniTB_tests();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:64: Unsupported: virtual class member qualifier\n  extern virtual task teardown();\n         ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:64: Unsupported: extern class method prototype\n  extern virtual task teardown();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:66: Unsupported: virtual class member qualifier\n  extern virtual function void update_exit_status();\n         ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:66: Unsupported: extern class method prototype\n  extern virtual function void update_exit_status();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:68: Unsupported: extern class method prototype\n  extern task run();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:69: Unsupported: extern class method prototype\n  extern function void report();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:71: Unsupported: \'local\' class item\n  extern local function void fail(string s);\n         ^~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:71: Unsupported: extern class method prototype\n  extern local function void fail(string s);\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:73: Unsupported: extern class method prototype\n  extern task wait_for_error();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:74: Unsupported: extern class method prototype\n  extern function integer get_error_count();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:75: Unsupported: extern class method prototype\n  extern task give_up();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:77: Unsupported: extern class method prototype\n  extern function bit fail_if(bit b, string s, string f, int l);\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:78: Unsupported: extern class method prototype\n  extern function bit fail_unless(bit b, string s, string f, int l);\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:80: Unsupported: extern class method prototype\n  extern function string    get_name();\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:81: syntax error, unexpected IDENTIFIER, expecting \';\'\n  extern function results_t get_results();\n                            ^~~~~~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:94: Unsupported: Hierarchical class references\nfunction miniTB_logger::new(string name);\n                      ^~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:94: Unsupported: scoped class reference\nfunction miniTB_logger::new(string name);\n                           ^\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:94: Unsupported: scoped new constructor\nfunction miniTB_logger::new(string name);\n                        ^~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:95: Unsupported: this\n  this.name = name;\n  ^~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:106: Unsupported: Hierarchical class references\nfunction void miniTB_logger::fail(string s);\n                           ^~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:106: Unsupported: scoped class reference\nfunction void miniTB_logger::fail(string s);\n                             ^~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:94: Unsupported: Out of class block function declaration\nfunction miniTB_logger::new(string name);\n                        ^~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:108: Define or directive not defined: \'`ERROR\'\n  `ERROR($psprintf("%s: FAIL", s));\n  ^~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:108: Unsupported or unknown PLI call: $psprintf\n  `ERROR($psprintf("%s: FAIL", s));\n         ^~~~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:108: syntax error, unexpected \';\'\n  `ERROR($psprintf("%s: FAIL", s));\n                                  ^\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:117: Unsupported: Hierarchical class references\ntask miniTB_logger::wait_for_error();\n                  ^~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:117: Unsupported: scoped class reference\ntask miniTB_logger::wait_for_error();\n                    ^~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:106: Unsupported: Out of class block function declaration\nfunction void miniTB_logger::fail(string s);\n         ^~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:118: syntax error, unexpected \'@\'\n  @(error_count);\n  ^\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:126: Unsupported: Hierarchical class references\nfunction integer miniTB_logger::get_error_count();\n                              ^~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:126: Unsupported: scoped class reference\nfunction integer miniTB_logger::get_error_count();\n                                ^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:117: Unsupported: Out of class block function declaration\ntask miniTB_logger::wait_for_error();\n                                  ^\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:135: Unsupported: Hierarchical class references\ntask miniTB_logger::give_up();\n                  ^~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:135: Unsupported: scoped class reference\ntask miniTB_logger::give_up();\n                    ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:126: Unsupported: Out of class block function declaration\nfunction integer miniTB_logger::get_error_count();\n         ^~~~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:136: Unsupported: event data types\n  event never;\n  ^~~~~\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:137: syntax error, unexpected \'@\'\n  @(never);\n  ^\n%Error: data/full_repos/permissive/10200931/verilog/miniTB_logger.sv:152: Unsupported: Hierarchical class references\nfunction bit miniTB_logger::fail_if(bit b, string s, string f, int l);\n                          ^~\n%Error: Exiting due to too many errors encountered; --error-limit=50\n        ... See the manual and https://verilator.org for more assistance.\n'
function bit miniTB_logger::fail_unless(bit b, string s, string f, int l);
  if (!b) begin
    fail($psprintf("fail_unless: %s (at %s line:%0d)", s, f, l));
    return 1;
  end
  else begin
    return 0;
  end
endfunction
function bit miniTB_logger::fail_unless(bit b, string s, string f, int l);

  if (!b) begin
    fail($psprintf("fail_unless: %s (at %s line:%0d)", s, f, l));
    return 1;
  end
  else begin
    return 0;
  end
endfunction