Re: [Rd] dotcode typo? (PR#7917)

From: <murdoch_at_stats.uwo.ca>
Date: Thu 02 Jun 2005 - 17:16:25 GMT


Duncan Murdoch wrote:

> Huntsinger, Reid wrote:
> 

>>Sorry, I was looking at 2.0.1 when I meant to be looking at 2.1.0. The line
>>numbers for the latter are 161-179 and line 164 is the one with what I think
>>is a typo.
>>
>>Reid Huntsinger
>>
>>-----Original Message-----
>>From: r-devel-bounces@stat.math.ethz.ch
>>[mailto:r-devel-bounces@stat.math.ethz.ch] On Behalf Of Huntsinger, Reid
>>Sent: Thursday, June 02, 2005 12:33 PM
>>To: r-devel@stat.math.ethz.ch
>>Subject: [Rd] dotcode typo?
>>
>>
>>I ran across the following in the R-2.0.1 source, src/main/dotcode.c, in the
>>function resolveNativeRoutine(), lines 146-163. Line 152 looks like a typo:
>>here are lines 149-155
>>
>> if(!*fun) {
>> if(dll.type != FILENAME) {
>> *fun = R_FindNativeSymbolFromDLL(buf, &dll, symbol);
>> if(!fun) {
>> errorcall(call, "cannot resolve native routine");
>> }
>> }
>>
>>and I think the "if(!fun)" should be "if(!*fun)".
> 
> 
> I think you're right about the typo.
> 
> In the current code, !fun is known to be false, so the "cannot resolve 
> native routine" error message is not even compiled in.  Putting in !*fun 
> means that
> 
> .C("foo")
> 
> produces "cannot resolve native routine", rather than "function name not 
> in load table" from the test a few lines down.
> 
> I'll commit this change after testing, but I hope Duncan TL has time to 
> look at it and make sure the logic is okay.

Whoops, spoke too soon. This definitely breaks the logic, so I won't commit. With this change the check of demo(lm.glm) in package utils fails with this error message:

 > dead <- cbind(x, n - x)

 > summary(glm(dead ~ dose, family = binomial(link = logit))) Error in .Call("logit_link", mu) : cannot resolve native routine Execution halted

I'm cc'ing this to R-bugs so we don't forget it, but I'm not going to be able to fix it down myself.

Duncan Murdoch



R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Fri Jun 03 03:20:02 2005

This archive was generated by hypermail 2.1.8 : Mon 20 Feb 2006 - 03:21:06 GMT