data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh
1: b'%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:2: Unsupported: classes\nclass pss_test_base extends uvm_test;\n^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:2: syntax error, unexpected IDENTIFIER, expecting TYPE-IDENTIFIER\nclass pss_test_base extends uvm_test;\n                            ^~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:4: Define or directive not defined: \'`uvm_component_utils\'\n    `uvm_component_utils(pss_test_base)\n    ^~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:25: Unsupported: new constructor\n    extern function new(string name = "spi_test_base", uvm_component parent = null);\n                    ^~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:25: syntax error, unexpected IDENTIFIER, expecting \')\'\n    extern function new(string name = "spi_test_base", uvm_component parent = null);\n                                                                     ^~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:26: syntax error, unexpected IDENTIFIER, expecting \')\'\n    extern function void build_phase(uvm_phase phase);\n                                               ^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:27: syntax error, unexpected IDENTIFIER, expecting \')\'\n    extern virtual function void configure_apb_agent(apb_agent_config cfg, int index, \n                                                                      ^~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:28: syntax error, unexpected logic, expecting IDENTIFIER or \'=\' or do or final\n                    logic[31:0] start_address, logic[31:0] range);\n                    ^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:28: syntax error, unexpected logic, expecting IDENTIFIER or \'=\' or do or final\n                    logic[31:0] start_address, logic[31:0] range);\n                                               ^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:28: syntax error, unexpected \')\', expecting \',\' or \';\'\n                    logic[31:0] start_address, logic[31:0] range);\n                                                                ^\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:32: Unsupported: Hierarchical class references\nfunction pss_test_base::new(string name = "spi_test_base", uvm_component parent = null);\n                      ^~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:32: Unsupported: scoped class reference\nfunction pss_test_base::new(string name = "spi_test_base", uvm_component parent = null);\n                           ^\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:32: Unsupported: scoped new constructor\nfunction pss_test_base::new(string name = "spi_test_base", uvm_component parent = null);\n                        ^~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:32: syntax error, unexpected IDENTIFIER, expecting \')\'\nfunction pss_test_base::new(string name = "spi_test_base", uvm_component parent = null);\n                                                                         ^~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:36: Unsupported: Hierarchical class references\nfunction void pss_test_base::build_phase(uvm_phase phase);\n                           ^~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:36: Unsupported: scoped class reference\nfunction void pss_test_base::build_phase(uvm_phase phase);\n                             ^~~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:32: Unsupported: Out of class block function declaration\nfunction pss_test_base::new(string name = "spi_test_base", uvm_component parent = null);\n                        ^~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:36: syntax error, unexpected IDENTIFIER, expecting \')\'\nfunction void pss_test_base::build_phase(uvm_phase phase);\n                                                   ^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:54: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual apb_if)::get(this, "", "APB_vif", m_spi_apb_agent_cfg.APB))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:55: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:59: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual spi_if)::get(this, "", "SPI_vif", m_spi_agent_cfg.SPI))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:60: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:69: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual apb_if)::get(this, "", "APB_vif", m_gpio_apb_agent_cfg.APB))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:70: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:75: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPO_vif", m_GPO_agent_cfg.GPIO))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:76: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:81: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPOE_vif", m_GPOE_agent_cfg.GPIO))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:82: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface GPOE_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:87: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPI_vif", m_GPI_agent_cfg.GPIO))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:88: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface GPI_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:101: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual ahb_if)::get(this, "", "AHB_vif", m_ahb_agent_cfg.AHB))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:102: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface AHB_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:105: Unsupported: virtual data type\n    if (!uvm_config_db #(virtual icpit_if)::get(this, "", "ICPIT_vif", m_env_cfg.ICPIT))\n                         ^~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:106: Define or directive not defined: \'`uvm_fatal\'\n      `uvm_fatal("VIF CONFIG", "Cannot get() interface ICPIT_vif from uvm_config_db. Have you set() it?")\n      ^~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:113: Unsupported: Hierarchical class references\nfunction void pss_test_base::configure_apb_agent(apb_agent_config cfg, int index, logic[31:0] start_address, logic[31:0] range);\n                           ^~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:113: Unsupported: scoped class reference\nfunction void pss_test_base::configure_apb_agent(apb_agent_config cfg, int index, logic[31:0] start_address, logic[31:0] range);\n                             ^~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:36: Unsupported: Out of class block function declaration\nfunction void pss_test_base::build_phase(uvm_phase phase);\n                             ^~~~~~~~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:113: syntax error, unexpected IDENTIFIER, expecting \')\'\nfunction void pss_test_base::configure_apb_agent(apb_agent_config cfg, int index, logic[31:0] start_address, logic[31:0] range);\n                                                                  ^~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:113: syntax error, unexpected logic, expecting IDENTIFIER or \'=\' or do or final\nfunction void pss_test_base::configure_apb_agent(apb_agent_config cfg, int index, logic[31:0] start_address, logic[31:0] range);\n                                                                                  ^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:113: syntax error, unexpected logic, expecting IDENTIFIER or \'=\' or do or final\nfunction void pss_test_base::configure_apb_agent(apb_agent_config cfg, int index, logic[31:0] start_address, logic[31:0] range);\n                                                                                                             ^~~~~\n%Error: data/full_repos/permissive/506636840/sub_system_tbs/pss_tb/test/pss_test_base.svh:113: syntax error, unexpected \')\', expecting \',\' or \';\'\nfunction void pss_test_base::configure_apb_agent(apb_agent_config cfg, int index, logic[31:0] start_address, logic[31:0] range);\n                                                                                                                              ^\n%Error: Exiting due to 41 error(s)\n        ... See the manual and https://verilator.org for more assistance.\n'
function void pss_test_base::build_phase(uvm_phase phase);
    m_env_cfg = pss_env_config::type_id::create("m_env_cfg");

	pss_rgm = pss_reg_block::type_id::create("pss_rgm", this);
	pss_rgm.configure(null, "");
	pss_rgm.build();
	pss_rgm.lock_model();
	pss_rgm.reset();
	apb_adapter = new("apb_adapter");
	ahb_adapter = new("ahb_adapter");
	
	m_env_cfg.pss_rgm = pss_rgm;

    m_spi_env_cfg = spi_env_config::type_id::create("m_spi_env_cfg");

    m_spi_env_cfg.has_apb_agent = 1;
    m_spi_apb_agent_cfg = apb_agent_config::type_id::create("m_spi_apb_agent_cfg");
    configure_apb_agent(m_spi_apb_agent_cfg, 0, 32'h0, 32'h18);
    if (!uvm_config_db #(virtual apb_if)::get(this, "", "APB_vif", m_spi_apb_agent_cfg.APB))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_spi_env_cfg.m_apb_agent_cfg = m_spi_apb_agent_cfg;

    m_spi_agent_cfg = spi_agent_config::type_id::create("m_spi_agent_cfg");
    if (!uvm_config_db #(virtual spi_if)::get(this, "", "SPI_vif", m_spi_agent_cfg.SPI))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_spi_env_cfg.m_spi_agent_cfg = m_spi_agent_cfg;
    m_env_cfg.m_spi_env_cfg = m_spi_env_cfg;
    uvm_config_db #(spi_env_config)::set(this, "*", "spi_env_config", m_spi_env_cfg);

    m_gpio_env_cfg = gpio_env_config::type_id::create("m_gpio_env_cfg");
    m_gpio_env_cfg.has_apb_agent = 1;
    m_gpio_apb_agent_cfg = apb_agent_config::type_id::create("m_gpio_apb_agent_cfg");
    configure_apb_agent(m_gpio_apb_agent_cfg, 1, 32'h100, 32'h124);
    if (!uvm_config_db #(virtual apb_if)::get(this, "", "APB_vif", m_gpio_apb_agent_cfg.APB))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_gpio_env_cfg.m_apb_agent_cfg = m_gpio_apb_agent_cfg;
    m_gpio_env_cfg.has_functional_coverage = 1;

    m_GPO_agent_cfg = gpio_agent_config::type_id::create("m_GPO_agent_cfg");
    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPO_vif", m_GPO_agent_cfg.GPIO))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_GPO_agent_cfg.active = UVM_PASSIVE;
    m_gpio_env_cfg.m_GPO_agent_cfg = m_GPO_agent_cfg;

    m_GPOE_agent_cfg = gpio_agent_config::type_id::create("m_GPOE_agent_cfg");
    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPOE_vif", m_GPOE_agent_cfg.GPIO))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface GPOE_vif from uvm_config_db. Have you set() it?")
    m_GPOE_agent_cfg.active = UVM_PASSIVE;
    m_gpio_env_cfg.m_GPOE_agent_cfg = m_GPOE_agent_cfg;

    m_GPI_agent_cfg = gpio_agent_config::type_id::create("m_GPI_agent_cfg");
    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPI_vif", m_GPI_agent_cfg.GPIO))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface GPI_vif from uvm_config_db. Have you set() it?")
    m_gpio_env_cfg.m_GPI_agent_cfg = m_GPI_agent_cfg;

    m_gpio_env_cfg.has_AUX_agent = 0;
    m_gpio_env_cfg.has_functional_coverage = 1;
    m_gpio_env_cfg.has_virtual_sequencer = 0;
    m_gpio_env_cfg.has_reg_scoreboard = 0;
    m_gpio_env_cfg.has_out_scoreboard = 1;
    m_gpio_env_cfg.has_in_scoreboard = 1;
    m_env_cfg.m_gpio_env_cfg = m_gpio_env_cfg;
    uvm_config_db #(gpio_env_config)::set(this, "*", "gpio_env_config", m_gpio_env_cfg);

    m_ahb_agent_cfg = ahb_agent_config::type_id::create("m_ahb_agent_cfg");
    if (!uvm_config_db #(virtual ahb_if)::get(this, "", "AHB_vif", m_ahb_agent_cfg.AHB))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface AHB_vif from uvm_config_db. Have you set() it?")
    m_env_cfg.m_ahb_agent_cfg = m_ahb_agent_cfg;

    if (!uvm_config_db #(virtual icpit_if)::get(this, "", "ICPIT_vif", m_env_cfg.ICPIT))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface ICPIT_vif from uvm_config_db. Have you set() it?")
    uvm_config_db #(pss_env_config)::set(this, "*", "pss_env_config", m_env_cfg);
    m_env = pss_env::type_id::create("m_env", this);

    
endfunction
function void pss_test_base::build_phase(uvm_phase phase);

    m_env_cfg = pss_env_config::type_id::create("m_env_cfg");

	pss_rgm = pss_reg_block::type_id::create("pss_rgm", this);
	pss_rgm.configure(null, "");
	pss_rgm.build();
	pss_rgm.lock_model();
	pss_rgm.reset();
	apb_adapter = new("apb_adapter");
	ahb_adapter = new("ahb_adapter");
	
	m_env_cfg.pss_rgm = pss_rgm;

    m_spi_env_cfg = spi_env_config::type_id::create("m_spi_env_cfg");

    m_spi_env_cfg.has_apb_agent = 1;
    m_spi_apb_agent_cfg = apb_agent_config::type_id::create("m_spi_apb_agent_cfg");
    configure_apb_agent(m_spi_apb_agent_cfg, 0, 32'h0, 32'h18);
    if (!uvm_config_db #(virtual apb_if)::get(this, "", "APB_vif", m_spi_apb_agent_cfg.APB))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_spi_env_cfg.m_apb_agent_cfg = m_spi_apb_agent_cfg;

    m_spi_agent_cfg = spi_agent_config::type_id::create("m_spi_agent_cfg");
    if (!uvm_config_db #(virtual spi_if)::get(this, "", "SPI_vif", m_spi_agent_cfg.SPI))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_spi_env_cfg.m_spi_agent_cfg = m_spi_agent_cfg;
    m_env_cfg.m_spi_env_cfg = m_spi_env_cfg;
    uvm_config_db #(spi_env_config)::set(this, "*", "spi_env_config", m_spi_env_cfg);

    m_gpio_env_cfg = gpio_env_config::type_id::create("m_gpio_env_cfg");
    m_gpio_env_cfg.has_apb_agent = 1;
    m_gpio_apb_agent_cfg = apb_agent_config::type_id::create("m_gpio_apb_agent_cfg");
    configure_apb_agent(m_gpio_apb_agent_cfg, 1, 32'h100, 32'h124);
    if (!uvm_config_db #(virtual apb_if)::get(this, "", "APB_vif", m_gpio_apb_agent_cfg.APB))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_gpio_env_cfg.m_apb_agent_cfg = m_gpio_apb_agent_cfg;
    m_gpio_env_cfg.has_functional_coverage = 1;

    m_GPO_agent_cfg = gpio_agent_config::type_id::create("m_GPO_agent_cfg");
    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPO_vif", m_GPO_agent_cfg.GPIO))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface APB_vif from uvm_config_db. Have you set() it?")
    m_GPO_agent_cfg.active = UVM_PASSIVE;
    m_gpio_env_cfg.m_GPO_agent_cfg = m_GPO_agent_cfg;

    m_GPOE_agent_cfg = gpio_agent_config::type_id::create("m_GPOE_agent_cfg");
    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPOE_vif", m_GPOE_agent_cfg.GPIO))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface GPOE_vif from uvm_config_db. Have you set() it?")
    m_GPOE_agent_cfg.active = UVM_PASSIVE;
    m_gpio_env_cfg.m_GPOE_agent_cfg = m_GPOE_agent_cfg;

    m_GPI_agent_cfg = gpio_agent_config::type_id::create("m_GPI_agent_cfg");
    if (!uvm_config_db #(virtual gpio_if)::get(this, "", "GPI_vif", m_GPI_agent_cfg.GPIO))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface GPI_vif from uvm_config_db. Have you set() it?")
    m_gpio_env_cfg.m_GPI_agent_cfg = m_GPI_agent_cfg;

    m_gpio_env_cfg.has_AUX_agent = 0;
    m_gpio_env_cfg.has_functional_coverage = 1;
    m_gpio_env_cfg.has_virtual_sequencer = 0;
    m_gpio_env_cfg.has_reg_scoreboard = 0;
    m_gpio_env_cfg.has_out_scoreboard = 1;
    m_gpio_env_cfg.has_in_scoreboard = 1;
    m_env_cfg.m_gpio_env_cfg = m_gpio_env_cfg;
    uvm_config_db #(gpio_env_config)::set(this, "*", "gpio_env_config", m_gpio_env_cfg);

    m_ahb_agent_cfg = ahb_agent_config::type_id::create("m_ahb_agent_cfg");
    if (!uvm_config_db #(virtual ahb_if)::get(this, "", "AHB_vif", m_ahb_agent_cfg.AHB))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface AHB_vif from uvm_config_db. Have you set() it?")
    m_env_cfg.m_ahb_agent_cfg = m_ahb_agent_cfg;

    if (!uvm_config_db #(virtual icpit_if)::get(this, "", "ICPIT_vif", m_env_cfg.ICPIT))
      `uvm_fatal("VIF CONFIG", "Cannot get() interface ICPIT_vif from uvm_config_db. Have you set() it?")
    uvm_config_db #(pss_env_config)::set(this, "*", "pss_env_config", m_env_cfg);
    m_env = pss_env::type_id::create("m_env", this);

    
endfunction