In reply to ABD_91:
macro a has 56,0,56,0,24,12,4,8,7
class socenv extends uvm_env;
///
pkgenv pkgenv;
virtual function void build_phase(uvm_phase phase);
pkgenv=pkgenv(`a)::type_id::create(“pkgenv”, this);
endfunction:build_phase
class pkgenv extends uvm_env;
///
agentenv agentenv;
virtual function void build_phase(uvm_phase phase);
agentenv=agentenv::type_id::create(“agentenv”, this);
endfunction:build_phase
class agentenv extends uvm_env;
///
testenv #(`a) testenv;
virtual function void build_phase(uvm_phase phase);
testenv=testenv::type_id::create(“testenv”, this);
endfunction:build_phase