From ripley at stats.ox.ac.uk  Tue Mar 28 10:03:48 2006
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Tue, 28 Mar 2006 09:03:48 +0100 (BST)
Subject: [Rd] R 2.3.0 (alpha) on FreeBSD 6.1 fails make check-all
In-Reply-To: <20060328075537.GD53476@ms.unimelb.edu.au>
References: <20060328075537.GD53476@ms.unimelb.edu.au>
Message-ID: <Pine.LNX.4.64.0603280846340.25281@gannet.stats.ox.ac.uk>

Thanks for checking.

Please look in d-p-q-r-tests.Rout.fail and see what immediately preceeds 
the line

[1] "Mean scaled  difference: 0.08333333"

Some experimentation suggests it is

> All.eq(Rhyper,	  qhyper   (Phyper, m = 40, n = 30, k = 20))

If so, we have

Rhyper <- scan()
16 11 11 15 11 13 13 12 13 10 10  7 11 14 13  9 14 13 13 11

Phyper	  <- phyper   (Rhyper, m = 40, n = 30, k = 20)

and those have been checked.  So the error would appear to be in

qhyper(Phyper, m = 40, n = 30, k = 20)

and indeed a mean scaled difference of 1/12 is plausible, since the mean 
of Rhyper is 12. So I deduce that your platform has a problem in qhyper, 
but please cross-check.

If so, this is strange as the only recent change to qhyper.c (or things I 
can see it uses such as lfastchoose) is cosmetic.

Can you confirm the diagnosis is correct so far?


On Tue, 28 Mar 2006, Andrew Robinson wrote:

> Hi Developers,
>
> The alpha, compiles successfully, but it is failing make check-all (on
> two seperate machines, both FreeBSD 6.1).
>
> Here is the version string:
>
> platform       i386-unknown-freebsd6.1
> arch           i386
> os             freebsd6.1
> system         i386, freebsd6.1
> status         alpha
> major          2
> minor          3.0
> year           2006
> month          03
> day            27
> svn rev        37584
> language       R
> version.string Version 2.3.0 alpha (2006-03-27 r37584)
>
>
>
> Here is the error message from make check-all
>
> comparing 'd-p-q-r-tests.Rout' to './d-p-q-r-tests.Rout.save'
> ...706c706
> < [1] "Mean scaled  difference: 0.08333333"
> ---
>> [1] TRUE
> gmake[3]: *** [d-p-q-r-tests.Rout] Error 1
> gmake[3]: Leaving directory `/usr/local/beta/R-alpha/tests'
> gmake[2]: *** [test-Specific] Error 2
> gmake[2]: Leaving directory `/usr/local/beta/R-alpha/tests'
> gmake[1]: *** [test-all-basics] Error 1
> gmake[1]: Leaving directory `/usr/local/beta/R-alpha/tests'
> gmake: *** [check-all] Error 2
>
>
>
>
> I have checked d-p-q-r-tests.Rout.fail for any obvious problems - I
> found some warnings, viz.
>
>
>
>> pgamma(1,Inf,scale=Inf) == 0
> [1] TRUE
>> ## Also pgamma(Inf,Inf) == 1 for which NaN was slightly more
> appropriate
>> all(is.nan(c(pgamma(Inf,  1,scale=Inf),
> +              pgamma(Inf,Inf,scale=Inf))))
> [1] TRUE
> Warning messages:
> 1: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p)
> 2: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p)
>
>
>
>
>> x0 <- -2 * 10^-c(22,10,7,5)
>> stopifnot(pbinom(x0, size = 3, prob = 0.1) == 0,
> +           dbinom(x0, 3, 0.1) == 0) # d*() warns about non-integer
> Warning messages:
> 1: non-integer x = -0.000000
> 2: non-integer x = -0.000020
>> ## very small negatives were rounded to 0 in R 2.2.1 and earlier
>>
>
>
> I hope that this is helpful.  Thanks are due to Peter Dalgaard for
> guidance.  So, thanks Peter :).
>
> Cheers
>
> Andrew
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



[Rd] R 2.3.0 (alpha) on FreeBSD 6.1 fails make check-all
Prof Brian Ripley