perl6-compiler
[Top] [All Lists]

[perl #57876] An if statement isn't parsed correctly if it follows on a

To: bugs-bitbucket@netlabs.develooper.com
Subject: [perl #57876] An if statement isn't parsed correctly if it follows on a sub
From: "Carl Mäsak" (via RT) <perl6-bugs-followup@perl.org>
Date: Tue, 12 Aug 2008 12:17:39 -0700
Delivered-to: mailing list perl6-all@perl.org
Delivered-to: perl6-all-poster@perl.org
Delivered-to: mailing list perl6-compiler@perl.org
Delivered-to: moderator for perl6-compiler@perl.org
Delivered-to: perl6-compiler@perl.org
In-reply-to: <16d769b70808121217k6bcd1d88ub34dfe6d5ca00af3@mail.gmail.com>
List-help: <mailto:perl6-all-help@perl.org>
List-id: <perl6-all.perl.org>
List-id: <perl6-compiler.perl.org>
List-post: <mailto:perl6-all@perl.org>
List-subscribe: <mailto:perl6-all-subscribe@perl.org>
List-unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
Mail-followup-to: perl6-compiler@perl.org
Mailing-list: contact perl6-all-help@perl.org; run by ezmlm
Managed-by: RT 3.6.HEAD (http://www.bestpractical.com/rt/)
References: <RT-Ticket-57876@perl.org> <16d769b70808121217k6bcd1d88ub34dfe6d5ca00af3@mail.gmail.com>
Reply-to: perl6-compiler@perl.org
Resent-date: Tue, 12 Aug 2008 12:17:40 -0700
Resent-from: rt-cmasak=gmail.com@netlabs.develooper.com
Resent-message-id: <200808121917.m7CJHeW5029712@x17.develooper.com>
Resent-to: perl6-compiler@perl.org
Rt-originator: cmasak@gmail.com
Rt-ticket: perl #57876
# New Ticket Created by  "Carl Mäsak" 
# Please include the string:  [perl #57876]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57876 >


r30183:
$ ./perl6 -e '
sub x {
}
if 1 {
}'
Statement not terminated properly at line 4, near "{\n}"
[...]

>From S04:

=head1 Statement-ending blocks

A line ending with a closing brace "C<}>", followed by nothing but
whitespace or comments, will terminate a statement if an end of statement
can occur there.  That is, these two statements are equivalent:

    my $x = sub { 3 }
    my $x = sub { 3 };


From: Vyacheslav Matjukhin (via RT) <parrotbug-followup@parrotcode.org>
X-Virus-Check-By: mailtest2.pair.com
X-Spam-Check-By: mailtest2.pair.com
X-Spam-Status: No, hits=-9.6 required=4.0 
tests=BAYES_00,DATE_IN_PAST_12_24,RCVD_IN_DNSWL_HI autolearn=ham 
version=3.002004
X-Spam-Flag: NO
X-Spam-Level: 
X-Spam-Filtered: 052f96e22adcb440ba93d277d4a1272f
Mailing-List: contact perl6-all-help@perl.org; run by ezmlm
Precedence: bulk
List-Post: <mailto:perl6-all@perl.org>
List-Help: <mailto:perl6-all-help@perl.org>
List-Unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
List-Subscribe: <mailto:perl6-all-subscribe@perl.org>
List-Id: <perl6-all.perl.org>
Delivered-To: mailing list perl6-all@perl.org
Delivered-To: perl6-all-poster@perl.org
X-Mailing-List: contact perl6-internals-help@perl.org; run by ezmlm
X-Mailing-List-Name: perl6-internals
List-Id: <perl6-internals.perl.org>
Delivered-To: mailing list perl6-internals@perl.org
Delivered-To: moderator for perl6-internals@perl.org
Delivered-To: perl6-internals@perl.org
Resent-Date: Tue, 12 Aug 2008 16:13:37 -0700
Resent-From: rt-mmcleric=gmail.com@netlabs.develooper.com
Resent-Message-Id: <200808122313.m7CNDbX6024810@x17.develooper.com>
X-Authentication-Warning: x17.develooper.com: rt set sender to 
rt-mmcleric=gmail.com@rt.perl.org using -f
X-RT-NewTicket: yes
To: bugs-bitbucket@netlabs.develooper.com
Resent-To: perl6-internals@perl.org
Mail-Followup-To: perl6-internals@perl.org
Reply-To: perl6-internals@perl.org
Date: Tue, 12 Aug 2008 16:13:36 -0700
Subject: [perl #57884] [PATCH] file_type option for 
Parrot::Configure::Compiler->genfile 
In-Reply-To: <f6c882010808121612t4391f72t16fc93bbc249d2d0@mail.gmail.com>
References: <RT-Ticket-57884@perl.org> 
<f6c882010808121612t4391f72t16fc93bbc249d2d0@mail.gmail.com>
Message-ID: <rt-3.6.HEAD-29762-1218582817-444.57884-72-0@perl.org>
X-RT-Loop-Prevention: perl
RT-Ticket: perl #57884
Managed-by: RT 3.6.HEAD (http://www.bestpractical.com/rt/)
RT-Originator: mmcleric@gmail.com
MIME-Version: 1.0
X-RT-Original-Encoding: utf-8
Content-type: multipart/mixed; boundary="----------=_1218582817-29762-158"
X-Old-Spam-Check-By: la.mx.develooper.com
X-Old-Spam-Status: No, hits=-2.6 required=8.0
        tests=BAYES_00,HTML_MESSAGE

------------=_1218582817-29762-158
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="utf-8"

# New Ticket Created by  Vyacheslav Matjukhin 
# Please include the string:  [perl #57884]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57884 >


genfile() method at the Parrot::Configure::Compiler module generates wrong
vim syntax modelines, i.e., it prints ft=c always.
This patch fixes it by implementing new file_type option.
If file_type isn't specified, genfile() tries to automatically recognize
file type by looking at a target file name.
Also, understanding file_type allows method users to forget about a
comment_type option in most cases.
This obviously generalizes old makefile option, so i removed it.


Patch contents description follows.
(as required by "How To Submit A Patch" from submissions.pod; should i
really do this? It all seems pretty obvious...)

config/gen/config_h.pm, config/gen/crypto.pm, config/gen/makefiles.pm:
using new file_type option where needed, sometimes instead of makefile
option.

lib/Parrot/Configure/Compiler.pm:
file_type option implementation and pod; hash with description of possible
file_type's and corresponding comment_type's and vim_ft's.

t/configure/034-step.t:
trivial test updates.

PS. I should've refactored 034-step.t too, but this can be done next time.
There are no tests checking genfile() output, they all just check return
value...

------------=_1218582817-29762-158
Content-Type: text/x-diff;
 name="configure-compiler-filetype-recognizing.patch"
Content-Disposition: inline;
 filename="configure-compiler-filetype-recognizing.patch"
Content-Transfer-Encoding: 7bit
RT-Attachment: 57884/458236/211866

Index: lib/Parrot/Configure/Compiler.pm
===================================================================
--- lib/Parrot/Configure/Compiler.pm    (revision 30189)
+++ lib/Parrot/Configure/Compiler.pm    (working copy)
@@ -34,6 +34,25 @@
     move_if_diff
 );
 
+our %file_types_info = (
+    makefile => {
+        comment_type    => '#',
+        vim_ft          => 'make',
+    },
+    c => {
+        comment_type    => '/*',
+        vim_ft          => 'c',
+    },
+    pmc => {
+        comment_type    => '/*',
+        vim_ft          => 'pmc',
+    },
+    perl => {
+        comment_type    => '#',
+        vim_ft          => 'perl',
+    },
+);
+
 =item C<cc_gen()>
 
     $conf->cc_gen($source)
@@ -46,7 +65,7 @@
     my $conf   = shift;
     my $source = shift;
 
-    $conf->genfile( $source, "test_$$.c" );
+    $conf->genfile( $source, "test_$$.c", file_type => 'none' );
 }
 
 =item C<cc_build()>
@@ -179,13 +198,15 @@
 
 =over 4
 
-=item makefile
+=item file_type
 
-If set to a true value, this flag sets (unless overridden) C<comment_type>
-to '#', C<replace_slashes> to enabled, and C<conditioned_lines> to enabled.
+If set to a C<makefile>, C<c> or C<perl> value, C<comment_type> will be set
+to corresponding value.
+Moreover, when set to a C<makefile> value, it will set C<replace_slashes> to
+enabled, and C<conditioned_lines> to enabled.
 
-If the name of the file being generated ends in C<Makefile>, this option
-defaults to true.
+Its value will be detected automatically by target file name unless you set
+it to a special value C<none>.
 
 =item conditioned_lines
 
@@ -272,21 +293,52 @@
     open my $in,  '<', $source       or die "Can't open $source: $!";
     open my $out, '>', "$target.tmp" or die "Can't open $target.tmp: $!";
 
-    if ( !exists $options{makefile} && $target =~ m/makefile$/i ) {
-        $options{makefile} = 1;
+    if ( !exists $options{file_type}) {
+        if ( $target =~ m/makefile$/i ) {
+            $options{file_type} = 'makefile';
+        }
+        elsif ($target =~ m/\.pl$/i ) {
+            $options{file_type} = 'perl';
+        }
+        elsif ($target =~ m/\.[hc]$/ ) {
+            $options{file_type} = 'c';
+        }
+        elsif ($target =~ m/\.pmc$/ ) {
+            $options{file_type} = 'pmc';
+        }
+    } elsif ( $options{file_type} eq 'none' ) {
+        delete $options{file_type};
     }
 
-    if ( $options{makefile} ) {
-        exists $options{comment_type}      or $options{comment_type}      = 
'#';
-        exists $options{replace_slashes}   or $options{replace_slashes}   = 1;
-        exists $options{conditioned_lines} or $options{conditioned_lines} = 1;
+    if ( !exists $options{file_type} && $target =~ m/makefile$/i ) {
+        $options{file_type} = 'makefile';
     }
 
+    if ( $options{file_type} ) {
+        unless ( exists $file_types_info{$options{file_type}} ) {
+            die "Unknown file_type '$options{file_type}'";
+        }
+        unless ( exists $options{comment_type} ) {
+            $options{comment_type} = 
$file_types_info{$options{file_type}}{comment_type};
+        }
+        if ( $options{file_type} eq 'makefile' ) {
+            exists $options{replace_slashes}   or $options{replace_slashes}   
= 1;
+            exists $options{conditioned_lines} or $options{conditioned_lines} 
= 1;
+        }
+    }
+
     if ( $options{comment_type} ) {
-        my @comment = ( 'ex: set ro ft=c:',
+        my @comment = ( 'ex: set ro',
             'DO NOT EDIT THIS FILE',
             'Generated by ' . __PACKAGE__ . " from $source" );
 
+        if ($options{file_type}) {
+            $comment[0] .= ' ft=' . 
$file_types_info{$options{file_type}}{vim_ft} . ':';
+        }
+        else {
+            $comment[0] .= ':';
+        }
+
         if ( $options{comment_type} eq '#' ) {
             foreach my $line (@comment) {
                 $line = "# $line\n";
Index: t/configure/034-step.t
===================================================================
--- t/configure/034-step.t      (revision 30189)
+++ t/configure/034-step.t      (working copy)
@@ -33,9 +33,9 @@
     ok(
         $conf->genfile(
             $dummy   => 'CFLAGS',
-            makefile => 1,
+            file_type => 'makefile',
         ),
-        "genfile() returned true value with 'makefile' option"
+        "genfile() returned true value with 'file_type' option being set to 
'makefile'"
     );
     unlink $dummy or croak "Unable to delete file after testing";
     chdir $cwd    or croak "Unable to change back to starting directory";
@@ -48,7 +48,7 @@
     open my $IN, '>', $dummy or croak "Unable to open temp file for writing";
     print $IN qq{Hello world\n};
     close $IN or croak "Unable to close temp file";
-    eval { $conf->genfile(  $dummy => 'CFLAGS', makefile => 1, comment_type => 
q{<!--}, ); };
+    eval { $conf->genfile(  $dummy => 'CFLAGS', file_type => 'makefile', 
comment_type => q{<!--}, ); };
     like(
         $@,
         qr/^Unknown comment type/,
@@ -68,7 +68,7 @@
     ok(
         $conf->genfile(
             $dummy       => 'CFLAGS',
-            makefile     => 1,
+            file_type    => 'makefile',
             feature_file => 0,
         ),
         "genfile() returned true value with false value for 'feature_file' 
option"
Index: config/gen/config_h.pm
===================================================================
--- config/gen/config_h.pm      (revision 30189)
+++ config/gen/config_h.pm      (working copy)
@@ -40,13 +40,11 @@
     my ( $self, $conf ) = @_;
 
     $conf->genfile($self->{templates}->{config_h}, 'include/parrot/config.h',
-        comment_type      => '/*',
         ignore_pattern    => 'PARROT_CONFIG_DATE',
         conditioned_lines => 1
     );
 
     $conf->genfile($self->{templates}->{feature_h}, 'include/parrot/feature.h',
-        comment_type   => '/*',
         ignore_pattern => 'PARROT_CONFIG_DATE',
         feature_file   => 1
     );
Index: config/gen/crypto.pm
===================================================================
--- config/gen/crypto.pm        (revision 30189)
+++ config/gen/crypto.pm        (working copy)
@@ -77,10 +77,7 @@
             ? '#if 0'
             : '#ifndef OPENSSL_NO_' . $md
         );
-        $conf->genfile(
-            $self->{digest_pmc_template} => "src/dynpmc/${file}.pmc",
-            comment_type                      => '/*',
-        );
+        $conf->genfile( $self->{digest_pmc_template} => 
"src/dynpmc/${file}.pmc" );
     }
 
     return 1;
Index: config/gen/makefiles.pm
===================================================================
--- config/gen/makefiles.pm     (revision 30189)
+++ config/gen/makefiles.pm     (working copy)
@@ -28,13 +28,8 @@
     $data{result}      = q{};
     $data{makefiles}   = {
         'Makefile' => { SOURCE => 'config/gen/makefiles/root.in' },
+        'ext/Makefile' => { SOURCE => 'config/gen/makefiles/ext.in', },
 
-        'ext/Makefile' => {
-            SOURCE            => 'config/gen/makefiles/ext.in',
-            commentType       => '#',
-            replace_slashes   => 1,
-            conditioned_lines => 1,
-        },
         'ext/Parrot-Embed/Makefile.PL' => {
             SOURCE            => 'config/gen/makefiles/parrot_embed.in',
             replace_slashes   => 0,
@@ -64,13 +59,11 @@
 
         'tools/build/dynpmc.pl' => {
             SOURCE            => 'config/gen/makefiles/dynpmc_pl.in',
-            comment_type      => '#',
             replace_slashes   => 0,
             conditioned_lines => 1,
         },
         'tools/build/dynoplibs.pl' => {
             SOURCE            => 'config/gen/makefiles/dynoplibs_pl.in',
-            comment_type      => '#',
             replace_slashes   => 0,
             conditioned_lines => 1,
         },

------------=_1218582817-29762-158--


From: "Carl Mäsak" (via RT) <perl6-bugs-followup@perl.org>
X-Virus-Check-By: mailtest2.pair.com
X-Spam-Check-By: mailtest2.pair.com
X-Spam-Status: No, hits=-9.6 required=4.0 
tests=BAYES_00,DATE_IN_PAST_12_24,RCVD_IN_DNSWL_HI autolearn=ham 
version=3.002004
X-Spam-Flag: NO
X-Spam-Level: 
X-Spam-Filtered: 052f96e22adcb440ba93d277d4a1272f
Mailing-List: contact perl6-all-help@perl.org; run by ezmlm
Precedence: bulk
List-Post: <mailto:perl6-all@perl.org>
List-Help: <mailto:perl6-all-help@perl.org>
List-Unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
List-Subscribe: <mailto:perl6-all-subscribe@perl.org>
List-Id: <perl6-all.perl.org>
Delivered-To: mailing list perl6-all@perl.org
Delivered-To: perl6-all-poster@perl.org
X-Mailing-List: contact perl6-compiler-help@perl.org; run by ezmlm
X-Mailing-List-Name: perl6-compiler
List-Id: <perl6-compiler.perl.org>
Delivered-To: mailing list perl6-compiler@perl.org
Delivered-To: moderator for perl6-compiler@perl.org
Delivered-To: perl6-compiler@perl.org
Resent-Date: Tue, 12 Aug 2008 12:09:16 -0700
Resent-From: rt-cmasak=gmail.com@netlabs.develooper.com
Resent-Message-Id: <200808121909.m7CJ9G4F028538@x17.develooper.com>
X-Authentication-Warning: x17.develooper.com: rt set sender to 
rt-cmasak=gmail.com@rt.perl.org using -f
X-RT-NewTicket: yes
To: bugs-bitbucket@netlabs.develooper.com
Resent-To: perl6-compiler@perl.org
Mail-Followup-To: perl6-compiler@perl.org
Reply-To: perl6-compiler@perl.org
Date: Tue, 12 Aug 2008 12:09:15 -0700
Subject: [perl #57870] List word quoting construct not implemented 
In-Reply-To: <16d769b70808121208y5b6cbbf7u55f0c5b5110e5734@mail.gmail.com>
References: <RT-Ticket-57870@perl.org> 
<16d769b70808121208y5b6cbbf7u55f0c5b5110e5734@mail.gmail.com>
Message-ID: <rt-3.6.HEAD-29759-1218568155-994.57870-82-0@perl.org>
X-RT-Loop-Prevention: perl
RT-Ticket: perl #57870
Managed-by: RT 3.6.HEAD (http://www.bestpractical.com/rt/)
RT-Originator: cmasak@gmail.com
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
X-Old-Spam-Check-By: la.mx.develooper.com
X-Old-Spam-Status: No, hits=-3.6 required=8.0
        tests=BAYES_00,RCVD_IN_DNSWL_LOW

# New Ticket Created by  "Carl Mäsak" 
# Please include the string:  [perl #57870]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57870 >


>From S05:

=item *

If the first character is whitespace, the angles are treated as an
ordinary "quote words" array literal.

    < adam & eve >   # equivalent to [ 'adam' | '&' | 'eve' ]

---

r30183:
$ ./perl6 -e '"!" ~~ / < ! !! !!! > /'
Syntax error at line 1, near "!! !!! > /"
[...]

This is more of a PGE feature request than a rakudo bug. Please
re-classify as needed.


From: Ron <ron.koerner@gmail.com>
X-Virus-Check-By: mailtest2.pair.com
X-Spam-Check-By: mailtest2.pair.com
X-Spam-Status: No, hits=-9.5 required=4.0 
tests=BAYES_00,DATE_IN_PAST_06_12,RCVD_IN_DNSWL_HI autolearn=ham 
version=3.002004
X-Spam-Flag: NO
X-Spam-Level: 
X-Spam-Filtered: 052f96e22adcb440ba93d277d4a1272f
Mailing-List: contact perl6-all-help@perl.org; run by ezmlm
Precedence: bulk
List-Post: <mailto:perl6-all@perl.org>
List-Help: <mailto:perl6-all-help@perl.org>
List-Unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
List-Subscribe: <mailto:perl6-all-subscribe@perl.org>
List-Id: <perl6-all.perl.org>
Delivered-To: mailing list perl6-all@perl.org
Delivered-To: perl6-all-poster@perl.org
X-Mailing-List: contact perl6-language-help@perl.org; run by ezmlm
X-Mailing-List-Name: perl6-language
List-Id: <perl6-language.perl.org>
Delivered-To: mailing list perl6-language@perl.org
Delivered-To: moderator for perl6-language@perl.org
Delivered-To: perl6-language@perl.org
To: perl6-language@perl.org
MBOX-Line: From news@google.com Wed Aug 13 08:29:11 2008
Delivered-To: colobus-nntpmod@lists.develooper.com
Delivered-To: news-moderator-perl.perl6.language@perl.org
Subject: Re: r14574 - doc/trunk/design/syn
Date: Wed, 13 Aug 2008 01:29:00 -0700 (PDT)
Organization: http://groups.google.com
Lines: 10
Message-ID: <0ad2b44a-ac44-4454-99b1-bc98a925c14b@56g2000hsm.googlegroups.com>
References: <20080808173450.8FE91CB9DD@x12.develooper.com> 
        <28b91831-3a5c-4da3-a308-ddd7dd408704@a70g2000hsh.googlegroups.com> 
        
<!&!AAAAAAAAAAAYAAAAAAAAAJmSy7DjO29Fg/NooSGjnaXCgAAAEAAAAHLsC3sg6BdOnUS+sLsIPFQBAAAAAA==@GMail.com>
 
        <f60fe000808121552s79ee309dpac3ac2228f7c5f18@mail.gmail.com>
NNTP-Posting-Host: 80.154.98.132
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-Trace: posting.google.com 1218616141 18131 127.0.0.1 (13 Aug 2008 08:29:01 
GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Wed, 13 Aug 2008 08:29:01 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: 56g2000hsm.googlegroups.com; posting-host=80.154.98.132; 
        posting-account=8KA3aAoAAAAUt37JQtRmPUDycCFDFtsF
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) 
        Gecko/2008072820 Firefox/3.0.1,gzip(gfe),gzip(gfe)
X-HTTP-Via: 1.1 webwasher (Webwasher 6.7.6.3649)
X-Posted-By: 63.251.223.186
X-Old-Spam-Check-By: la.mx.develooper.com
X-Old-Spam-Status: No, hits=-6.0 required=8.0
        tests=BAYES_00,RCVD_IN_DNSWL_MED,SPF_SOFTFAIL
X-Old-Spam-Check-By: la.mx.develooper.com
X-Old-Spam-Status: No, hits=-9.9 required=8.0
        tests=BAYES_00,RCVD_IN_DNSWL_HI,SPF_NEUTRAL

Thanks, guys.

I was about to point out the difficulties for editors to get their
syntax highlighting and auto-indenting right, but then I remembered
that programming languages are (or should be) designed for the
convenience of people and not to make the tasks easier for tools
working on them.

Regards,
Ron


From: Andy Dougherty (via RT) <parrotbug-followup@parrotcode.org>
X-Virus-Check-By: mailtest2.pair.com
X-Spam-Check-By: mailtest2.pair.com
X-Spam-Status: No, hits=-10.6 required=4.0 tests=BAYES_00,RCVD_IN_DNSWL_HI 
autolearn=ham version=3.002004
X-Spam-Flag: NO
X-Spam-Level: 
X-Spam-Filtered: 052f96e22adcb440ba93d277d4a1272f
Mailing-List: contact perl6-all-help@perl.org; run by ezmlm
Precedence: bulk
List-Post: <mailto:perl6-all@perl.org>
List-Help: <mailto:perl6-all-help@perl.org>
List-Unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
List-Subscribe: <mailto:perl6-all-subscribe@perl.org>
List-Id: <perl6-all.perl.org>
Delivered-To: mailing list perl6-all@perl.org
Delivered-To: perl6-all-poster@perl.org
X-Mailing-List: contact perl6-internals-help@perl.org; run by ezmlm
X-Mailing-List-Name: perl6-internals
List-Id: <perl6-internals.perl.org>
Delivered-To: mailing list perl6-internals@perl.org
Delivered-To: moderator for perl6-internals@perl.org
Delivered-To: perl6-internals@perl.org
Resent-Date: Wed, 13 Aug 2008 07:36:45 -0700
Resent-From: rt-doughera=lafayette.edu@netlabs.develooper.com
Resent-Message-Id: <200808131436.m7DEajRe032115@x17.develooper.com>
X-Authentication-Warning: x17.develooper.com: rt set sender to 
rt-doughera=lafayette.edu@rt.perl.org using -f
X-RT-NewTicket: yes
To: bugs-bitbucket@netlabs.develooper.com
Resent-To: perl6-internals@perl.org
Mail-Followup-To: perl6-internals@perl.org
Reply-To: perl6-internals@perl.org
Date: Wed, 13 Aug 2008 07:36:45 -0700
Subject: [perl #57900] solaris hints no longer work 
In-Reply-To: <Pine.LNX.4.64.0808131019220.15583@fractal.phys.lafayette.edu>
References: <RT-Ticket-57900@perl.org> 
<Pine.LNX.4.64.0808131019220.15583@fractal.phys.lafayette.edu>
Message-ID: <rt-3.6.HEAD-29762-1218638205-1732.57900-72-0@perl.org>
X-RT-Loop-Prevention: perl
RT-Ticket: perl #57900
Managed-by: RT 3.6.HEAD (http://www.bestpractical.com/rt/)
RT-Originator: doughera@lafayette.edu
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
X-Old-Spam-Check-By: la.mx.develooper.com
X-Old-Spam-Status: No, hits=0.4 required=8.0
        tests=BAYES_00,RCVD_IN_DNSWL_LOW,URIBL_BLACK

# New Ticket Created by  Andy Dougherty 
# Please include the string:  [perl #57900]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57900 >


There's been a change somewhere in the Configure system such that the 
solaris.pm hints no longer work.  While running 

        perl Configure.pl --cc=gcc --verbose

I got the following message:

Parrot Version 0.6.4 Configure 2.0
Copyright (C) 2001-2008, The Perl Foundation.

Hello, I'm Configure. My job is to poke and prod your system to figure out
how to build Parrot. The process is completely automated, unless you passed in
the `--ask' flag on the command line, in which case I'll prompt you for a few
pieces of info.

Since you're running this program, you obviously have Perl 5--I'll be pulling
some defaults from its configuration.
sh: svn: not found

Checking MANIFEST.....................................................done.
Setting up Configure's default values.................................done.
Setting up installation paths.........................................done.
Tweaking settings for miniparrot...................................skipped.
Loading platform and local hints files...
[ init::hints::solaris init::hints::local ].............................done.
Finding header files distributed with Parrot..........................done.
Determining what C compiler and linker to use...
./test_3877
Can't exec "./test_3877": No such file or directory at 
lib/Parrot/Configure/Utils.pm line 85.

step inter::progs died during execution: Can't run the test program: No such 
file or directory at config/init/hints/solaris.pm line 40.

 at Configure.pl line 71

[ . . .  more failures omitted . . . ]

Configure.pl actually continues to run, but ends with:

    During configuration the following steps failed:
        07:  inter::progs
        11:  auto::gcc
        16:  auto::msvc
        27:  auto::alignptrs
        29:  auto::sizes
        30:  auto::byteorder
        31:  auto::va_ptr
        53:  auto::snprintf
    You should diagnose and fix these errors before calling 'make'

The problem appears to be in config/init/hints/solaris.pm in
the solaris_link_cb function.  That function tries to compile and run a
simple test.c program.  I don't know where the _3877 part of the
filename is coming from, but it's confusing the hint file.  If the
cc_gen function is going to munge the file name, it ought to tell the
caller what file name it actually ended up using, so the caller can use
it.

-- 
    Andy Dougherty              doughera@lafayette.edu


From: Andy Dougherty (via RT) <parrotbug-followup@parrotcode.org>
X-Virus-Check-By: mailtest2.pair.com
X-Spam-Check-By: mailtest2.pair.com
X-Spam-Status: No, hits=-10.6 required=4.0 tests=BAYES_00,RCVD_IN_DNSWL_HI 
autolearn=ham version=3.002004
X-Spam-Flag: NO
X-Spam-Level: 
X-Spam-Filtered: 052f96e22adcb440ba93d277d4a1272f
Mailing-List: contact perl6-all-help@perl.org; run by ezmlm
Precedence: bulk
List-Post: <mailto:perl6-all@perl.org>
List-Help: <mailto:perl6-all-help@perl.org>
List-Unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
List-Subscribe: <mailto:perl6-all-subscribe@perl.org>
List-Id: <perl6-all.perl.org>
Delivered-To: mailing list perl6-all@perl.org
Delivered-To: perl6-all-poster@perl.org
X-Mailing-List: contact perl6-internals-help@perl.org; run by ezmlm
X-Mailing-List-Name: perl6-internals
List-Id: <perl6-internals.perl.org>
Delivered-To: mailing list perl6-internals@perl.org
Delivered-To: moderator for perl6-internals@perl.org
Delivered-To: perl6-internals@perl.org
Resent-Date: Wed, 13 Aug 2008 07:52:31 -0700
Resent-From: rt-doughera=lafayette.edu@netlabs.develooper.com
Resent-Message-Id: <200808131452.m7DEqVBQ001558@x17.develooper.com>
X-Authentication-Warning: x17.develooper.com: rt set sender to 
rt-doughera=lafayette.edu@rt.perl.org using -f
X-RT-NewTicket: yes
To: bugs-bitbucket@netlabs.develooper.com
Resent-To: perl6-internals@perl.org
Mail-Followup-To: perl6-internals@perl.org
Reply-To: perl6-internals@perl.org
Date: Wed, 13 Aug 2008 07:52:30 -0700
Subject: [perl #57902] [PATCH] PLATFORMS update -- Solaris is broken 
In-Reply-To: <Pine.LNX.4.64.0808131029340.15583@fractal.phys.lafayette.edu>
References: <RT-Ticket-57902@perl.org> 
<Pine.LNX.4.64.0808131029340.15583@fractal.phys.lafayette.edu>
Message-ID: <rt-3.6.HEAD-29762-1218639151-1757.57902-72-0@perl.org>
X-RT-Loop-Prevention: perl
RT-Ticket: perl #57902
Managed-by: RT 3.6.HEAD (http://www.bestpractical.com/rt/)
RT-Originator: doughera@lafayette.edu
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
X-Old-Spam-Check-By: la.mx.develooper.com
X-Old-Spam-Status: No, hits=-3.6 required=8.0
        tests=BAYES_00,RCVD_IN_DNSWL_LOW

# New Ticket Created by  Andy Dougherty 
# Please include the string:  [perl #57902]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57902 >


In preparation for the next release, I tried to update the Solaris 8/SPARC 
status.  Unfortunately, it doesn't get past the hints stage.  See
[perl #57900].  Since I won't have an opportunity to fix it myself before 
next week, this patch is the best status report I can offer.
(Note that the hints failure is harmless in many configurations since the 
default fall-back guesses often work.  Not for me, however.)

--- parrot-current/PLATFORMS    Tue Aug 12 12:43:30 2008
+++ parrot-andy/PLATFORMS       Wed Aug 13 10:20:43 2008
@@ -35,8 +35,8 @@
 linux-x86_64-gcc4.1.0         4   Y    -    -     Y   Y   Y    Y/2   ?  
20060807
 linux-x86_64-gcc4.1.2         8   Y    -    -     Y   Y   Y    Y     ?  
20080220
 openbsd-zaurus-gcc3.3.5           Y    -    -     Y   Y   Y    ?     ?  
20070309
-sol8-sparc-cc                B    -    -    -     -   -   -    Y/1   ?  
20080401
-sol8-sparc-gcc_4.1.0         B    -    -    -     -   -   -    Y/77  ?  
20080401
+sol8-sparc-cc                B    -    -    -     -   -   -    -     ?  
20080813
+sol8-sparc-gcc_4.1.0         B    -    -    -     -   -   -    -     ?  
20080813
 sol10-sparc-cc_5.8           B    Y    -    -     Y   Y   Y    Y/9   ?  
20060807
 sol10-sparc-cc_5.9           B4*4 Y    -    -     Y   Y   Y    Y     ?  
20080510
 sol10-sparc-cc_5.9           B8   Y    -    -     Y   Y   Y    Y/2   ?  
20080518

-- 
    Andy Dougherty              doughera@lafayette.edu


<Prev in Thread] Current Thread [Next in Thread>
  • [perl #57876] An if statement isn't parsed correctly if it follows on a sub, Carl Mäsak <=