From 12e09f9f85ac48ff891adf92f3b2c9a5fea27273 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Sat, 4 Dec 2021 14:10:21 -0800 Subject: Chore(REMOVE): finished deprecation of old io functions. The old methods were simple wrappers of C standard library functions. We've moved (painfully) over to a new interface that allows for files to live on the stack. All users of the functionality are ported over. --- src/base/utf/vendor/mkrunetype.c | 43 ++++++++++++++++------------------------ 1 file changed, 17 insertions(+), 26 deletions(-) (limited to 'src/base/utf/vendor/mkrunetype.c') diff --git a/src/base/utf/vendor/mkrunetype.c b/src/base/utf/vendor/mkrunetype.c index b33df32..3d75ce8 100644 --- a/src/base/utf/vendor/mkrunetype.c +++ b/src/base/utf/vendor/mkrunetype.c @@ -34,8 +34,7 @@ static struct Table table; // ----------------------------------------------------------------------- // internal functions -static -int +static int isrange(char *label, char *prop, int force) { char ident[128]; @@ -45,8 +44,7 @@ isrange(char *label, char *prop, int force) return putrange(ident, prop, force); } -static -int +static int ispair(char *label, char *prop) { char ident[128]; @@ -56,8 +54,7 @@ ispair(char *label, char *prop) return putpair(ident, prop); } -static -int +static int issingle(char *label, char *prop) { char ident[128]; @@ -67,8 +64,7 @@ issingle(char *label, char *prop) return putsingle(ident, prop); } -static -void +static void makeis(char *label, char *table, int pairs, int onlyranges) { int hasr, hasp=0, hass=0; @@ -116,8 +112,7 @@ makeis(char *label, char *table, int pairs, int onlyranges) "\n"); } -static -int +static int torange(char *label, int *index, int force) { int l, r, d, start = 0; @@ -154,8 +149,7 @@ torange(char *label, int *index, int force) return start; } -static -int +static int topair(char *label, int *index) { int l, r, d, start = 0; @@ -193,8 +187,7 @@ topair(char *label, int *index) return start; } -static -int +static int tosingle(char *label, int *index) { int i, d, start = 0; @@ -220,8 +213,7 @@ tosingle(char *label, int *index) return start; } -static -void +static void mkto(char *label, int *index, int pairs, int onlyrange) { int hasr, hasp=0, hass=0; @@ -272,8 +264,7 @@ mkto(char *label, int *index, int pairs, int onlyrange) // ----------------------------------------------------------------------- // main point of entry -static -void +static void usage(void) { fprintf(stderr, "usage: mkrunetype \n"); @@ -283,9 +274,9 @@ usage(void) int main(int argc, char *argv[]) { - int i, sc, c, ec; - io·Stream *utf8; - char *prop, *field[NumFields], line[1024]; + int i, sc, c, ec, err; + static io·Buffer utf8; + char *prop, field[NumFields][FieldLen]; ARGBEGIN{ }ARGEND; @@ -293,8 +284,8 @@ main(int argc, char *argv[]) if(argc != 1) usage(); - if(!(utf8 = io·open(argv[0], "r"))) - panicf("can't open %s\n", argv[0]); + if((err=io·open(argv[0], sys·ORead, &utf8))) + panicf("can't open %s: %d: %s\n", argv[0], err, strerror(err)); /* by default each character maps to itself */ for(i = 0; i < NumRunes; i++) { @@ -313,9 +304,9 @@ main(int argc, char *argv[]) ec = -1; // NOTE: we don't check for comments here: assume UnicodeData.txt doesn't have any - while(parse(utf8, arrlen(field), field, arrlen(line), line)){ + while(parse(&utf8, arrlen(field), field)){ /* parse unicode range */ - codepointrange(utf8, field, &sc, &ec); + codepointrange(&utf8, field, &sc, &ec); prop = field[Fcategory]; for(c = sc; c <= ec; c++){ @@ -370,7 +361,7 @@ main(int argc, char *argv[]) table.totitle[c] = codepoint(field[Ftitle]); } } - io·close(utf8); + io·close((io·Header *)&utf8); putsearch(); -- cgit v1.2.1