Okay, on a whim, I tried `perl Configure.pl` again in both my parrot-0.0.4 and parrot-0.0.5 directories, accepting all defaults.
The difference appears to be in the checking for computed goto. Of course, Configure.pl *does* warn me that I may see some errors. I have no idea why any of this would fail on my machine and work for others. I *have* been frobbing this machine pretty hard to get it to compile certain other things; perhaps that's what's going on? Whatever; such was the whim. And the errors/warnings here *are* the same or similar to many of the error message in compilation. Here we go: ---BEGIN `cd /usr/local/src/parrot-0.0.4; perl Configure.pl`--- 14:12:47 [cogent@localhost] parrot-0.0.4>$ cd /usr/local/src/parrot-0.0.4; perl Configure.pl Parrot Version 0.0.4 Configure Copyright (C) 2001-2002 Yet Another Society Since you're running this script, you obviously have Perl 5--I'll be pulling some defaults from its configuration. Checking the MANIFEST to make sure you have a complete Parrot kit... Okay, we found everything. Next you'll need to answer a few questions about your system. Defaults are in square brackets, and you can hit enter to accept them. If you don't want the default, type a new value in. If that new value starts with a '+', it will be concatenated to the default value. What C compiler do you want to use? [cc] How about your linker? [cc] What flags would you like passed to your C compiler? [-pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -I/usr/local/include -I/sw/include] What flags would you like passed to your linker? [-flat_namespace -L/usr/local/lib -L/sw/lib -flat_namespace ] Which libraries would you like your C compiler to include? [-ldb -lm -lc -ldl] How big would you like integers to be? [long long] And your floats? [double] What is your native opcode type? [long long] Now I have to find out what opcode files you would like to compile into your Parrot. The following opcode files are available: core.ops io.ops obscure.ops rx.ops WARNING: Bad Things may happen if the first file on the list isn't core.ops. WARNING: These file names will not be checked for spelling, and typing them wrong will force you to run Configure again. WARNING: I worry way too much about Configure users. Which opcode files would you like? [core.ops io.ops rx.ops] Determining if your C compiler is actually gcc (this could take a while): Your C compiler reports itself as gcc, major version 2, minor version 95. What gcc warning flags do you want to use? [ -Wall -Wstrict-prototypes -Wmissing-prototypes -Winline -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Winline -W -Wno-unused -Wsign-compare -Wno-shadow] Probing Perl 5's configuration to determine which headers you have (this could take a while on slow machines)... Determining C data type sizes by compiling and running a small C program (this could take a while): Building ./test.c from test_c.in... Hmm, I see your chosen INTVAL isn't the same size as your pointers. Parrot should still compile and run, but you may see a ton of warnings. Figuring out the formats to pass to pack() for the various Parrot internal types... Figuring out what integer type we can mix with pointers... We'll use 'unsigned int'. Building a preliminary version of include/parrot/config.h, your Makefiles, and other files: Building include/parrot/config.h from config_h.in... Building ./Makefile from Makefile.in... Building ./classes/Makefile from classes/Makefile.in... Building ./docs/Makefile from docs/Makefile.in... Building ./languages/Makefile from languages/Makefile.in... Building ./languages/jako/Makefile from languages/jako/Makefile.in... Building ./languages/miniperl/Makefile from languages/miniperl/Makefile.in... Building ./languages/scheme/Makefile from languages/scheme/Makefile.in... Building lib/Parrot/Types.pm from Types_pm.in... Building lib/Parrot/Config.pm from Config_pm.in... Checking some things by compiling and running another small C program (this could take a while): Building ./testparrotsizes.c from testparrotsizes_c.in... Updating include/parrot/config.h: Building include/parrot/config.h from config_h.in... Okay, we're done! You can now use `make' (or your platform's equivalent to `make') to build your Parrot. After that, you can use `make test' to run the test suite. Happy Hacking, The Parrot Team 14:13:11 [cogent@localhost] parrot-0.0.4>$ ----END `cd /usr/local/src/parrot-0.0.4; perl Configure.pl`---- ---BEGIN `cd /usr/local/src/parrot-0.0.5; perl Configure.pl`--- 14:13:11 [cogent@localhost] parrot-0.0.4>$ cd /usr/local/src/parrot-0.0.5; perl Configure.pl Parrot Version 0.0.5 Configure Copyright (C) 2001-2002 Yet Another Society Since you're running this script, you obviously have Perl 5--I'll be pulling some defaults from its configuration. Checking the MANIFEST to make sure you have a complete Parrot kit... Okay, we found everything. Next you'll need to answer a few questions about your system. Defaults are in square brackets, and you can hit enter to accept them. If you don't want the default, type a new value in. If that new value starts with a '+', it will be concatenated to the default value. What C compiler do you want to use? [cc] How about your linker? [cc] What flags would you like passed to your C compiler? [-pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -fno-strict-aliasing -I/usr/local/include -I/sw/include] What flags would you like passed to your linker? [-flat_namespace -L/usr/local/lib -L/sw/lib -flat_namespace ] Which libraries would you like your C compiler to include? [-ldb -lm -lc -ldl] How big would you like integers to be? [long long] And your floats? [double] What is your native opcode type? [long long] Now I have to find out what opcode files you would like to compile into your Parrot. The following opcode files are available: core.ops io.ops obscure.ops rx.ops vtable.ops WARNING: Bad Things may happen if the first file on the list isn't core.ops. WARNING: These file names will not be checked for spelling, and typing them wrong will force you to run Configure again. WARNING: I worry way too much about Configure users. Which opcode files would you like? [core.ops io.ops rx.ops] Determining if your C compiler is actually gcc (this could take a while): Your C compiler reports itself as gcc, major version 2, minor version 95. What gcc warning flags do you want to use? [ -Wall -Wstrict-prototypes -Wmissing-prototypes -Winline -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Winline -W -Wno-unused -Wsign-compare -Wno-shadow] Probing Perl 5's configuration to determine which headers you have (this could take a while on slow machines)... Determining C data type sizes by compiling and running a small C program (this could take a while): Building ./test.c from test_c.in... Hmm, I see your chosen INTVAL isn't the same size as your pointers. Parrot should still compile and run, but you may see a ton of warnings. Figuring out the formats to pass to pack() for the various Parrot internal types... Figuring out what integer type we can mix with pointers... We'll use 'unsigned int'. Building a preliminary version of include/parrot/config.h, your Makefiles, and other files: Building include/parrot/config.h from config_h.in... Building ./Makefile from Makefile.in... Building ./classes/Makefile from classes/Makefile.in... Building ./docs/Makefile from docs/Makefile.in... Building ./languages/Makefile from languages/Makefile.in... Building ./languages/jako/Makefile from languages/jako/Makefile.in... Building ./languages/miniperl/Makefile from languages/miniperl/Makefile.in... Building ./languages/scheme/Makefile from languages/scheme/Makefile.in... Building lib/Parrot/Types.pm from Types_pm.in... Building lib/Parrot/Config.pm from Config_pm.in... Checking some things by compiling and running another small C program (this could take a while): Building ./testparrotsizes.c from testparrotsizes_c.in... Still everything ok, let's check if we can use computed goto, don't worry if you see some errors, it will be all right, This could take a bit... Building ./testcomputedgoto.c from testcomputedgoto_c.in... testcomputedgoto.c:9: illegal expression, found `&&' testcomputedgoto.c:12: illegal statement, missing `identifier' after `goto' testcomputedgoto.c:12: syntax error, missing `;' after `*' cpp-precomp: warning: errors during smart preprocessing, retrying in basic mode Building ./Makefile from Makefile.in... Updating include/parrot/config.h: Building include/parrot/config.h from config_h.in... Okay, we're done! You can now use `make' (or your platform's equivalent to `make') to build your Parrot. After that, you can use `make test' to run the test suite. Happy Hacking, The Parrot Team 14:14:14 [cogent@localhost] parrot-0.0.5>$ ----END `cd /usr/local/src/parrot-0.0.5; perl Configure.pl`---- -- David "Cogent" Hand <http://davidhand.com/> <mailto:[EMAIL PROTECTED]> <icq:4321282>