Devi dichiarare la variabile yyin:

codice:
extern FILE *yyin;
Ti posto il codice completo:

codice:
#include <stdio.h>

extern int yyparse(void);
extern FILE *yyin;

void parse(char *filename)
{
	yyin = fopen(filename, "r");
	if (yyin == NULL)
	{
		fprintf(stderr,"Impossibile aprire il file: %s\n", filename);
	}
	else
	{
		if (yyparse() == 0)
			fprintf(stderr,"Parsing eseguito con successo!\n");
		else
			fprintf(stderr,"Parsing fallito.\n");
	}
}

int main(int argc, char **argv)
{
	int k;

	if (argc<2)
	{
		fprintf(stderr,"uso: %s filename\n", argv[0]);
		return -1;
	}

	for ( k = 1; k < argc; k++ )
	{
		printf("\nParsing del file %s:\n\n", argv[k]);
		parse(argv[k]);
	}

	return 0;
}
fa parte(modificato in modo da accettare più file) dell'esempio che ho usato qui:

http://forum.html.it/forum/showthrea...readid=1245150



Ciao