AVM in_order_comparator
in_order_comparator周りでエラーが起きている。クックブックを見てみると
順番に入ってきたデータを比較するクラスらしい。
AVM Encyclopedia ってSystemVerilogの説明なのが気になった。
こんなソースにたいして、
#include "systemc.h"
#include "in_order_comparator.h"
int sc_main(int argc, char *argv[])
{
in_order_comparator< sc_int<8> > c("comp");
return 0;
}
こんなエラーが出る。
/home/natu/systemc/TLM-2005-04-08/tlm/tlm_event_finder/tlm_nonblocking_port.h: In member function `sc_core::sc_event_finder& tlm::tlm_nonblocking_get_port
/home/natu/study/AVM/mentor/avm30/libraries/systemc/avu/in_order_comparator.h:75: instantiated from `_in_order_comparator
/home/natu/study/AVM/mentor/avm30/libraries/systemc/avu/in_order_comparator.h:159: instantiated from `in_order_comparator
main.cpp:8: instantiated from here
/home/natu/systemc/TLM-2005-04-08/tlm/tlm_event_finder/tlm_nonblocking_port.h:41: error: cannot allocate an object of type `tlm::tlm_event_finder_t
/home/natu/systemc/TLM-2005-04-08/tlm/tlm_event_finder/tlm_nonblocking_port.h:41: error: because the following virtual functions are abstract:
/home/natu/systemc/systemc-2.2.0/include/sysc/communication/sc_event_finder.h:96: error: virtual const sc_core::sc_event& sc_core::sc_event_finder::find_event(sc_core::sc_interface*) const
*** Error code 1 (continuing)
`a.out' not remade because of errors.
sc_event_finder.h で宣言されている純粋仮想関数が無いですよってエラーだよね。
virtual const sc_event& find_event( sc_interface* if_p = 0 ) const = 0;
そのエラーを起こしているtlm_nonblocking_port.h:41がこれ。
return *new tlm_event_finder_t< get_if_type , T >
(*this, &get_if_type::ok_to_get );
ああ、それで、こういう表現になるのか。
cannot allocate an object of type `tlm::tlm_event_finder_t
The comments to this entry are closed.


Comments