From maechler at stat.math.ethz.ch  Fri May 29 15:22:35 2009
From: maechler at stat.math.ethz.ch (Martin Maechler)
Date: Fri, 29 May 2009 15:22:35 +0200
Subject: [Rd] as.numeric(levels(factor(x))) may be a decreasing sequence
In-Reply-To: <20090528073648.GA18207@cs.cas.cz>
References: <20090523074454.GA17112@cs.cas.cz>
	<18973.42970.826686.173830@cmath-5.math.ethz.ch>
	<20090528073648.GA18207@cs.cas.cz>
Message-ID: <18975.57755.161884.893418@lynne.math.ethz.ch>

>>>>> "PS" == Petr Savicky <savicky at cs.cas.cz>
>>>>>     on Thu, 28 May 2009 09:36:48 +0200 writes:

    PS> On Wed, May 27, 2009 at 10:51:38PM +0200, Martin Maechler wrote:
    >> I have very slightly  modified the changes (to get rid of -Wall
    >> warnings) and also exported the function as Rf_dropTrailing0(),
    >> and tested the result with 'make check-all' .

    PS> Thank you very much for considering the patch. -Wall indeed requires to add 
    PS> parentheses
    PS> warning: suggest parentheses around comparison in operand of &
    PS> warning: suggest parentheses around assignment used as truth value

    PS> If there are also other changes, i would like to ask you to make your modification
    PS> available, mainly due to a possible further discussion.

    PS> Let me also suggest a modification of my original proposal. It contains a cycle
    PS> while (*(replace++) = *(p++)) {
    PS> ;
    PS> }
    PS> If the number has no trailing zeros, but contains an exponent, this cycle
    PS> shifts the exponent by 0 positions, which means that it copies each of its
    PS> characters to itself. This may be eliminated as follows
    PS> if (replace != p) {
    PS>    while (*(replace++) = *(p++)) {
    PS>       ;
    PS>    }
    PS> }

yes, that's a simple improvement, thank you.
Martin



[Rd] as.numeric(levels(factor(x))) may be a decreasing sequence
Martin Maechler