bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#19643: 24.2; shell mode


From: Alexis
Subject: bug#19643: 24.2; shell mode
Date: Wed, 21 Jan 2015 15:15:58 +1100

twilliam@twilliam.org writes:

> I'm trying to use shell mode.  In fact, I'm trying to run a Perl
> program in shell mode.  I launch the program, and it runs.  Input from
> a file is read, processed.  Output (to STDOUT) is printed to *shell*.
> Trouble is I can't read keyboard input (as in <STDIN>).  What am I
> missing (except a brain)?
>
> Ok, this is Emacs 24.2.1 running on Windows XP.
>
> I downloaded Perl from ActiveState in 2011.  Here's a simple Perl
> program that demos the problem:
>
> print "Give me a number: ";
> chomp ( $Anumber = <STDIN> );
> print "Give me another: ";
> chomp ( $Bnumber = <STDIN> );
> $product = $Anumber * $Bnumber;
> print "$Anumber times $Bnumber = $product\n";
>
> It works fine in a DOS window.  In emacs shell mode it tells me this
>
> Use of uninitialized value $Anumber in chomp at c:\Perl\ex2-4.pl line 3.
> Use of uninitialized value $Bnumber in chomp at c:\Perl\ex2-4.pl line 5.
> Use of uninitialized value $Bnumber in multiplication (*) at c:\Perl\ex2-4.pl 
> line 6.
> Use of uninitialized value $Anumber in multiplication (*) at c:\Perl\ex2-4.pl 
> line 6.
> Use of uninitialized value $Anumber in concatenation (.) or string at 
> c:\Perl\ex2-4.pl line 7.
> Use of uninitialized value $Bnumber in concatenation (.) or string at 
> c:\Perl\ex2-4.pl line 7.
> Give me a number: Give me another:  times  = 0
>
> Perl is complaining about uninitialized values before it has even
> printed the prompts for them.

Off the top of my head, my guess is that, when run from shell-mode, Perl
is being called with the `-w` switch (which gives one warnings about
certain constructs that might indicate programmer error), whereas you're
not calling your script with the `-w` switch when calling it from the
DOS window. See the `perlrun` man page for info about `-w`.

So, do you get the above messages when you run your script from a DOS
window with warnings enabled, e.g.:

    perl -w myscript.pl

?


Alexis.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]