jflex-de / jflex

The fast scanner generator for Java™ with full Unicode support
http://jflex.de
Other
581 stars 114 forks source link

NPE using --dot option #1109

Open bachish opened 2 months ago

bachish commented 2 months ago

Hi! I see resolved issues with --dot before, but in version 1.8.2 i have same problem.

JFlex creates an empty .dot file and fails with an NPE error.

JFlex file content:

package org.example;
%%

%class Lexer
%unicode
%line
%column
%type String

%%

"a"         { return "a"; }
"b"         { return "b"; }

[^] { System.out.println("Illegal character <" + yytext() + ">"); }

Stack trace:

[user]$ jflex --dot simple.jflex
Reading "simple.jflex"
Constructing NFA : 
Unexpected exception encountered. This indicates a bug in JFlex.
Please consider filing an issue at http://github.com/jflex-de/jflex/issues/new

java.lang.NullPointerException
        at jflex.core.NFA.dotFormat(NFA.java:502)
        at jflex.core.NFA.writeDot(NFA.java:478)
        at jflex.generator.LexGenerator.generate(LexGenerator.java:80)
        at jflex.Main.generate(Main.java:320)
        at jflex.Main.main(Main.java:336)