niuob Le 14/04/2002 à 17:38 Il vaut mieux éviter les structures de type goto, même si dans certains cas on est quasiment obligé.
guilc Le 14/04/2002 à 19:02 T'est sur que ta macro $ rend bien une SymString ? Parcque j'ai eu le même problème. Vérifie bien la structure de ta symstr :
si buffer contient le nom du fichier, alors *(buffer-1) doit valoir 0, et il faut passer buffer+strlen(buffer) à SymFind.
Je crois bien que y a un problème dans la doc de tigcc, parcque si tu fais ce qu'ils disent, ça marche po !
Sinon, SymFind n'a pas fumée, elle marche nickel !
[edit]Edité par guilc le 14-04-2002 à 19:03:28[/edit]
guilc Le 14/04/2002 à 19:28 Vi, je confirme, ça marche, c'est ce que je voulais dire au post 3
Pourquoi redéfinis-tu la macro $ ??? Elle est définie dans tigcclib.h et tu ne dois pas y toucher!!!
C'est certainement parce que tu redéfinis $, et très probablement de manière incorrecte!
Vire-moi ce #define $(s) ...!!!
C'est parce que tu n'initialises pas ton pointeur buffer.
Remplace:
char *buffer;
par:
char buffer[21];
[edit]Edité par Kevin Kofler le 14-04-2002 à 19:38:13[/edit]
kévin> Mais l'erreur ne vient pas aussi du fait que lorsqu'on écrit SymFind($(buffer)) c'est interprété comme si on recherchait un fichier du nom buffer ??
[edit]Edité par jackiechan91 le 14-04-2002 à 19:40:50[/edit]
Ah oui, SymFind($(buffer)) est faux!
Mets:
SymFind(SYMSTR(buffer))
(Il faut la bêta la plus récente de TIGCC.)
>la dernière beta (la 0.94) ne fonctionne pas chez moi, il m'affiche plein d'erreur
Quelle bêta exacte? Il y a déjà eu 12 bêtas différentes de la version 0.94! La plus récente est la 0.94 bêta 12.
>sinon, ben je voudrait signaler que TIGCC ce plante completement dans l'attribution
des erreur au ligne
>exemple il met (si dessus) une erreur a la ligne 31 alors que en fait l'erreur
vient de la ligne 30
>et ensuite il indique une erreur en ligne 36 alors c a la ligne 34 qu'il y a une erreur
Tu dois avoir mis des sauts de ligne dans des appels de macro. GCC ne compte pas toujours les lignes correctement dans ce cas.
Utilise l'IDE, elle te mettra toujours le curseur au bon endroit.