J'écris un fichier yacc dans le cadre d'un compilateur. J'ai l'erreur suivante:Incorporation de code dans Yacc
lang_grammar.y:143.54-55: $2 of `ClassDeclaration' has no declared type
lang_grammar.y:143.69-70: $4 of `ClassDeclaration' has no declared type
lang_grammar.y:143.84-85: $6 of `ClassDeclaration' has no declared type
se produisant sur cette ligne dans mon dossier .y:
CLASS { /* code will be embedded here */ } ID EXTENDS ID '{' ClassBody '}'
{ $$.classDeclaration = new ClassDeclaration($2.identifier, $4.identifier, $6.classBody); }
Lorsque je supprime le code intégré interne:
CLASS ID EXTENDS ID '{' ClassBody '}'
{ $$.classDeclaration = new ClassDeclaration($2.identifier, $4.identifier, $6.classBody); }
Il fonctionne très bien .
Y a-t-il des limites à l'intégration de code dans yacc? J'avais l'impression que c'était possible.
Merci.
ah, donc toute la section intégrée (de {à}) compte pour un index, puis – pseudosudo