J'ai ce fichier BNFC décrivant un fichier de configuration en plusieurs sections où chaque section a un nom entre [] suivi d'une liste de simple déclarationbnfc assez erreur java imprimante
comment "#";
rulse Boolean ::= "True" | "False";
Conf. Config ::= [Section]; //a config is a list of sections
terminator Section "";
Sec. Section ::= "[" NomeSec "]" [Decl]; //A section is made of a name and a list of declarations
terminator Decl ";";
NomeSez. NomeSec ::= Ident;
Dec. Decl ::= VarN "=" Type;
VarName. VarN ::= Ident;
Int. Type::=Integer;
Char. Type::=Char;
String. Type::=String;
Float. Type::=Double;
Bool. Type::=Boolean;
Exemple:
[Section1]
Var1 = 3;
Var2 = "test";
#ignored comment
[SectionA]
var4 = True;
avec un nombre indéfini de sections et de déclarations.
J'ai exécuté la commande bnfc -m -java <filename>
de la coquille et tout va bien une partie de la jolie imprimante. Quand son temps pour compiler les tas d'erreurs prettyprinter.java sont générés. Par exemple:
ES5/PrettyPrinter.java:10: error: reference to String is ambiguos
private static final String _L_PAREN = new String("("); both class
ES5.Absyn.String and class java.lang.String in java.lang match
Toutes les erreurs sont de ce type. Je me demande, je viens de construire la grammaire, j'ai échoué à la grammaire ou le BNFC a échoué? Merci
Merci pour compagnon d'aide! – davideb93