From: ΥΤΡτ (zhaoyang_at_ict.ac.cn)
Date: Tue Jun 06 2006 - 19:32:37 MDT
Hoho,we always have the same problem.
The problem should be due to the assignment to the yylineno in the verilog.l, where the yylineno is assigned to 1. In fact, in the corresponding LEX file, it has been assigned. So the souliton is deleting the "yylineno = 1" in the verilog.l, just leaving the declaration "extern int yylineno".
I hope it will work again, hehe...
>Thanks for that tip. I also had to change the 'yytext' to 'CtlspYytext'
>in ./src/ctlsp/ctlsp.y and to 'IoYytext' in ./src/io/io.y
>After that I had no problems compiling and installing vis.
>While installing vl2mv, I got an error saying that yylineno was defined
>twice but I got around this by changing yylineno to Yylineno (I don't
>remember which file it was exactly that I changed but I think its verilog.l)
>Zhaoyang wrote On 06/05/06 20:01,:
>> I think I may find the reason. The interface between Yacc and Lex is
>> often "yytext" as default, to transfer the string readed from the input
>> file. But in the makefile it's redefined as "CtlpYytext" using
>> "-pCtlpYy" argument in bison and "-PCtlpYy" in flex. But in the ctlp.y,
>> it still uses "yytext".
>> So my solution is modifying the "yytext" into "CtlpYytext". I'm not quit
>> sure the prefix is the same in the different platform. So you'd better
>> check in the makefile to see the prefix used. Just see the "-p" argument
>> in bison and "-P" argument in flex.
>> The solution seems a little silly. I think this is a bug in the code.
>> Whether it can be configured automatically, it's my question.
>Sun Microsystems, CA
This archive was generated by hypermail 2.1.7 : Tue Jun 06 2006 - 19:44:21 MDT