datum-lang / scie

基于正则表达式的通用语言转换器。An interpreter for grammar files as defined by TextMate with Rust
MIT License
29 stars 7 forks source link

[BUG]扫描Java代码时候出现死循环情况 #5

Open cyw3 opened 3 years ago

cyw3 commented 3 years ago

Demo:

package test;

public class Test{
    private void test(int id) {
        tA t = new tA();
    }
}

使用上面Demo代码进行扫描时候,发现会在下面位置所在函数陷入死循环: https://github.com/charj-lang/scie/blob/e5ca8e42d4262c3d48bebf260b53b3e25fd0c76e/scie-grammar/src/grammar/grammar.rs#L280

这里应该tA这个命名导致的,若修改为A就不会陷入死循环。

phodal commented 3 years ago

2333,谢谢了哈~,有空我看看怎么搞