On Sat, 2003-08-09 at 20:44, Serassio Guido wrote: > Hi Robert, > > There are some residual build errors on Windows: > > The store_dir_ufs.cc error is still here: > > Compiling... > store_dir_ufs.cc > c:\work\nt-3.0\src\fs\ufs\store_dir_ufs.cc(1019) : error C2664: > 'file_write' : cannot convert parameter 7 from 'void (void *)' to 'void > (__cdecl *)(void *)' > None of the functions with this name in scope match the target type > store_io_ufs.cc > > I have made some test/investigation: it seems like that the FreeObject<> > linkage is not compatibile with what MSVC expects here: it don't have the > expected __cdecl calling convention, and trying to force it in the protos.h > declaration changed nothing. > > FreeObject<> is used only here and in store_dir_coss.cc: it's possible to > change something in the coding logic to accomodate this ? Yes - copy the template to each file it's used, and make it a normal, static function there. > At link time I have got this: > > Linking... > ACLStringData.obj : error LNK2001: unresolved external symbol "int __cdecl > splaystrcmp(char * const &,char * const &)" (?splaystrcmp@@[EMAIL PROTECTED]) > ACLUserData.obj : error LNK2001: unresolved external symbol "int __cdecl > splaystrcmp(char * const &,char * const &)" (?splaystrcmp@@[EMAIL PROTECTED]) > ACLUserData.obj : error LNK2001: unresolved external symbol "int __cdecl > splaystrcasecmp(char * const &,char * const &)" (?splaystrcasecmp@@[EMAIL PROTECTED]) > Debug/squid.exe : fatal error LNK1120: 2 unresolved externals > Error executing link.exe. > > But splaystrcmp and splaystrcasecmp are defined. What is this ? Some BS with MSVC and templates. b****r. I've detemplatized these.
I'd wager that the cause is because we reference them but never call them - it may be that MSVC thus never instantiates them. I'm guessing it may be because we don't directly call them, only take their address. > Building nt branch on MSYS + MinGW I have got the following strange error: > > cc1plus.exe: warnings being treated as errors > digest/auth_digest.cc: In member function `virtual void > digest_request_h::authenticate(request_t*, RefCount<ConnStateData>, > http_hdr_type)': > digest/auth_digest.cc:715: warning: aggregate has a partly bracketed > initializer > digest/auth_digest.cc:715: warning: aggregate has a partly bracketed > initializer > make[3]: *** [digest/auth_digest.o] Error 1 Sounds like mingw have a 'funny' struct definition for in_addr. Perhaps a memset is best for now. Cheers, Rob -- GPG key available at: <http://members.aardvark.net.au/lifeless/keys.txt>.
signature.asc
Description: This is a digitally signed message part
