> On 03/04/2013 02:26 PM, John Goodyear wrote:
> >  >
> >  > On 03/04/2013 12:40 PM, John Goodyear wrote:
> >  > >
> >  > >  > On 03/04/2013 11:35 AM, John Goodyear wrote:
> >  > >  > >
> >  > >  > >  > I tried to say in an earlier email that the make after the
> >  > > miniperl gets
> >  > >  > >  > linked is likely to fail spectacularly.  Instead of
continuing
> >  > > the make
> >  > >  > >  > at this point, use the already-linked miniperl and dothe
Hello
> >  > > world
> >  > >  > > test:
> >  > >  > >  >
> >  > >  > >  > ./miniperl -le 'print "Hello World"'
> >  > >  > >  >
> >  > >  > >
> >  > >  > > This too, fails with ~643K lines of
> >  > >  > >
> >  > >  > >     Semicolon seems to be missing
> >  > >  > >
> >  > >  > > And then finally
> >  > >  > >
> >  > >  > >     Out of memory!
> >  > >  > >
> >  > >  >
> >  > >  >
> >  > >  > What happens if you add a semi-colon?
> >  > >  >
> >  > >  > ./miniperl -le 'print "Hello World";'
> >  > >  >
> >  > >
> >  > > No change.
> >  > >
> >  >
> >  > That's unfortunate. Take the attached file and replace the one on
your
> >  > system with it, and run make again, and see what happens.
> >  > [attachment "l1_char_class_tab.h" deleted by John
> > Goodyear/Gaithersburg/IBM]
> >
> > I addition to substituting the l1_char_class_tab.h that you provided, I
> > put a print statement into perly.c to display the yylex() return value
> >
> > After that, I deleted miniperl and all of the object files and rebuilt
> > miniperl.
> >
> > miniperl now terminates in a more reasonable manner...
> >
> >
> >
> > /u/jgood/perlsrc/perl-3a3d7b8 >./miniperl -le 'print "Hello World"' >
> > output 2>&1
> > /u/jgood/perlsrc/perl-3a3d7b8 >cat output
> > syntax error at -e line 1, at EOF
> > Execution of -e aborted due to compilation errors.
> > JCG: yylex returns 301: 'ýè'
> > JCG: yylex returns 267: 'ðê'
> > JCG: yylex returns 94: ';'
> > JCG: yylex returns 0: ''
> >
> >
> > /u/jgood/perlsrc/perl-3a3d7b8 >./miniperl -le 'print "Hello World";' >
> > output 2>&1
> > /u/jgood/perlsrc/perl-3a3d7b8 >cat output
> > syntax error at -e line 1, near ""Hello World";"
> > Execution of -e aborted due to compilation errors.
> > JCG: yylex returns 301: 'ýè'
> > JCG: yylex returns 267: 'ðê'
> > JCG: yylex returns 94: ';'
> > JCG: yylex returns 94: ';'
> > JCG: yylex returns 0: ''
> >
> >
> > FYI:  Before replacing l1_char_class_tab.h,  this is the character that
> > was almost always output from my trace:
> >
> >     JCG: yylex returns 264: 'ðñ'    ('ðñ' is represented as '\214\111'
> >     when the output is run through more)
> >
>
> I had another idea after I sent this.  When I was going through and
> cleaning up EBCDIC handling, some things seemed so off-the-wall wrong
> that I wasn't sure if I just misunderstood, or if things had gotten so
> very far out-of-sync in the many years since we've tried EBCDIC.  One of
> those places involved perly.y.  Attached is a patch to try that
> reinstates what I removed.  I presumed that the table that drives this
> would be recomputed in native character set terms.  But I may be very
> wrong, not understanding this area of the code at all.  Hopefully, I was
> wrong, and this will work.

Karl, as you suspected, the 2nd header file you sent did not help.  The
0088-XXX-perly.c-Reinstate-some-ebcdic-code.patch didn't seem to help
either.

Under default compilation z/OS, the compiler expecs the character set of
the strings and characters in the code to be IBM-1047.  Under default
runtime conditions, the I/O is assumed to be IBM-1047 as well.   I have
been trying to conserve bandwidth and haven't tried to absorb the code, so
now, I wonder what's going on with all of the tables.  The yylex output
that I print (above) doesn't represent what I fed miniperl.


The -DDEBUGGING flag is now misbehaving on me.  After I run Configure, and
then run make, the compiles fail because the nostdio.h defines for all of
the stdio funcs are in effect.  Hopefull someone knows what causes this...



John Goodyear

Reply via email to