From bates at wisc.edu  Thu Jun  2 19:27:49 2005
From: bates at wisc.edu (bates@wisc.edu)
Date: Thu Jun  2 19:27:57 2005
Subject: [Rd] dotcode typo? (PR#7917)
Message-ID: <20050602172749.C5BED871A@slim.kubism.ku.dk>

murdoch@stats.uwo.ca wrote:
> 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

That occurs in code that I recently added so I better check that.


[Rd] dotcode typo? (PR#7917)
bates@wisc.edu