A c++ puzzle for you gurus
walt
wa1ter at myrealbox.com
Wed Dec 13 07:48:38 PST 2006
In response to a post by Petr, I decided to take a stab at fixing
pkgsrc/wip/powerdns-recursor.
I was able to fix a few obvious #ifdefs, but I'm still getting this
c++ error (which doesn't happen in NetBSD):
c++ -O2 -I/usr/pkg/include -I/usr/include -Wall -O3 -I/usr/pkg/include
-I/usr/include -c -o syncres.o syncres.cc
In file included from mtasker.hh:107,
from syncres.hh:20,
from syncres.cc:20:
mtasker.cc: In member function `void MTasker<EventKey, EventVal>::yield()':
mtasker.cc:196: error: there are no arguments to `swapcontext' that depend
on a template parameter, so a declaration of `swapcontext' must be available
My bonehead compiler question is: how did we get from 'from syncres.cc' to
'mtasker.cc' with no intermediate steps?
Most of the time I can at least follow the chain of error messages back
far enough to locate the villain -- but not this time.
(BTW, I already tried changing the -O3 to -O2 and even -O, and nothing
changed.)
I'm really more interested in how a c++ expert would approach this bug
rather than just being given the fix.
Any takers?
More information about the Users
mailing list