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 do the 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 have one more trick to try, and that is to use another file (attached) to replace the one you have, and redo the make, etc.
/* -*- buffer-read-only: t -*-
 * !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
 * This file is built by regen/mk_invlists.pl from Unicode::UCD.
 * Any changes made here will be lost!
 */

/* See the generating file for comments */


#ifndef PERL_IN_XSUB_RE

static UV Latin1_invlist[] = {
	2,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	0,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	256,
	0
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV AboveLatin1_invlist[] = {
	1,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	256
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV ASCII_invlist[] = {
	54,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	0,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	4,
	5,
	6,
	7,
	8,
	11,
	20,
	21,
	23,
	24,
	26,
	28,
	32,
	38,
	40,
	45,
	48,
	50,
	51,
	55,
	56,
	60,
	62,
	63,
	65,
	75,
	81,
	90,
	98,
	107,
	112,
	121,
	128,
	129,
	138,
	145,
	154,
	161,
	170,
	173,
	174,
	189,
	190,
	192,
	202,
	208,
	218,
	224,
	225,
	226,
	234,
	240,
	250,
	0
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1Cased_invlist[] = {
	40,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	66,
	74,
	81,
	90,
	98,
	106,
	112,
	121,
	128,
	138,
	140,
	143,
	145,
	157,
	158,
	159,
	160,
	161,
	162,
	170,
	172,
	173,
	174,
	175,
	186,
	187,
	193,
	202,
	203,
	208,
	209,
	218,
	219,
	224,
	226,
	234,
	235,
	240,
	251,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV VertSpace_invlist[] = {
	8,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	11,
	14,
	21,
	22,
	37,
	38,
	8232,
	8234
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PerlSpace_invlist[] = {
	6,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	11,
	14,
	21,
	22,
	64,
	65
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV XPerlSpace_invlist[] = {
	24,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	9,
	10,
	11,
	14,
	21,
	22,
	37,
	38,
	64,
	66,
	5760,
	5761,
	6158,
	6159,
	8192,
	8203,
	8232,
	8234,
	8239,
	8240,
	8287,
	8288,
	12288,
	12289
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixAlnum_invlist[] = {
	14,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	129,
	138,
	145,
	154,
	162,
	170,
	193,
	202,
	209,
	218,
	226,
	234,
	240,
	250
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixAlnum_invlist[] = {
	40,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	66,
	74,
	81,
	90,
	98,
	106,
	112,
	121,
	128,
	138,
	140,
	143,
	145,
	157,
	158,
	159,
	160,
	161,
	162,
	170,
	172,
	173,
	174,
	175,
	186,
	187,
	193,
	202,
	203,
	208,
	209,
	218,
	219,
	224,
	226,
	234,
	235,
	250,
	251,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixAlpha_invlist[] = {
	12,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	129,
	138,
	145,
	154,
	162,
	170,
	193,
	202,
	209,
	218,
	226,
	234
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixAlpha_invlist[] = {
	40,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	66,
	74,
	81,
	90,
	98,
	106,
	112,
	121,
	128,
	138,
	140,
	143,
	145,
	157,
	158,
	159,
	160,
	161,
	162,
	170,
	172,
	173,
	174,
	175,
	186,
	187,
	193,
	202,
	203,
	208,
	209,
	218,
	219,
	224,
	226,
	234,
	235,
	240,
	251,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixBlank_invlist[] = {
	2,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	64,
	65
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV XPosixBlank_invlist[] = {
	16,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	9,
	10,
	64,
	66,
	5760,
	5761,
	6158,
	6159,
	8192,
	8203,
	8239,
	8240,
	8287,
	8288,
	12288,
	12289
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixCntrl_invlist[] = {
	26,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	0,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	4,
	5,
	6,
	7,
	8,
	11,
	20,
	21,
	23,
	24,
	26,
	28,
	32,
	38,
	40,
	45,
	48,
	50,
	51,
	55,
	56,
	60,
	62,
	63,
	64,
	0
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV XPosixCntrl_invlist[] = {
	4,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	0,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	64,
	255,
	256,
	0
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixDigit_invlist[] = {
	2,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	240,
	250
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixGraph_invlist[] = {
	28,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	75,
	81,
	90,
	98,
	107,
	112,
	121,
	128,
	129,
	138,
	145,
	154,
	161,
	170,
	173,
	174,
	189,
	190,
	192,
	202,
	208,
	218,
	224,
	225,
	226,
	234,
	240,
	250
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixGraph_invlist[] = {
	2,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	66,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixLower_invlist[] = {
	6,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	129,
	138,
	145,
	154,
	162,
	170
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixLower_invlist[] = {
	20,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	66,
	74,
	81,
	90,
	112,
	113,
	129,
	138,
	140,
	143,
	145,
	157,
	160,
	161,
	162,
	170,
	203,
	208,
	219,
	224
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixPrint_invlist[] = {
	30,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	64,
	65,
	75,
	81,
	90,
	98,
	107,
	112,
	121,
	128,
	129,
	138,
	145,
	154,
	161,
	170,
	173,
	174,
	189,
	190,
	192,
	202,
	208,
	218,
	224,
	225,
	226,
	234,
	240,
	250
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixPrint_invlist[] = {
	2,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	64,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixPunct_invlist[] = {
	20,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	75,
	81,
	90,
	98,
	107,
	112,
	121,
	128,
	161,
	162,
	173,
	174,
	189,
	190,
	192,
	193,
	208,
	209,
	224,
	225
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixPunct_invlist[] = {
	28,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	75,
	81,
	90,
	98,
	107,
	112,
	121,
	128,
	138,
	140,
	161,
	162,
	170,
	172,
	173,
	174,
	179,
	180,
	181,
	183,
	189,
	190,
	192,
	193,
	208,
	209,
	224,
	225
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixSpace_invlist[] = {
	6,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	11,
	14,
	21,
	22,
	64,
	65
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV XPosixSpace_invlist[] = {
	24,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	9,
	10,
	11,
	14,
	21,
	22,
	37,
	38,
	64,
	66,
	5760,
	5761,
	6158,
	6159,
	8192,
	8203,
	8232,
	8234,
	8239,
	8240,
	8287,
	8288,
	12288,
	12289
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixUpper_invlist[] = {
	6,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	193,
	202,
	209,
	218,
	226,
	234
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixUpper_invlist[] = {
	24,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	98,
	106,
	113,
	121,
	128,
	129,
	158,
	159,
	172,
	173,
	174,
	175,
	186,
	187,
	193,
	202,
	209,
	218,
	226,
	234,
	235,
	240,
	251,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixWord_invlist[] = {
	16,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	109,
	110,
	129,
	138,
	145,
	154,
	162,
	170,
	193,
	202,
	209,
	218,
	226,
	234,
	240,
	250
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV L1PosixWord_invlist[] = {
	42,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	66,
	74,
	81,
	90,
	98,
	106,
	109,
	110,
	112,
	121,
	128,
	138,
	140,
	143,
	145,
	157,
	158,
	159,
	160,
	161,
	162,
	170,
	172,
	173,
	174,
	175,
	186,
	187,
	193,
	202,
	203,
	208,
	209,
	218,
	219,
	224,
	226,
	234,
	235,
	250,
	251,
	255
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV PosixXDigit_invlist[] = {
	6,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	129,
	135,
	193,
	199,
	240,
	250
};

#endif

#ifndef PERL_IN_XSUB_RE

static UV XPosixXDigit_invlist[] = {
	12,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	129,
	135,
	193,
	199,
	240,
	250,
	65296,
	65306,
	65313,
	65319,
	65345,
	65351
};

#endif

static UV NonL1_Perl_Non_Final_Folds_invlist[] = {
	44,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	700,
	701,
	776,
	777,
	787,
	788,
	834,
	835,
	940,
	941,
	942,
	943,
	945,
	946,
	951,
	952,
	953,
	954,
	961,
	962,
	965,
	966,
	969,
	970,
	974,
	975,
	1381,
	1382,
	1396,
	1397,
	1406,
	1407,
	7936,
	7944,
	7968,
	7976,
	8032,
	8040,
	8048,
	8049,
	8052,
	8053,
	8060,
	8061
};

#ifndef PERL_IN_XSUB_RE

static UV _Perl_Multi_Char_Folds_invlist[] = {
	58,	/* Number of elements */
	0,	/* Current iteration position */
	0,	/* Cache of previous search index result */
	290655244, /* Version and data structure type */
	1,	/* 0 if this is the first element of the list proper;
		   1 if the next element is the first */
	89,
	90,
	304,
	305,
	329,
	330,
	496,
	497,
	912,
	913,
	944,
	945,
	1415,
	1416,
	7830,
	7835,
	7838,
	7839,
	8016,
	8017,
	8018,
	8019,
	8020,
	8021,
	8022,
	8023,
	8064,
	8112,
	8114,
	8117,
	8118,
	8120,
	8124,
	8125,
	8130,
	8133,
	8134,
	8136,
	8140,
	8141,
	8146,
	8148,
	8150,
	8152,
	8162,
	8165,
	8166,
	8168,
	8178,
	8181,
	8182,
	8184,
	8188,
	8189,
	64256,
	64263,
	64275,
	64280
};

#endif

/* ex: set ro: */

Reply via email to