[Click] Problem with "inline"

David Sesmero Sáez deivid_sesme at hotmail.com
Mon Feb 15 07:53:32 EST 2010


  Hi!

I have this structures in the .hh:

 public:
 .
 . 
 .

 struct VlanInfo {
        int port;
        int prio;
        inline VlanInfo(int _port,int _prio);
    };

    typedef HashMap<int,VlanInfo> Vlan;

    struct AddrInfo {
        Vlan vlans;
        Timestamp stamp;
        inline AddrInfo(Vlan _vlans,const Timestamp &_stamp);
    };

    typedef HashMap<EtherAddress, AddrInfo> FwTable;

    FwTable forward_t;


inline
VlanSwitch::VlanInfo::VlanInfo(int _port, int _prio)
    : port(_port),prio(_prio)
{
}

inline
VlanSwitch::AddrInfo::AddrInfo(Vlan _vlans,const Timestamp& _stamp)
    : vlans(_vlans),stamp(_stamp)
{
}

And when I go to compile, I have this errors:

../include/click/bighashmap.cc: In constructor ‘HashMap<K, V>::HashMap() [with K = EtherAddress, V = VlanSwitch::AddrInfo]’:
../elements/local/VlanSwitch.cc:33:   instantiated from here
../include/click/bighashmap.cc:46: error: no se encontró una función coincidente para la llamada a ‘VlanSwitch::AddrInfo::AddrInfo()’
../elements/local/VlanSwitch.hh:64: nota: los candidatos son: VlanSwitch::AddrInfo::AddrInfo(HashMap<int, VlanSwitch::VlanInfo>, const Timestamp&)
../elements/local/VlanSwitch.hh:41: nota:                     VlanSwitch::AddrInfo::AddrInfo(const VlanSwitch::AddrInfo&)
make[1]: *** [VlanSwitch.o] Error 1
make[1]: se sale del directorio `/usr/share/click/click-1.6.0/userlevel'
make: *** [install] Error 1

In the .cc, in line 33 I have this:

VlanSwitch::VlanSwitch()
{
    timeout=300;
    learning=true;
}

And when I run the .click I have segmentation fail error...

Anyone can help me?
 		 	   		  
_________________________________________________________________
Ibex 35, comparadores de hipotecas, Euribor, foros de bolsa. ¡Nuevo MSN Dinero!
http://dinero.es.msn.com/


More information about the click mailing list