systemc: Explicitly keep the sc_port bind alongside sc_in's version.
The sc_in bind function was hiding the one from sc_port by changing the const-ness of its parameter. This change explicitly exposes the underlying sc_port version, and keeps it alongside the new sc_in version. This seems mildly dangerous and undesirable because now there are two very similar functions which would both need to be overridden in order to get new behavior, but I don't think it's any more dangerous and undesirable than as (perhaps unintentionally) specified in the standard. Change-Id: Ib42a1f8e70bc97abeeeb8d614e71c4019b3a2323 Reviewed-on: https://gem5-review.googlesource.com/c/13880 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
@@ -225,6 +225,8 @@ class sc_in<bool> : public sc_port<sc_signal_in_if<bool>, 1>
|
||||
_negFinder(*this, &sc_signal_in_if<bool>::negedge_event)
|
||||
{}
|
||||
|
||||
using sc_port<sc_signal_in_if<bool>, 1>::bind;
|
||||
|
||||
virtual void
|
||||
bind(const sc_signal_in_if<bool> &i)
|
||||
{
|
||||
@@ -390,6 +392,8 @@ class sc_in<sc_dt::sc_logic> :
|
||||
_negFinder(*this, &sc_signal_in_if<sc_dt::sc_logic>::negedge_event)
|
||||
{}
|
||||
|
||||
using sc_port<sc_signal_in_if<sc_dt::sc_logic>, 1>::bind;
|
||||
|
||||
virtual void
|
||||
bind(const sc_signal_in_if<sc_dt::sc_logic> &i)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user