shithub: mc

Download patch

ref: aa0f6957fb098fadcaccb470826d54bf679163d2
parent: f5c244010143f1b7b90c66dd54d8b4d8d3c0a7df
author: Ori Bernstein <ori@eigenstate.org>
date: Mon Jul 13 20:40:19 EDT 2015

Regenerate bootstrap for linux.

--- a/mk/bootstrap/bootstrap+Linux-x86_64.sh
+++ b/mk/bootstrap/bootstrap+Linux-x86_64.sh
@@ -20,64 +20,65 @@
 echo 	../6/6m	-I . die.myr ;	../6/6m	-I . die.myr 
 echo 	../6/6m	-I . sleq.myr ;	../6/6m	-I . sleq.myr 
 echo 	../6/6m	-I . hassuffix.myr ;	../6/6m	-I . hassuffix.myr 
-echo 	../6/6m	-I . hashfuncs.myr ;	../6/6m	-I . hashfuncs.myr 
-echo 	../6/6m	-I . slfill.myr ;	../6/6m	-I . slfill.myr 
-echo 	../6/6m	-I . clear.myr ;	../6/6m	-I . clear.myr 
 echo 	../6/6m	-I . extremum.myr ;	../6/6m	-I . extremum.myr 
 echo 	../6/6m	-I . units.myr ;	../6/6m	-I . units.myr 
 echo 	../6/6m	-I . alloc.myr ;	../6/6m	-I . alloc.myr 
 echo 	../6/6m	-I . rand.myr ;	../6/6m	-I . rand.myr 
-echo 	../6/6m	-I . utf.myr ;	../6/6m	-I . utf.myr 
 echo 	../6/6m	-I . slcp.myr ;	../6/6m	-I . slcp.myr 
 echo 	../6/6m	-I . sldup.myr ;	../6/6m	-I . sldup.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh wait`;	../6/6m	-I . `$pwd/sysselect.sh wait`
 echo 	../6/6m	-I . now.myr ;	../6/6m	-I . now.myr 
-echo 	../6/6m	-I . strjoin.myr ;	../6/6m	-I . strjoin.myr 
-echo 	../6/6m	-I . mk.myr ;	../6/6m	-I . mk.myr 
 echo 	../6/6m	-I . sljoin.myr ;	../6/6m	-I . sljoin.myr 
 echo 	../6/6m	-I . result.myr ;	../6/6m	-I . result.myr 
 echo 	../6/6m	-I . slurp.myr ;	../6/6m	-I . slurp.myr 
 echo 	../6/6m	-I . strfind.myr ;	../6/6m	-I . strfind.myr 
 echo 	../6/6m	-I . dirname.myr ;	../6/6m	-I . dirname.myr 
-echo 	../6/6m	-I . putint.myr ;	../6/6m	-I . putint.myr 
-echo 	../6/6m	-I . mkpath.myr ;	../6/6m	-I . mkpath.myr 
 echo 	../6/6m	-I . introspect.myr ;	../6/6m	-I . introspect.myr 
+echo 	../6/6m	-I . slpush.myr ;	../6/6m	-I . slpush.myr 
+echo 	../6/6m	-I . strsplit.myr ;	../6/6m	-I . strsplit.myr 
+echo 	../6/6m	-I . fltbits.myr ;	../6/6m	-I . fltbits.myr 
 echo 	../6/6m	-I . chartype.myr ;	../6/6m	-I . chartype.myr 
 echo 	../6/6m	-I . cmp.myr ;	../6/6m	-I . cmp.myr 
 echo 	../6/6m	-I . hasprefix.myr ;	../6/6m	-I . hasprefix.myr 
-echo 	../6/6m	-I . slpush.myr ;	../6/6m	-I . slpush.myr 
+echo 	../6/6m	-I . utf.myr ;	../6/6m	-I . utf.myr 
+echo 	../6/6m	-I . intparse.myr ;	../6/6m	-I . intparse.myr 
+echo 	../6/6m	-I . slfill.myr ;	../6/6m	-I . slfill.myr 
 echo 	../6/6m	-I . bigint.myr ;	../6/6m	-I . bigint.myr 
-echo 	../6/6m	-I . strsplit.myr ;	../6/6m	-I . strsplit.myr 
-echo 	../6/6m	-I . fltbits.myr ;	../6/6m	-I . fltbits.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh env`;	../6/6m	-I . `$pwd/sysselect.sh env`
 echo 	../6/6m	-I . strbuf.myr ;	../6/6m	-I . strbuf.myr 
 echo 	../6/6m	-I . fltfmt.myr ;	../6/6m	-I . fltfmt.myr 
