I can't seem to get stdnet to compile with gcc.
stdnet .04, gcc version 2.95.2 19991024 (release) and FreeBSD 4.0/Linux
2.0.38
It works on Linux/egcs though.
--------------------------
g++ -g -I./inc -D_REENTRANT -D__NAMESPACE_SUPPORT__ -Wall -D__POSIX__
-fPIC -O -c ./src/fd-event-dispatcher.cc
In file included from inc/stdnet/io-event-dispatcher:151,
from ./src/fd-event-dispatcher.cc:65:
inc/stdnet/io: In method
`stdnet::net_io<iokey_t,pktaddr_t,protnum_t>::net_io(unsigned int =
(stdnet::CIDC_NET + stdnet::CIDR_BASE))':
inc/stdnet/io:411: class `stdnet::net_io<iokey_t,pktaddr_t,protnum_t>' does
not have any field named `io'
inc/stdnet/io: At top level:
inc/stdnet/io:558: syntax error before `&'
inc/stdnet/io: In method
`stdnet::named_io<io_key_t,io_where_t,io_what_t>::named_io(unsigned int =
(stdnet::CIDC_NAMED + stdnet::CIDR_BASE))':
inc/stdnet/io:634: class `stdnet::named_io<io_key_t,io_where_t,io_what_t>'
does not have any field named `io'
In file included from ./src/fd-event-dispatcher.cc:66:
inc/stdnet/fd-event-dispatcher: At top level:
inc/stdnet/fd-event-dispatcher:87: using `typename' outside of template
./src/fd-event-dispatcher.cc: In method
`stdnet::fd_event_dispatcher::fd_event_dispatcher()':
./src/fd-event-dispatcher.cc:83: class `stdnet::fd_event_dispatcher' does
not have any field named `event_dispatcher'
*** Error code 1
Looks like calls to io's constructor from net_io needs explicit template parameters like:
io<io_key_t,io_addr_t,portnum_t>::io(...) etc.