In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/1e09c024f72e851e813726b3d31f745ce580b610?hp=1eb538361b7dacd6bfb54d58fe1bee46f40a9479>
- Log ----------------------------------------------------------------- commit 1e09c024f72e851e813726b3d31f745ce580b610 Author: Karl Williamson <[email protected]> Date: Mon Jul 15 09:55:40 2013 -0600 ParseXS: generate deterministically ordered output The generated XS file output was varying between builds because of hash randomisation. This sorts the output to make it the same for the same inputs. This facilitates eyeballing diffs of two workspaces. ----------------------------------------------------------------------- Summary of changes: dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm index 8cf9831..59ee691 100644 --- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm +++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm @@ -833,7 +833,8 @@ EOF if (%{ $self->{XsubAliases} }) { $self->{XsubAliases}->{ $self->{pname} } = 0 unless defined $self->{XsubAliases}->{ $self->{pname} }; - while ( my ($xname, $value) = each %{ $self->{XsubAliases} }) { + foreach my $xname (sort keys %{ $self->{XsubAliases} }) { + my $value = $self->{XsubAliases}{$xname}; push(@{ $self->{InitFileCode} }, Q(<<"EOF")); # cv = $self->{newXS}(\"$xname\", XS_$self->{Full_func_name}, file$self->{proto}); # XSANY.any_i32 = $value; @@ -847,7 +848,8 @@ EOF EOF } elsif ($self->{interface}) { - while ( my ($yname, $value) = each %{ $self->{Interfaces} }) { + foreach my $yname (sort keys %{ $self->{Interfaces} }) { + my $value = $self->{Interfaces}{$yname}; $yname = "$self->{Package}\::$yname" unless $yname =~ /::/; push(@{ $self->{InitFileCode} }, Q(<<"EOF")); # cv = $self->{newXS}(\"$yname\", XS_$self->{Full_func_name}, file$self->{proto}); -- Perl5 Master Repository
