Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
饶先宏
hdl4se
提交
61a29918
H
hdl4se
项目概览
饶先宏
/
hdl4se
通知
12
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hdl4se
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
61a29918
编写于
5月 31, 2021
作者:
饶先宏
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
202105310618
上级
bab1cea3
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
77 addition
and
81 deletion
+77
-81
parser/verilog_keyword.c
parser/verilog_keyword.c
+1
-1
parser/verilog_scanner.c
parser/verilog_scanner.c
+73
-75
parser/verilog_scanner.l
parser/verilog_scanner.l
+3
-5
未找到文件。
parser/verilog_keyword.c
浏览文件 @
61a29918
...
...
@@ -184,7 +184,7 @@ static struct s_key_word_list {
DEFKEYWORD
(
SYS_NOCHANGE
,
"$nochange"
)
};
int
verilog_find_
reserve
d_word
(
const
char
*
ident
)
int
verilog_find_
keywor
d_word
(
const
char
*
ident
)
{
int
i
;
for
(
i
=
0
;
i
<
sizeof
(
key_word_list
)
/
sizeof
(
key_word_list
[
0
]);
i
++
)
{
...
...
parser/verilog_scanner.c
浏览文件 @
61a29918
...
...
@@ -639,14 +639,12 @@ char *yytext;
#include "verilog_keyword.h"
static
IPreprocess
**
preprocess
=
NULL
;
static
char
*
__macroname
=
NULL
;
int
SetPreProcess
(
HOBJECT
object
)
{
return
objectQueryInterface
(
object
,
IID_PREPROCESS
,
(
const
void
**
)
&
preprocess
);
}
extern
int
verilog_find_reserved_word
(
const
char
*
ident
);
#define YY_NO_UNISTD_H
#define YY_INPUT(buf, result, max_size) \
...
...
@@ -655,13 +653,13 @@ char *yytext;
}
#define EMIT_TOKEN(x) if (objectCall0(preprocess, SymbolEmitEnabled)) { return x; }
#line 65
8
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
#line 65
6
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
/* Tokens related to numbers */
/* Identifiers */
/* Strings */
/* Operators */
#line 66
4
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
#line 66
2
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
#define INITIAL 0
#define in_dec_val 1
...
...
@@ -883,9 +881,9 @@ YY_DECL
}
{
#line 9
9
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 9
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 88
8
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
#line 88
6
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
while
(
/*CONSTCOND*/
1
)
/* loops until end-of-file is reached */
{
...
...
@@ -954,272 +952,272 @@ do_action: /* This label is used only to access EOF actions. */
case
1
:
YY_RULE_SETUP
#line
100
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line
98
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'@'
);}
YY_BREAK
case
2
:
YY_RULE_SETUP
#line
101
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line
99
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
','
);}
YY_BREAK
case
3
:
YY_RULE_SETUP
#line 10
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'#'
);}
YY_BREAK
case
4
:
YY_RULE_SETUP
#line 10
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'.'
);}
YY_BREAK
case
5
:
YY_RULE_SETUP
#line 10
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'='
);}
YY_BREAK
case
6
:
YY_RULE_SETUP
#line 10
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
':'
);}
YY_BREAK
case
7
:
YY_RULE_SETUP
#line 10
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
';'
);}
YY_BREAK
case
8
:
YY_RULE_SETUP
#line 10
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'('
);}
YY_BREAK
case
9
:
YY_RULE_SETUP
#line 10
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
')'
);}
YY_BREAK
case
10
:
YY_RULE_SETUP
#line 10
9
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 10
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'['
);}
YY_BREAK
case
11
:
YY_RULE_SETUP
#line 1
10
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
08
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
']'
);}
YY_BREAK
case
12
:
YY_RULE_SETUP
#line 1
11
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
09
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'{'
);}
YY_BREAK
case
13
:
YY_RULE_SETUP
#line 11
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'}'
);}
YY_BREAK
case
14
:
YY_RULE_SETUP
#line 11
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'+'
);}
YY_BREAK
case
15
:
YY_RULE_SETUP
#line 11
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'-'
);}
YY_BREAK
case
16
:
YY_RULE_SETUP
#line 11
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'*'
);}
YY_BREAK
case
17
:
YY_RULE_SETUP
#line 11
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'/'
);}
YY_BREAK
case
18
:
YY_RULE_SETUP
#line 11
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'%'
);}
YY_BREAK
case
19
:
YY_RULE_SETUP
#line 11
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'>'
);}
YY_BREAK
case
20
:
YY_RULE_SETUP
#line 11
9
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 11
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'<'
);}
YY_BREAK
case
21
:
YY_RULE_SETUP
#line 1
20
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
18
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'!'
);}
YY_BREAK
case
22
:
YY_RULE_SETUP
#line 1
21
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
19
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'&'
);}
YY_BREAK
case
23
:
YY_RULE_SETUP
#line 12
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'|'
);}
YY_BREAK
case
24
:
YY_RULE_SETUP
#line 12
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'^'
);}
YY_BREAK
case
25
:
YY_RULE_SETUP
#line 12
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'~'
);}
YY_BREAK
case
26
:
YY_RULE_SETUP
#line 12
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
'?'
);}
YY_BREAK
case
27
:
YY_RULE_SETUP
#line 12
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
ATTRIBUTE_START
);}
YY_BREAK
case
28
:
YY_RULE_SETUP
#line 12
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
ATTRIBUTE_END
);}
YY_BREAK
case
29
:
YY_RULE_SETUP
#line 12
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
ASL
);}
YY_BREAK
case
30
:
YY_RULE_SETUP
#line 12
9
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 12
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
ASR
);}
YY_BREAK
case
31
:
YY_RULE_SETUP
#line 1
30
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
28
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
LSL
);}
YY_BREAK
case
32
:
YY_RULE_SETUP
#line 1
31
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
29
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
LSR
);}
YY_BREAK
case
33
:
YY_RULE_SETUP
#line 13
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
GTE
);}
YY_BREAK
case
34
:
YY_RULE_SETUP
#line 13
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
LTE
);}
YY_BREAK
case
35
:
YY_RULE_SETUP
#line 13
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
L_AND
);}
YY_BREAK
case
36
:
YY_RULE_SETUP
#line 13
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
L_OR
);}
YY_BREAK
case
37
:
YY_RULE_SETUP
#line 13
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
L_EQ
);}
YY_BREAK
case
38
:
YY_RULE_SETUP
#line 13
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
C_EQ
);}
YY_BREAK
case
39
:
YY_RULE_SETUP
#line 13
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
L_NEQ
);}
YY_BREAK
case
40
:
YY_RULE_SETUP
#line 13
9
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 13
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
C_NEQ
);}
YY_BREAK
case
41
:
YY_RULE_SETUP
#line 1
40
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
38
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
B_EQU
);}
YY_BREAK
case
42
:
YY_RULE_SETUP
#line 1
41
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
39
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
B_EQU
);}
YY_BREAK
case
43
:
YY_RULE_SETUP
#line 14
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 14
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
B_NAND
);}
YY_BREAK
case
44
:
YY_RULE_SETUP
#line 14
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 14
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
B_NOR
);}
YY_BREAK
case
45
:
YY_RULE_SETUP
#line 14
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 14
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
in_dec_val
);
EMIT_TOKEN
(
DEC_BASE
);}
YY_BREAK
case
46
:
YY_RULE_SETUP
#line 14
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 14
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
in_hex_val
);
EMIT_TOKEN
(
HEX_BASE
);}
YY_BREAK
case
47
:
YY_RULE_SETUP
#line 14
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 14
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
in_oct_val
);
EMIT_TOKEN
(
OCT_BASE
);}
YY_BREAK
case
48
:
YY_RULE_SETUP
#line 14
9
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 14
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
in_bin_val
);
EMIT_TOKEN
(
BIN_BASE
);}
YY_BREAK
case
49
:
YY_RULE_SETUP
#line 1
51
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
49
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
INITIAL
);
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
BIN_VALUE
);}
YY_BREAK
case
50
:
YY_RULE_SETUP
#line 15
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 15
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
INITIAL
);
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
OCT_VALUE
);}
YY_BREAK
case
51
:
YY_RULE_SETUP
#line 15
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 15
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
INITIAL
);
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
HEX_VALUE
);}
YY_BREAK
case
52
:
YY_RULE_SETUP
#line 15
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 15
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
BEGIN
(
INITIAL
);
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
DEC_VALUE
);}
YY_BREAK
case
53
:
YY_RULE_SETUP
#line 15
7
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 15
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
NUM_REAL
);}
YY_BREAK
case
54
:
YY_RULE_SETUP
#line 15
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 15
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
UNSIGNED_NUMBER
);
...
...
@@ -1227,11 +1225,11 @@ YY_RULE_SETUP
YY_BREAK
case
55
:
YY_RULE_SETUP
#line 16
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 16
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yylval
.
string
=
_strdup
(
yytext
);
if
(
objectCall0
(
preprocess
,
SymbolEmitEnabled
))
{
int
id
=
verilog_find_
reserve
d_word
(
yytext
);
int
id
=
verilog_find_
keywor
d_word
(
yytext
);
if
(
id
==
-
1
)
{
EMIT_TOKEN
(
SYSTEM_ID
);
}
else
{
...
...
@@ -1242,7 +1240,7 @@ YY_RULE_SETUP
YY_BREAK
case
56
:
YY_RULE_SETUP
#line 17
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 17
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
ESCAPED_ID
);
...
...
@@ -1250,11 +1248,11 @@ YY_RULE_SETUP
YY_BREAK
case
57
:
YY_RULE_SETUP
#line 17
8
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 17
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yylval
.
string
=
_strdup
(
yytext
);
if
(
objectCall0
(
preprocess
,
SymbolEmitEnabled
))
{
int
id
=
verilog_find_
reserve
d_word
(
yytext
);
int
id
=
verilog_find_
keywor
d_word
(
yytext
);
if
(
id
==
-
1
)
{
EMIT_TOKEN
(
SIMPLE_ID
);
}
else
{
...
...
@@ -1265,23 +1263,23 @@ YY_RULE_SETUP
YY_BREAK
case
58
:
YY_RULE_SETUP
#line 1
90
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 1
88
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yylval
.
string
=
_strdup
(
yytext
);
EMIT_TOKEN
(
STRING
);}
YY_BREAK
case
59
:
/* rule 59 can match eol */
YY_RULE_SETUP
#line 19
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 19
0
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
/*EMIT_TOKEN(NEWLINE); IGNORE */
}
YY_BREAK
case
60
:
YY_RULE_SETUP
#line 19
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 19
1
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
/*EMIT_TOKEN(SPACE); IGNORE */
}
YY_BREAK
case
61
:
YY_RULE_SETUP
#line 19
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 19
2
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
/*EMIT_TOKEN(TAB); IGNORE */
}
YY_BREAK
case
YY_STATE_EOF
(
INITIAL
):
...
...
@@ -1290,7 +1288,7 @@ case YY_STATE_EOF(in_hex_val):
case
YY_STATE_EOF
(
in_oct_val
):
case
YY_STATE_EOF
(
in_bin_val
):
case
YY_STATE_EOF
(
in_number
):
#line 19
6
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 19
4
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
yypop_buffer_state
();
...
...
@@ -1308,17 +1306,17 @@ case YY_STATE_EOF(in_number):
YY_BREAK
case
62
:
YY_RULE_SETUP
#line 2
11
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 2
09
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
{
EMIT_TOKEN
(
ANY
);
}
YY_BREAK
case
63
:
YY_RULE_SETUP
#line 21
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 21
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
YY_FATAL_ERROR
(
"flex scanner jammed"
);
YY_BREAK
#line 13
21
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
#line 13
19
"D:/gitwork/hdl4se/parser/verilog_scanner.c"
case
YY_END_OF_BUFFER
:
{
...
...
@@ -2333,6 +2331,6 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
#line 21
5
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
#line 21
3
"D:/gitwork/hdl4se/parser/verilog_scanner.l"
parser/verilog_scanner.l
浏览文件 @
61a29918
...
...
@@ -6,14 +6,12 @@
#include "verilog_keyword.h"
static IPreprocess ** preprocess = NULL;
static char * __macroname = NULL;
int SetPreProcess(HOBJECT object)
{
return objectQueryInterface(object, IID_PREPROCESS, (const void **)&preprocess);
}
extern int verilog_find_reserved_word(const char * ident);
#define YY_NO_UNISTD_H
#define YY_INPUT(buf, result, max_size) \
...
...
@@ -163,7 +161,7 @@ B_NOR "~|"
{SYSTEM_ID} {
yylval.string=_strdup(yytext);
if (objectCall0(preprocess, SymbolEmitEnabled)) {
int id = verilog_find_
reserve
d_word(yytext);
int id = verilog_find_
keywor
d_word(yytext);
if (id == -1) {
EMIT_TOKEN(SYSTEM_ID);
} else {
...
...
@@ -178,7 +176,7 @@ B_NOR "~|"
{SIMPLE_ID} {
yylval.string=_strdup(yytext);
if (objectCall0(preprocess, SymbolEmitEnabled)) {
int id = verilog_find_
reserve
d_word(yytext);
int id = verilog_find_
keywor
d_word(yytext);
if (id == -1) {
EMIT_TOKEN(SIMPLE_ID);
} else {
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录