Open
Description
Steps to reproduce
// Option.g
grammar Option;
options {
language=C;
}
import Option2, Option3;
source
: source_item+
;
// Option2.g
parser grammar Option2;
source_item
: test
;
// Option3.g
parser grammar Option3;
test
: 'a'
;
Generate C code:
java -jar antlr-complete-3.5.3.jar Option.g
In OptionParser.h
struct elements have duplicated names:
// OptionParser.h
struct OptionParser_Ctx_struct
{
pANTLR3_PARSER pParser;
pOption_Option2 g;
pOption_Option3 g;
...
};
Expected behavior
No duplicated names.
Like when using Java runtime:
@SuppressWarnings("all")
public class OptionParser extends Parser {
// delegates
public Option_Option2 gOption2;
public Option_Option3 gOption3;
public Parser[] getDelegates() {
return new Parser[] {gOption2, gOption3};
}
...
}
Versions
Java: openjdk 17.0.12 2024-07-16
ANTLR3: 3.5.3
Metadata
Metadata
Assignees
Labels
No labels