summaryrefslogtreecommitdiff
path: root/Build/source/utils/vlna/vlna.w
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/vlna/vlna.w')
-rw-r--r--Build/source/utils/vlna/vlna.w65
1 files changed, 27 insertions, 38 deletions
diff --git a/Build/source/utils/vlna/vlna.w b/Build/source/utils/vlna/vlna.w
index c5b9faaf4a0..da84b8711b6 100644
--- a/Build/source/utils/vlna/vlna.w
+++ b/Build/source/utils/vlna/vlna.w
@@ -59,9 +59,7 @@ int status;
@ Základní rozvržení funkce |main|.
@<Hlavní program@>=
-int main (argc,argv)
- int argc;
- char **argv;
+int main (int argc, char **argv)
{
@<Lokální proměnné funkce |main|@>;
prog_name=argv[0]; status = OK;
@@ -108,7 +106,7 @@ možných parametrů. Nepodařilo se mi zjistit, jak se ve WEBu napíše
kulturně dlouhý string obsahující \.{\char92n} s formátovacími
požadavky. Byl jsem nucen to takto nehezky zapsat.
@<Pomocné funkce@>=
-void printusage ()
+static void printusage (void)
{
fprintf(stderr,
"usage: vlna [opt] [filenames]\n"
@@ -166,8 +164,7 @@ int j;
@ Definujeme funkci pro výpis chybového hlášení při neúspěšném otevření
souboru.
@<Pomocné funkce@>=
-void ioerr (f)
- char *f;
+static void ioerr (char *f)
{
fprintf(stderr, "%s: cannot open file %s\n", prog_name, f);
}
@@ -297,7 +294,7 @@ typedef struct PATITEM { /* jedna pozice patternu */
} PATITEM;
typedef struct PATTERN { /* jeden pattern */
PATITEM *patt; /* ukazatel na prvni pozici */
- void (*proc)(); /* procedura spustena pri souhlasu patternu */
+ void (*proc)(void); /* procedura spustena pri souhlasu patternu */
struct PATTERN *next ; /* nasledujici v seznamu vsech patternu */
} PATTERN;
@@ -345,7 +342,7 @@ výstupního proudu neaktivovali zbytečně často.
PATITEM *lapi[MAXPATT]; /* pole ukazatelu na aktualni pozice */
PATTERN *lapt[MAXPATT]; /* pole odpovidajicich ukazatelu na patterny */
PATTERN *listpatt, *normallist, *commentlist, *pt, *lastpt=NULL;
-PATITEM *pi, *lastpi=NULL;
+PATITEM *lastpi=NULL;
char c; /* zrovna nacetny znak */
char buff[MAXBUFF]; /* prechodny buffer */
int ind; /* aktualni pozice prechodneho bufferu */
@@ -355,8 +352,7 @@ Tyto funkce alokují paměť pomocí standardní funkce |malloc|. Abychom mohli
ohlídat případnou chybu při alokaci, budeme allokovat paměť zprostředkovaně
pomocí funkce |myalloc|.
@<Pomocné funkce@>=
-void *myalloc (size)
- int size;
+static void *myalloc (int size)
{
void *p;
p = malloc (size);
@@ -373,8 +369,7 @@ ji pomocí proměnné |lastpt| na už alokovaný řetěz patternů.
Vrátí ukazatel na nově alokované místo. Jednotlivé pozice patternu se musí
následovně alokovat pomocí |setpi|.
@<Pomocné funkce@>=
-PATTERN *setpattern (proc) @/
- void (*proc)();
+static PATTERN *setpattern (void (*proc)(void))
{
PATTERN *pp;
pp = myalloc (sizeof (PATTERN));
@@ -392,9 +387,7 @@ zřetězení tak, aby první pozice řetězu pozic byla zaznamenána v položce
|patt| ve struktuře |PATTERN| a další byly provázány položkou |next| ve
struktuře |PATITEM|. Poslední pozice má |next==NULL|.
@<Pomocné funkce@>=
-void setpi (str, flag)
- char *str;
- int flag;
+static void setpi (char *str, int flag)
{
PATITEM* p;
p = myalloc (sizeof (PATITEM));
@@ -427,9 +420,7 @@ for (i=0; i<256; i++) {
@ Definujme funkci |normalpattern|.
@<Pomocné funkce@>=
-PATTERN *normalpattern (proc, str) @/
- void (*proc)();
- char *str;
+static PATTERN *normalpattern (void (*proc)(void), const char *str)
{
PATTERN *pp;
int j=0;
@@ -465,8 +456,7 @@ symetrické podle nuly, např. |ANY==-ANY_NOT|.
@d FOUND -1
@d NOFOUND -2
@<Pomocné funkce@>=
-int match (p)
- PATITEM *p;
+static int match (PATITEM *p)
{
int m;
if (strchr (p->str, c) != NULL) m = 1; /* Znak nalezen */
@@ -513,8 +503,7 @@ strukturu patternů. Výhodné je (z důvodu rychlosti) \uv{natvrdo} zde
implementovat jen přepínání mezi stavem čtení z oblasti komentáře
(|listpatt==commentlist|) a mimo komentář (|listpatt==normallist|);
@<Vlnkovací funkce |tie|@>=
-void tie (input, output)
- FILE *input, *output;
+static void tie (FILE *input, FILE *output)
{
int ap; /* ap je pocet otevrenych patternu */
register int k, m, n;
@@ -668,7 +657,7 @@ setpi (nochar, ONE_NOT);
listpatt = normallist = vlnkalist;
@ @<Pomocné funkce@>=
-void vlnkain()
+static void vlnkain(void)
{
char p;
ind--;
@@ -707,7 +696,7 @@ ošetření tohoto fenoménu můžeme dokonce narazit na situaci
situaci pouze zrušíme stávající (v pořadí druhé) \uv{\.{\char92n}} a
nebudeme vytvářet nové. Na výstupu bude soubor o jeden řádek kratší.
@<Pomocné funkce@>=
-void vlnkacr()
+static void vlnkacr(void)
{
char p;
int i, j;
@@ -773,7 +762,7 @@ nových patternů pro tento znak teprve budou následovat a testují se na
hodnotu proměnné |c|. Stačí tedy změnit hodnotu |c| a vlnkovací patterny se
neotevřou.
@<Pomocné funkce@>=
-void tielock ()
+static void tielock (void)
{
c = 1;
}
@@ -782,7 +771,7 @@ void tielock ()
módu vlnky neděláme. Při zjištěném nesouladu v přechodech mezi
math-módy spustíme následující proceduru.
@<Pomocné funkce@>=
-void printwarning ()
+static void printwarning (void)
{
if (!silent)
fprintf (stderr,
@@ -807,13 +796,13 @@ if (!nomath) {
}
@ @<Pomocné funkce@>=
-void mathin ()
+static void mathin (void)
{
if (mode!=TEXTMODE) printwarning ();
mode = MATHMODE;
normallist = listpatt = mathlist;
}
-void mathout ()
+static void mathout (void)
{
if (mode!=MATHMODE) printwarning ();
mode = TEXTMODE;
@@ -825,7 +814,7 @@ sekvence \.{\char92\$}. V tom případě akci ignorujeme. Podobně u sekvence
\.{\$\$} souhlasí ten druhý dolar s naším patternem, ale to už jsme uvnitř
display módu. V takovém případě také nic neděláme.
@<Pomocné funkce@>=
-void onedollar ()
+static void onedollar (void)
{
if (buff[ind-3]=='\\' || (buff[ind-3]=='$' && buff[ind-4]!='\\')) return;
if (mode==DISPLAYMODE) printwarning ();
@@ -844,7 +833,7 @@ setpi (blanks, ANY);
setpi (cr, ONE);
@ @<Pomocné funkce@>=
-void checkmode ()
+static void checkmode (void)
{
if (mode!=TEXTMODE) {
printwarning ();
@@ -870,17 +859,17 @@ if (!nomath) {
}
@ @<Pomocné funkce@>=
-void displayin ()
+static void displayin (void)
{
if (mode!=TEXTMODE) printwarning ();
mode = DISPLAYMODE; normallist = listpatt = parcheck;
}
-void displayout ()
+static void displayout (void)
{
if (mode!=DISPLAYMODE) printwarning();
mode = TEXTMODE; normallist = listpatt = vlnkalist;
}
-void twodollars ()
+static void twodollars (void)
{
if (buff[ind-3]=='\\') return;
if (mode==DISPLAYMODE) displayout ();
@@ -922,7 +911,7 @@ Proto druhý výskyt této hodnoty verbatim režim ukončí.
int prevmode;
PATTERN *prevlist, *verboutlist[4];
char verbchar[2];
-void verbinchar ()
+static void verbinchar (void)
{
prevmode = mode;
verbchar[0] = c;
@@ -940,7 +929,7 @@ oblasti vstoupili, abychom se k němu mohli vrátit (např. uvnitř
math. módu může být
\.{\char92hbox} a v něm lokálně verbatim konstrukce).
@<Pomocné funkce@>=
-void verbin ()
+static void verbin (void)
{
int i;
i = 0;
@@ -960,7 +949,7 @@ void verbin ()
}
@ @<Pomocné funkce@>=
-void verbout ()
+static void verbout (void)
{
if (mode!=VERBMODE) return;
if (web && buff[ind-2] == '@@' && buff[ind-3] == '@@') return;
@@ -982,11 +971,11 @@ commentlist = normalpattern (tieoff, "%.~.-");
normalpattern (tieon, "%.~.+");
@ @<Pomocné funkce@>=
-void tieoff ()
+static void tieoff (void)
{
normallist = NULL;
}
-void tieon ()
+static void tieon (void)
{
normallist = vlnkalist;
}