Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 2010 19:31:58 +0200
From:      Roman Divacky <rdivacky@freebsd.org>
To:        Derek Tattersall <dlt@mebtel.net>
Cc:        Renato Botelho <rbgarga@gmail.com>, Dimitry Andric <dim@freebsd.org>, current@freebsd.org
Subject:   Re: Clang now builds world and kernel, on i386 and amd64
Message-ID:  <20100929173158.GA73653@freebsd.org>
In-Reply-To: <20100929155659.GA82433@oriental.arm.org>
References:  <4C99A53E.7060707@FreeBSD.org> <AANLkTimYj1VnVQBLROE94rqPYO7pQyHWfpjiYYZ2ORrX@mail.gmail.com> <AANLkTikm0FrJbOTiRPQhcqM30N-GyOYRBk_8jR-Gq9jF@mail.gmail.com> <20100929002843.GA5001@oriental.arm.org> <4CA2E00D.3080102@FreeBSD.org> <AANLkTik4k%2Bg8NGwRUp=7bvF2MiHhbBOHmA=Ree_-xRDT@mail.gmail.com> <4CA3244D.7030907@FreeBSD.org> <20100929155659.GA82433@oriental.arm.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Sep 29, 2010 at 11:56:59AM -0400, Derek Tattersall wrote:
> * Dimitry Andric <dim@freebsd.org> [100929 08:55]:
> > On 2010-09-29 13:23, Renato Botelho wrote:
> > > #!/usr/bin/perl
> > >
> > > use File::Temp;
> > >
> > > my ( $fh, $filename ) = File::Temp::tempfile();
> > > print "$filename\n";
> > 
> > For me it works perfectly, though I am using perl 5.10:
> > 
> > $ cat foo.pl
> > #!/usr/bin/perl
> > 
> > use File::Temp;
> > 
> > my ( $fh, $filename ) = File::Temp::tempfile();
> > print "$filename\n";
> > $ perl -v
> > 
> > This is perl, v5.10.1 (*) built for i386-freebsd-64int
> > 
> > Copyright 1987-2009, Larry Wall
> > 
> > Perl may be copied only under the terms of either the Artistic License or the
> > GNU General Public License, which may be found in the Perl 5 source kit.
> > 
> > Complete documentation for Perl, including FAQ lists, should be found on
> > this system using "man perl" or "perldoc perl".  If you have access to the
> > Internet, point your browser at http://www.perl.org/, the Perl Home Page.
> > 
> > $ perl foo.pl
> > /tmp/tv25CPnWhF
> > $ perl foo.pl
> > /tmp/L2UJQ5_JJs
> > $ perl foo.pl
> > /tmp/6ynQYvWIc1
> > $ perl foo.pl
> > /tmp/Tdpf7PKBMg
> > $ perl foo.pl
> > /tmp/76ir2i1ici
> > $ perl foo.pl
> > /tmp/LhfD0eZgd8
> > 
> > I'll try building perl 5.12 and try it again.
> > 
> > Btw, I assume you did *not* rebuild perl with clang, so your perl is
> > still compiled with gcc?
> > _______________________________________________
> > freebsd-current@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
> I built a test case using perl 5.12 and demonstrated that calling int(rand())
> in perl returns NAN, as does calling rand() by itself.  A "C" program
> that calls libc's rand() does return differing integers.  The perl
> documentation claims that perl's rand() calls "C"s rand() and srand() if
> necessary.  I think this effectively demonstrates that the problem lies
> with the perl function rand() and it's interface to libc's rand() as
> provided by clang.  
> 
> On a recent stable system, perl's mktemp works fine.  The only real
> difference is that libc on stable is built with gcc and libc on current
> is built with clang.

what does this show with clang libc?

perl -e 'print int(rand(60)) . " \n" foreach (1 .. 10)'

I guess it returns all 0, as the $CHAR[0] is 'A', can you test that?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100929173158.GA73653>