-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Coincidentally, I am in the process of working on a related aspect of symbol resolution.
The issue is likely to be the caching of native symbols that we do. We do not cache the registration information, just the address of the routine. And so the test is not repeated. We can fix this, but it will make things more complex. This is a good example of where using the new mechanism within namespaces to resolve the symbols when the package is loaded and making them into regular R objects that are passed to .Call/.C/... makes things more rational. In that case, the caching is done in R and type information is more directly available. Off hand, I don't see why this would behave differently on Windows and Unix, so I'd appreciate if you could let us know the specific call that raises the error on Windows and not on Unix. D. [EMAIL PROTECTED] wrote: > The R_registerRoutines C function allows the number of parameters to a > .Call function to be registered. For example, the tools package > function md5sum() calls "Rmd5", which has been registered to require > just one parameter. > > But if it is called with the wrong number of parameters, only the first > error gets caught: > > > library(tools) > > .Call("Rmd5",1,2,PACKAGE="tools") > Error: Incorrect number of arguments (2), expecting 1 for Rmd5 > > .Call("Rmd5",1,2,PACKAGE="tools") > Error: argument 'files' must be character > > This happens in Windows versions of R-patched and R-devel. Charlie > Geyer was bitten by this in his fuzzyRankTests package (version 0.3), > which fails check because of it on Windows, but not on Unix. I haven't > done any testing on Unix. > > I've traced into the do_dotcall function in src/main/dotcode.c, and I > see that on the second call the "symbol.symbol.call" member is NULL, so > no test is done, but I don't see why this is happening. The > resolveNativeRoutine function does some strange stuff. > > Duncan Murdoch > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel - -- Duncan Temple Lang [EMAIL PROTECTED] Department of Statistics work: (530) 752-4782 4210 Mathematical Sciences Building fax: (530) 752-7099 One Shields Ave. University of California at Davis Davis, CA 95616, USA -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (Darwin) iD8DBQFDsu8Q9p/Jzwa2QP4RAuqGAJ9oHP7lhmb7IN9c/3WoRL5qimCTSACfaNhr WFY6NLnh2dfDTOGcaStbgNo= =rCZg -----END PGP SIGNATURE----- ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel