Advertisement

tiger 处理抽象语法树

阅读量:

在完成语法分析之后,引入语义操作以构建tiger语言的抽象语法树。

官方提供了框架结构及构造函数的代码,只需在tiger.y文件中添加对应的语义操作,即可实现功能,整体实现过程较为简便。

文法:
对原有文法进行了适当调整,新增了tydecs和fundecs两个部分,以满足书中对nametylist和functionlist的要求。此修改导致出现了两个新的shift/reduce冲突,但这些冲突均不会对整体运行造成影响。

复制代码
    /********************************************************** * Author        : lh
     * Email         : lhcoder@163.com
     * Create time   : 2017-03-01 16:27
     * Last modified : 2017-03-02 09:51
     * Filename      : tiger.y
     * Description   : 
     * *******************************************************/
    
    %{
    #include <stdio.h>
    #include "uti

全部评论 (0)

还没有任何评论哟~