commit ca42d77b04f2375c664958cb9114b300619353e0
parent 2bc8a6416278a25bc34450aab5c713a1717d6360
Auteur: Selve <selve@asteride.xyz>
Date: Tue, 14 Nov 2023 13:45:59 -0500
suppression d'un test d'erreur inutile
L'idée est que tout EOF qui ne précède pas la parenthèse ouvrante du domaine
supérieur ou qui ne suit pas la parenthèse fermante de ce même domaine est le
symptôme d'un déséquilibre dans les parenthèses.
Diffstat:
M | aplat.c | | | 26 | ++++++++++++-------------- |
1 file changed, 12 insertions(+), 14 deletions(-)
diff --git a/aplat.c b/aplat.c
@@ -52,7 +52,7 @@ transformer(FILE *f)
int pente;
if ((c = manger_espaces(f)) == EOF)
- goto fin;
+ return 0;
if (c != '(') {
fprintf(stderr, "aplat: le premier caractère doit être \"(\"\n");
return -1;
@@ -73,7 +73,7 @@ ouv:
t_ecr(':', &etq);
if ((c = manger_espaces(f)) == EOF)
- goto fin;
+ goto deseq;
do {
switch (c) {
@@ -87,11 +87,11 @@ ouv:
goto ferm;
case '"':
if (guillemets(f, &etq) == EOF)
- goto fin;
+ goto deseq;
break;
case '\\':
if ((c = getc(f)) == EOF)
- goto fin;
+ goto deseq;
if (c == '\\')
t_ecr(c, &etq);
/* passe à default */
@@ -99,11 +99,11 @@ ouv:
t_ecr(c, &etq);
}
} while ((c = getc(f)) != EOF);
- goto fin;
+ goto deseq;
val:
if ((c = manger_espaces(f)) == EOF)
- goto fin;
+ goto deseq;
if (c != '(' || pente > 0) {
t_aff(&etq);
@@ -126,11 +126,11 @@ val:
goto ferm;
case '"':
if (guillemets(f, &txt) == EOF)
- goto fin;
+ goto deseq;
break;
case '\\':
if ((c = getc(f)) == EOF)
- goto fin;
+ goto deseq;
if (c == '\\')
t_ecr('\\', &txt);
/* passe à default */
@@ -138,7 +138,7 @@ val:
t_ecr(c, &txt);
}
} while ((c = getc(f)) != EOF);
- goto fin;
+ goto deseq;
ferm:
if (aff) {
@@ -155,17 +155,15 @@ ferm:
goto verif;
goto val;
-fin:
- if (prfd != 0) {
- fprintf(stderr, "aplat: parenthèses déséquilibrées (%d)\n", prfd);
- return -1;
- }
verif:
if (manger_espaces(f) != EOF) {
fprintf(stderr, "aplat: le dernier caractère doit être \")\"\n");
return -1;
}
return 0;
+deseq:
+ fprintf(stderr, "aplat: parenthèses déséquilibrées (%d)\n", prfd);
+ return -1;
}
int