+echo 	../6/6m	-I . hashfuncs.myr ;	../6/6m	-I . hashfuncs.myr 
 echo 	../6/6m	-I . htab.myr ;	../6/6m	-I . htab.myr 
-echo 	../6/6m	-I . intparse.myr ;	../6/6m	-I . intparse.myr 
 echo 	../6/6m	-I . `$pwd/sysselect.sh syswrap-ss`;	../6/6m	-I . `$pwd/sysselect.sh syswrap-ss`
 echo 	../6/6m	-I . varargs.myr ;	../6/6m	-I . varargs.myr 
 echo 	../6/6m	-I . fmt.myr ;	../6/6m	-I . fmt.myr 
-echo 	../6/6m	-I . endian.myr ;	../6/6m	-I . endian.myr 
-echo 	../6/6m	-I . ipparse.myr ;	../6/6m	-I . ipparse.myr 
-echo 	../6/6m	-I . strstrip.myr ;	../6/6m	-I . strstrip.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh resolve`;	../6/6m	-I . `$pwd/sysselect.sh resolve`
-echo 	../6/6m	-I . pathjoin.myr ;	../6/6m	-I . pathjoin.myr 
 echo 	../6/6m	-I . optparse.myr ;	../6/6m	-I . optparse.myr 
 echo 	../6/6m	-I . `$pwd/sysselect.sh dir`;	../6/6m	-I . `$pwd/sysselect.sh dir`
+echo 	../6/6m	-I . ipparse.myr ;	../6/6m	-I . ipparse.myr 
+echo 	../6/6m	-I . `$pwd/sysselect.sh env`;	../6/6m	-I . `$pwd/sysselect.sh env`
 echo 	../6/6m	-I . execvp.myr ;	../6/6m	-I . execvp.myr 
 echo 	../6/6m	-I . slput.myr ;	../6/6m	-I . slput.myr 
 echo 	../6/6m	-I . spork.myr ;	../6/6m	-I . spork.myr 
 echo 	../6/6m	-I . getint.myr ;	../6/6m	-I . getint.myr 
 echo 	../6/6m	-I . blat.myr ;	../6/6m	-I . blat.myr 
+echo 	../6/6m	-I . clear.myr ;	../6/6m	-I . clear.myr 
+echo 	../6/6m	-I . `$pwd/sysselect.sh wait`;	../6/6m	-I . `$pwd/sysselect.sh wait`
+echo 	../6/6m	-I . strjoin.myr ;	../6/6m	-I . strjoin.myr 
+echo 	../6/6m	-I . mk.myr ;	../6/6m	-I . mk.myr 
+echo 	../6/6m	-I . putint.myr ;	../6/6m	-I . putint.myr 
+echo 	../6/6m	-I . mkpath.myr ;	../6/6m	-I . mkpath.myr 
+echo 	../6/6m	-I . endian.myr ;	../6/6m	-I . endian.myr 
+echo 	../6/6m	-I . strstrip.myr ;	../6/6m	-I . strstrip.myr 
+echo 	../6/6m	-I . `$pwd/sysselect.sh resolve`;	../6/6m	-I . `$pwd/sysselect.sh resolve`
+echo 	../6/6m	-I . pathjoin.myr ;	../6/6m	-I . pathjoin.myr 
+echo 	../6/6m	-I . bitset.myr ;	../6/6m	-I . bitset.myr 
+echo 	../6/6m	-I . fmtfuncs.myr ;	../6/6m	-I . fmtfuncs.myr 
 echo 	../6/6m	-I . try.myr ;	../6/6m	-I . try.myr 
 echo 	../6/6m	-I . sort.myr ;	../6/6m	-I . sort.myr 
 echo 	../6/6m	-I . search.myr ;	../6/6m	-I . search.myr 
 echo 	../6/6m	-I . getcwd.myr ;	../6/6m	-I . getcwd.myr 
 echo 	../6/6m	-I . swap.myr ;	../6/6m	-I . swap.myr 
-echo 	../6/6m	-I . bitset.myr ;	../6/6m	-I . bitset.myr 
 echo 	../6/6m	-I . `$pwd/sysselect.sh dial`;	../6/6m	-I . `$pwd/sysselect.sh dial`
-echo 	../muse/muse	-o std slfill.use dial.use putint.use fmt.use syswrap.use try.use sort.use blat.use pathjoin.use strjoin.use dir.use mk.use swap.use hassuffix.use execvp.use types.use ipparse.use strfind.use utf.use cstrconv.use search.use die.use units.use sljoin.use slpush.use result.use htab.use now.use strstrip.use env.use bitset.use getcwd.use rand.use resolve.use slurp.use intparse.use varargs.use strbuf.use clear.use hasprefix.use slput.use mkpath.use getint.use strsplit.use introspect.use dirname.use sleq.use endian.use alloc.use optparse.use spork.use fltbits.use cmp.use syswrap-ss.use sldup.use chartype.use fltfmt.use bigint.use option.use extremum.use hashfuncs.use wait.use errno.use slcp.use ;	../muse/muse	-o std slfill.use dial.use putint.use fmt.use syswrap.use try.use sort.use blat.use pathjoin.use strjoin.use dir.use mk.use swap.use hassuffix.use execvp.use types.use ipparse.use strfind.use utf.use cstrconv.use search.use die.use units.use sljoin.use slpush.use result.use htab.use now.use strstrip.use env.use bitset.use getcwd.use rand.use resolve.use slurp.use intparse.use varargs.use strbuf.use clear.use hasprefix.use slput.use mkpath.use getint.use strsplit.use introspect.use dirname.use sleq.use endian.use alloc.use optparse.use spork.use fltbits.use cmp.use syswrap-ss.use sldup.use chartype.use fltfmt.use bigint.use option.use extremum.use hashfuncs.use wait.use errno.use slcp.use 
-echo 	ar	-rcs libstd.a slfill.o dial.o putint.o fmt.o syswrap.o try.o sort.o blat.o pathjoin.o strjoin.o dir.o mk.o swap.o hassuffix.o execvp.o types.o ipparse.o strfind.o utf.o cstrconv.o search.o die.o units.o sljoin.o slpush.o result.o htab.o now.o strstrip.o env.o bitset.o getcwd.o rand.o resolve.o slurp.o intparse.o varargs.o strbuf.o clear.o hasprefix.o slput.o mkpath.o getint.o strsplit.o introspect.o dirname.o sleq.o endian.o alloc.o optparse.o spork.o fltbits.o cmp.o syswrap-ss.o sldup.o chartype.o fltfmt.o bigint.o option.o extremum.o hashfuncs.o wait.o errno.o slcp.o ;	ar	-rcs libstd.a slfill.o dial.o putint.o fmt.o syswrap.o try.o sort.o blat.o pathjoin.o strjoin.o dir.o mk.o swap.o hassuffix.o execvp.o types.o ipparse.o strfind.o utf.o cstrconv.o search.o die.o units.o sljoin.o slpush.o result.o htab.o now.o strstrip.o env.o bitset.o getcwd.o rand.o resolve.o slurp.o intparse.o varargs.o strbuf.o clear.o hasprefix.o slput.o mkpath.o getint.o strsplit.o introspect.o dirname.o sleq.o endian.o alloc.o optparse.o spork.o fltbits.o cmp.o syswrap-ss.o sldup.o chartype.o fltfmt.o bigint.o option.o extremum.o hashfuncs.o wait.o errno.o slcp.o 
+echo 	../muse/muse	-o std fmtfuncs.use fmt.use try.use pathjoin.use strjoin.use dir.use sljoin.use slpush.use strstrip.use htab.use now.use getcwd.use rand.use slurp.use varargs.use strbuf.use clear.use slput.use strsplit.use introspect.use alloc.use optparse.use fltbits.use sldup.use fltfmt.use extremum.use option.use slcp.use errno.use wait.use putint.use syswrap.use sort.use blat.use mk.use swap.use hassuffix.use execvp.use ipparse.use types.use strfind.use utf.use cstrconv.use search.use die.use units.use result.use bitset.use env.use resolve.use intparse.use hasprefix.use mkpath.use getint.use dirname.use sleq.use endian.use spork.use cmp.use syswrap-ss.use chartype.use bigint.use hashfuncs.use slfill.use dial.use ;	../muse/muse	-o std fmtfuncs.use fmt.use try.use pathjoin.use strjoin.use dir.use sljoin.use slpush.use strstrip.use htab.use now.use getcwd.use rand.use slurp.use varargs.use strbuf.use clear.use slput.use strsplit.use introspect.use alloc.use optparse.use fltbits.use sldup.use fltfmt.use extremum.use option.use slcp.use errno.use wait.use putint.use syswrap.use sort.use blat.use mk.use swap.use hassuffix.use execvp.use ipparse.use types.use strfind.use utf.use cstrconv.use search.use die.use units.use result.use bitset.use env.use resolve.use intparse.use hasprefix.use mkpath.use getint.use dirname.use sleq.use endian.use spork.use cmp.use syswrap-ss.use chartype.use bigint.use hashfuncs.use slfill.use dial.use 
+echo 	ar	-rcs libstd.a fmtfuncs.o fmt.o try.o pathjoin.o strjoin.o dir.o sljoin.o slpush.o strstrip.o htab.o now.o getcwd.o rand.o slurp.o varargs.o strbuf.o clear.o slput.o strsplit.o introspect.o alloc.o optparse.o fltbits.o sldup.o fltfmt.o extremum.o option.o slcp.o errno.o wait.o putint.o syswrap.o sort.o blat.o mk.o swap.o hassuffix.o execvp.o ipparse.o types.o strfind.o utf.o cstrconv.o search.o die.o units.o result.o bitset.o env.o resolve.o intparse.o hasprefix.o mkpath.o getint.o dirname.o sleq.o endian.o spork.o cmp.o syswrap-ss.o chartype.o bigint.o hashfuncs.o slfill.o dial.o ;	ar	-rcs libstd.a fmtfuncs.o fmt.o try.o pathjoin.o strjoin.o dir.o sljoin.o slpush.o strstrip.o htab.o now.o getcwd.o rand.o slurp.o varargs.o strbuf.o clear.o slput.o strsplit.o introspect.o alloc.o optparse.o fltbits.o sldup.o fltfmt.o extremum.o option.o slcp.o errno.o wait.o putint.o syswrap.o sort.o blat.o mk.o swap.o hassuffix.o execvp.o ipparse.o types.o strfind.o utf.o cstrconv.o search.o die.o units.o result.o bitset.o env.o resolve.o intparse.o hasprefix.o mkpath.o getint.o dirname.o sleq.o endian.o spork.o cmp.o syswrap-ss.o chartype.o bigint.o hashfuncs.o slfill.o dial.o 
 echo 	cd $pwd;	cd $pwd
 echo 	cd $pwd/libbio;	cd $pwd/libbio
 echo 	../6/6m	-I ../libstd bio.myr ;	../6/6m	-I ../libstd bio.myr 
@@ -93,6 +94,8 @@
 echo 	../6/6m	-I ../libstd compile.myr ;	../6/6m	-I ../libstd compile.myr 
 echo 	../muse/muse	-o regex interp.use types.use compile.use ranges.use ;	../muse/muse	-o regex interp.use types.use compile.use ranges.use 
 echo 	ar	-rcs libregex.a interp.o types.o compile.o ranges.o ;	ar	-rcs libregex.a interp.o types.o compile.o ranges.o 
+echo 	../6/6m	-I . -I ../libbio -I ../libstd redump.myr ;	../6/6m	-I . -I ../libbio -I ../libstd redump.myr 
+echo 	ld	-o redump ../rt/_myrrt.o redump.o -L. -L../libbio -L../libstd -lregex -lbio -lstd -lsys ;	ld	-o redump ../rt/_myrrt.o redump.o -L. -L../libbio -L../libstd -lregex -lbio -lstd -lsys 
 echo 	cd $pwd;	cd $pwd
 echo 	cd $pwd/mbld;	cd $pwd/mbld
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd config.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd config.myr 
@@ -100,7 +103,7 @@
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd types.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd types.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd util.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd util.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd deps.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd deps.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd fsel.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd fsel.myr 
+echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd syssel.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd syssel.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd parse.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd parse.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd build.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd build.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd install.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd install.myr 
@@ -107,8 +110,4 @@
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd clean.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd clean.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd test.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd test.myr 
 echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd main.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd main.myr 
-echo 	ld	-o mbld ../rt/_myrrt.o clean.o config.o deps.o types.o fsel.o util.o parse.o main.o build.o opts.o install.o test.o -L../libregex -L../libbio -L../libstd -lregex -lbio -lstd -lsys ;	ld	-o mbld ../rt/_myrrt.o clean.o config.o deps.o types.o fsel.o util.o parse.o main.o build.o opts.o install.o test.o -L../libregex -L../libbio -L../libstd -lregex -lbio -lstd -lsys 
-echo 	cd $pwd;	cd $pwd
-echo 	cd $pwd/libregex;	cd $pwd/libregex
-echo 	../6/6m	-I . -I ../libbio -I ../libstd redump.myr ;	../6/6m	-I . -I ../libbio -I ../libstd redump.myr 
-echo 	ld	-o redump ../rt/_myrrt.o redump.o -L. -L../libbio -L../libstd -lregex -lbio -lstd -lsys ;	ld	-o redump ../rt/_myrrt.o redump.o -L. -L../libbio -L../libstd -lregex -lbio -lstd -lsys 
+echo 	ld	-o mbld ../rt/_myrrt.o clean.o config.o deps.o types.o syssel.o util.o parse.o main.o build.o opts.o install.o test.o -L../libregex -L../libbio -L../libstd -lregex -lbio -lstd -lsys ;	ld	-o mbld ../rt/_myrrt.o clean.o config.o deps.o types.o syssel.o util.o parse.o main.o build.o opts.o install.o test.o -L../libregex -L../libbio -L../libstd -lregex -lbio -lstd -lsys 
--- a/parse/type.c
+++ b/parse/type.c
@@ -758,6 +758,8 @@
     Bitset *bs;
     int eq;
 
+    if (a == b)
+        return 1;
     bs = mkbs();
     eq = tyeq_rec(a, b, bs);
     bsfree(bs);
--- a/parse/use.c
+++ b/parse/use.c
@@ -750,6 +750,8 @@
                 if (strcmp(tystr(old), tystr(t)))
                     printf("deduping %s -> %s\n", tystr(old), tystr(t));
             }
+            if (t != old && strcmp(tystr(old), tystr(t)))
+                printf("should have deduped %s -> %s\n", tystr(old), tystr(t));
             *typefixdest[i] = t;
         }
     }