[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(No Subject)




 Bonjour,

 Je souhaiterais "parser" un texte en conservant les retours a la ligne tels quels.
 (cad sans etre absorbes par lex mais faisant partie de l'arbre abstrait).
 J'ai modifie le fichier .tokens de mon langage de la maniere suivante:
  
%}\
%S waitdata entrypoint sentences\
%%\

 
$a\
<sentences>[\\n]+                        		return(CARRIAGE);\
<sentences>[a-zA-Z][a-zA-Z0-9_]*	        	return(ID);\
<sentences>[-+*=,;<>:\\[\\]/^&`'.()!?@#{}$%|~\\\\]+	return(IDS);\
<sentences>[0-9]+               	        	return(INTEGER);\
<sentences>[ ]+                         		return(BLANC);\
<sentences>.	{fputs("-3\\n",yyout); fputs(yytext,yyout); putc('\\n',yyout); }
 
 Lorsque j'essaie d'analyser un fichier, il me repond: 
	Error: ** funcall : undefined function : () 

 Puis + tard, un timeout se produit:
Error: ** parsing : Timeout occurred for : nom_fichier
 

 C'est le \\n qui parait poser un probleme. En effet, en modifiant le token
 CARRIAGE (en y mettant un caractere classique) et le texte de maniere appropriee, cela
 fonctionne. (la grammaire parait donc correcte)

 Merci.